Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
Здраствуйте всем. Столкнулся с проблемой: существуют рабочие БД на Фоксе, судя по всему, на шестом (не я программер, сам фокс вижу второй раз в жизни). Так вот, раньше юзеры как то импортировали dbf-файлы в Word, причем абсолютно просто (юзеры - эникейщики, и сложные комбинации по конвертированию/экспорту вряд ли освоят;-). А после переустановки винды это у них не получается. В одном случае вообще на срабатывает драйвер ODBC, в лучшем случае данные импортируются, но вместо русских букв - кракозяблы. Думается мне, что нужно как-то ODBC настроить (подскажите как!!!), и/или в коде проги поправить (а может, cfg-файл?). Что скажите? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 13:16 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
По всей видимости, в DBF-таблицах не проставлен признак кодовой страницы. Эти таблицы создаются динамически (как отчеты)? Или это постоянные таблицы БД. Если динамически, то нужен файл CONFIG.FPW (это обычный текстовый файл) со строкой CODEPAGE=1251 в той папке, из которой запускается EXE на FoxPro. Чтобы уточнить версию FoxPro открой готовый EXE как текстовый файл и найди в нем строку: "VisualFoxProRuntime" Следом за этой строкой будет стоять цифра, собственно и определяющая версию FoxPro. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 13:23 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
Попробуй вставить строчку в файл config.fpw codepage=1251 Не понял, при чем тут ODBC ? Foxpro работает напрямую со своими dbf-файлами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 13:27 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
ВладимирМПо всей видимости, в DBF-таблицах не проставлен признак кодовой страницы. Эти таблицы создаются динамически (как отчеты)? Или это постоянные таблицы БД. Если динамически, то нужен файл CONFIG.FPW (это обычный текстовый файл) со строкой CODEPAGE=1251 в той папке, из которой запускается EXE на FoxPro. Чтобы уточнить версию FoxPro открой готовый EXE как текстовый файл и найди в нем строку: "VisualFoxProRuntime" Следом за этой строкой будет стоять цифра, собственно и определяющая версию FoxPro. Версия 5 (это из ехе-файла). Таблицы создаются динамически след-им образом. Юзер выбирает некоторые критерии поиска в БД, ищет данные, которые выводятся на экран. Жмет ЭКСПОРТ В WORD - и выбранные записи сохрыняются в dbf, который потом открываются в Word'e через кнопку "ДОБАВИТЬ БАЗУ ДАННЫХ". И вот теперь крякозяблы :-( Есть файл CONFIG.FPW, пробовал добавить в него строчку CODEPAGE=1251, не помогло. AiSKНе понял, при чем тут ODBC ? Foxpro работает напрямую со своими dbf-файлами. При том, что dbf-файл открывается в WORDE, а там вроде как надо ODBC настроить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 13:48 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
пусть юзеры попробуют поменять одбс драйвер для фокс таблиц и кракозябы исчезнут если драйвер правильный будет я с таким сталкивался ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 13:52 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
leafпусть юзеры попробуют поменять одбс драйвер для фокс таблиц и кракозябы исчезнут если драйвер правильный будет я с таким сталкивался что на что менять? какой ODBC правильный? я уже всякими пробовал открывать..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 14:07 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
дравера у фокса есть разные есть для дос фокса и т.п. у меня было как у тебя почти начальнику информационной службы поставили новый комп а мы ему дбф делали ничего не меняли а он недоволен типа в прошлом месяце все нормально было а щас фиг поймешь что написано после экспорта в эксель ну вот пришлось одбс запись перенастраивать менять драйвер и стало вем хорошо особенно нам я бы microsoft visual foxpro попробывал если он есть там в данный момент а то винды переставляли может в списке и не оказаться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 14:27 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
До версии VFP5 включительно нужен еще файл FOXPRO.INT (расширение от слова international, не путать с ini-файлами) Этот файл поставляется вместе с FoxPro в его корневом каталоге. Его необходимо положить рядом с EXE в ту же папку. Я предполагаю, что экспорт в DBF происходит в формат Fox2x в 866 кодовой странице. Такие таблицы без проблем открываются как в Word, так и в Excel (без ODBC). Вот для манипуляции разными кодовыми страницами и нужен файл FoxPro.INT (на пару с CONFIG.FPW со строкой CODEPAGE=1251) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 14:39 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
ВладимирМДо версии VFP5 включительно нужен еще файл FOXPRO.INT (расширение от слова international, не путать с ini-файлами) Этот файл поставляется вместе с FoxPro в его корневом каталоге. Его необходимо положить рядом с EXE в ту же папку. Я предполагаю, что экспорт в DBF происходит в формат Fox2x в 866 кодовой странице. Такие таблицы без проблем открываются как в Word, так и в Excel (без ODBC). Вот для манипуляции разными кодовыми страницами и нужен файл FoxPro.INT (на пару с CONFIG.FPW со строкой CODEPAGE=1251) Скинул файл FoxPro.INT, подправил CONFIG.FPW, сохраняю dbf, открываю в ворде через ВСТАВКА БАЗЫ ДАННЫХ, результет тот же. Если открывать как обычный документ с преобразованием, то русский шрифт ворд распознает, но структура таблицы теряется... Неужели в исходники лезть придется? чужая программа потемки;( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 15:12 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
leafдравера у фокса есть разные есть для дос фокса и т.п. я бы microsoft visual foxpro попробывал если он есть там в данный момент а то винды переставляли может в списке и не оказаться ну вот давай попорядку... Пользовательский DSN, Visual FoxPro dataBase на рис. внизу. Что тут настраивать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 15:16 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
при чем здесь фокс у него всё нормально разберитесь с ексель ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 15:17 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
я бы поставил free table и microsoft для free table а вообще что они в эксель делают ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 15:21 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
Попробуй еще в реестре сделать следующие изменения [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage] "1252"="c_1251.nls" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2004, 15:50 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
ВладимирМПопробуй еще в реестре сделать следующие изменения Сейчас у меня так: 1. [SRC{post.srctag}] CONFIG.FPW CODEPAGE=1251 RESOURCE = OFF SCREEN = OFF OPTIMIZE = ON SYSMENU = OFF TALK = OFF VIEW = OFF EXACT = OFF SECONDS = OFF HOURS = 24 DATE = GERMAN [/src] 2. Файл Foxpro.int в каталоге с exe-файлом программы. 3. В реестре ключ [SRC{post.srctag}] [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage] "1250"="c_1250.nls" "1251"="c_1251.nls" "1252"="c_1251.nls" [/src] и все равно получается следующее (см. крякозяблы на фоне картинки): ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 08:56 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
ВладимирМПопробуй еще в реестре сделать следующие изменения [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage] "1252"="c_1251.nls" может, это и не важно, но тем не менее... если полученный dbf-файл смотреть в Фаре, то русский шрифт отображается корректно в кодировке WINDOWS. При открытии файла в Worde через Ctrl+O (как обычный файл), русский тект импортируется нормально. А вот при вставке файла именно как базу данных не происходит перекодировка. Значит - настроить ворд? Или ODBC? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 10:20 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
там у тебя где кнопка получить данные за ней одбс должен стоять а файл конфигурации и прочее здесь не причем если в программе ничего не меняли конечно так что мучай ворд с фоксом всё окей хр не знаю и на компе его нет так что и помочь конкретно не могу извеняй брат думай сам все варианты тебе показали ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 10:32 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
Для порядка, хотелось бы узнать, установлен ли вообще признак кодовой страницы у файла DBF? Т.е. что именно (какой ASCII-код) записан в 29 байте заголовка таблицы (первый байт имеет порядковый номер 0, т.е. физически - это 30 символ)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 11:27 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
ВладимирМДля порядка, хотелось бы узнать, установлен ли вообще признак кодовой страницы у файла DBF? Т.е. что именно (какой ASCII-код) записан в 29 байте заголовка таблицы (первый байт имеет порядковый номер 0, т.е. физически - это 30 символ)? вот скриншот файла, созданного при всех учете всех решений, высказанных выше. В 29 байте, насколько я понимаю, стоит 03. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 12:59 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
Ошибка именно в FoxPro! Точнее в способе запуска FoxPro. В 29 байте должно стоять одно из 2 значений 0х65 - 866 кодовая страница (DOS Rus) 0хС9 - 1251 кодовая страница (WIN Rus) А значение 0x03 - 1252 кодовая страница (Win Eng) Это значит, что программа FoxPro "не видит" файла конфигурации. Т.е. при запуске EXE в качестве директории по умолчанию используется какая-то другая директория. Как именно происходит запуск EXE? Интересует именно момент старта EXE, а не его дальнейшая работа. Впрочем, возможен вариант, когда файл конфигурации включен внутрь EXE (тогда без перекомпиляции EXE не обойтись), но, поскольку, раньше все было нормально, то скорее всего дело именно в способе запуска EXE. Попробуй скопировать файл CONFIG.FPW в директорию Windows. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 13:24 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
ВладимирМОшибка именно в FoxPro! Точнее в способе запуска FoxPro. В 29 байте должно стоять одно из 2 значений 0х65 - 866 кодовая страница (DOS Rus) 0хС9 - 1251 кодовая страница (WIN Rus) А значение 0x03 - 1252 кодовая страница (Win Eng) понятно говорите, Владимир. Есть что сказать бедным юзерам:"Извините, Ваша программа использует неправильную кодовую страницу 1252, вон, видите, байтик то не тот что надо!;-) Подождите перекомпиляции программы по новому оптимизированному алгоритму." Эх... юмор юмором, будем рыть дальше. ВладимирМЭто значит, что программа FoxPro "не видит" файла конфигурации. Т.е. при запуске EXE в качестве директории по умолчанию используется какая-то другая директория. Как именно происходит запуск EXE? Интересует именно момент старта EXE, а не его дальнейшая работа. Сейчас разберемся. EXE-файл лежит в локальной директории, в нем лежат также файлы CONFIG.PWT с нужной нам сторой и FOXPRO.INT... Также есть 1 cfg-файл, который, по видимому, указывает расположение самих данных (на сервере). В каталоге среди прочих нашел файлик "gl_pr.prg", в котором есть такие строчки: Код: plaintext 1. 2. 3. 4. 5. ВладимирМ Впрочем, возможен вариант, когда файл конфигурации включен внутрь EXE (тогда без перекомпиляции EXE не обойтись), Я уже смирился с этой мыслью, сейчас изучаю мало-мальскую документацию по программе, написанную через пень-колоду явно в понедельник после получки китайской шариковой ручкой на неудавшихся черновиках.... ВладимирМ но, поскольку, раньше все было нормально, то скорее всего дело именно в способе запуска EXE. По последним данным юзеров, такой финт ногами (то есть "экспорт" в ворд) раньше получался только на одном компе (Вынь НТ4,0), а теперь после установки на него Вынь98 перестал получаться. На других (у которых ХР) и раньше не было русского языка. Значит, дело действительно в программе. Попробуй скопировать файл CONFIG.FPW в директорию Windows.[/quot] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 13:47 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
ВладимирМОшибка именно в FoxPro! Точнее в способе запуска FoxPro. В 29 байте должно стоять одно из 2 значений 0х65 - 866 кодовая страница (DOS Rus) 0хС9 - 1251 кодовая страница (WIN Rus) А значение 0x03 - 1252 кодовая страница (Win Eng) В соседнем топике было сказано про программку CPZERO и методику его использования. Изначально dbf-файл сохраняется в кодировке 0x03, затем в Фоксе я "убиваю" кодировку (в 29 байте 0х00), после чего при открытии в фоксе он просит указать кодировку. Выбираем WIN-1251 - все красиво, все буковки пральные; выбираем DOS-866 - крякозяблы; выбираем WIN-1252 - русские буковки, но не все знаки и буквы правильные. Вывод - Фоксовая программа сохраняет файл в 1251-ой кодировке, а вот ВОРД, драйвер ODBC или бог еще весть что ни в какую не хочет принимать славянский язык :-( Уже и не знаю, где копать. ВладимирМ Попробуй скопировать файл CONFIG.FPW в директорию Windows. пробовал, не помогло..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 14:31 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
Нет. Все не совсем так. Когда ты формируешь новую DBF-таблицу в FoxPro, если явно не указывается в какой кодовой странице ее формировать, то эта новая таблица будет создана в текущей кодовой странице среды FoxPro. В VFP5 текущая кодовая страница среды FoxPro устанавливается в момент открытия самого FoxPro следующим образом: 1) Если есть файл конфигурации CONFIG.FPW со строкой CODEPAGE=1251, то будет установлена указанная кодовая страница 2) Если файла конфигурации нет, или там стоит CODEPAGE=AUTO, то будет установлена кодовая страница операционной системы (Windows). По всей видимости, у тебя это 1252 (Win eng) Я не знаю случая, когда бы при создании новой таблицы в русскоязычном приложении сознательно указывали кодовую страницу 1252. Значит таблица создается без явного указания кодовой страницы. Следовательно, остается единственная причина: не подхватывается нужный файл конфигурации. Попробуй простейший вариант запуска файла EXE из проводника Windows. Т.е. в проводнике Windows в одной папке должны лежать файл EXE и файл CONFIG.FPW со строкой CODEPAGE=1251. И дважды щелкни левой кнопкой мыши по EXE. Да, перед созданием нового файла DBF удали старый (может он не создается, а только наполняется) там же в проводнике. Если и после этого ничего не изменилось, то это значит, что файл CONFIG.FPW был включен внутрь EXE и в этом включенном файле нет строки CODEPAGE=1251. В этом случае открой проект в среде FoxPro (файл с расширением PJX) и найди в списке файлов внутри проекта файл конфигурации (CONFIG.FPW) и посмотри его содержимое. Достаточно дописать нужную строчку и просто перекомпилить весь проект. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 15:03 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
ВладимирМ В этом случае открой проект в среде FoxPro (файл с расширением PJX) и найди в списке файлов внутри проекта файл конфигурации (CONFIG.FPW) и посмотри его содержимое. Достаточно дописать нужную строчку и просто перекомпилить весь проект. открыл проект в Фоксе, нашел config.pwt, который лежал в том же каталоге, указал там кодовую страницу 1251, перекомпилировал, запустил exe-шник, сохранил dbf-выборку. Так вот, теперь там 29-ый байт стоит 0хС9. При открытии в ворде те же самые крякозяблы. Тот же результат при использовании программы CPZERO и явном указании кодовой страницы в Фоксе при открытии очищенного файла таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 15:40 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
Это опечатка или файл конфигурации действительно имеет расширение "PWT" вместо "FPW"? В FoxPro этот файл читается нормально (с не очищенным 29 байтом)? Что в среде FoxPro возвращает команда (в командном окне) ?CPCURRENT() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 16:58 |
|
||
|
Экспорт из FoxPro в Word
|
|||
|---|---|---|---|
|
#18+
Утро вечера мудренее ;-) С добрым утром. ВладимирМЭто опечатка или файл конфигурации действительно имеет расширение "PWT" вместо "FPW"? Простите, это опечатка. Файл CONFIG.FPW ВладимирМ В FoxPro этот файл читается нормально (с не очищенным 29 байтом)? при создании dbf-файла 29 байт теперь (после перекомпиляции) С9, открывается в Фоксе великолепно, все символы исконно русские. Если выполнить очистку программой CPZERO, при открытии в фоксе выдается запрос на указание кодовой страницы. ВладимирМ Что в среде FoxPro возвращает команда (в командном окне) ?CPCURRENT() выдает 1251 Попробовал сказать команду Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2004, 08:52 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32755095&tid=1595489]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
58ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
| others: | 249ms |
| total: | 408ms |

| 0 / 0 |
