|
Открыть клиперовские дбф фоксом
|
|||
---|---|---|---|
#18+
Здравствуйте! Есть необходимость открывать 9-м фоксом базы клипера. Некоторые базы открываются без проблем, а некоторые при открытии сообщают что это "не таблица" хотя прогами типа тотал или эксель окрываются Подскажите как решить проблему! Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.10.2013, 00:06 |
|
Открыть клиперовские дбф фоксом
|
|||
---|---|---|---|
#18+
Клиперовские таблицы не имееют кодовой в заголовке, поэтому при открытии видим крякозяблы. Возможно это причина ошибки, хотя у меня всегда открывалось без проблем. Но так как Клипер потом сам автоматически востанавливает структуру. Я приноровился копировать табличку во временную папку, прописывать в заголовке кодовую и читать. Сейчас появились и таблички с CDX файлами, проипассными у них в заголовке. Вот код изменения заголовка таблицы для чтения из Фокса: IF USED("TableClip") USE IN TableClip ENDIF COPY FILE (D:Work\TableClip.dbf") TO ("D:\Temp\TableClip.dbf") nOnFileDbf = FOPEN("D:\Temp\TableClip.dbf",2) IF nOnFileDbf > 0 = FSEEK(nOnFileDbf,28) && Перемещение к байту 28 = FWRITE(nOnFileDbf,CHR(0)) && Убираем ссылку на CDX = FSEEK(nOnFileDbf,29) && Перемещение к байту 29 = FWRITE(nOnFileDbf,CHR(101)) && Прописываем кодовую 866 = FCLOSE(nOnFileDbf) ENDIF USE ("D:\Temp\TableClip.dbf") ALIAS TableClip IN 0 SHARE Поиграйся в общем с заголовком. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.10.2013, 09:16 |
|
Открыть клиперовские дбф фоксом
|
|||
---|---|---|---|
#18+
Дед Евгений, ну то что крокозяблы в текстовых полях - это само собой. Если открывать таблицу экслюзивно, то она предлагает выбор кодовой страницы и выбрав правильную все будет нормально. проблема в другом, если пытаешься открыть командой USE то имеем ошибку типа file is not a table Как это исправить? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.10.2013, 10:07 |
|
Открыть клиперовские дбф фоксом
|
|||
---|---|---|---|
#18+
Попробуй Код: sql 1.
Это отключение всех проверок структуры DBF. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.10.2013, 10:16 |
|
Открыть клиперовские дбф фоксом
|
|||
---|---|---|---|
#18+
Вот как раз и получается, что читает заголовок таблицы и видит нарушения. Все упирается в заголовок файла. Посмотри в фоксе была проседурка востановления файла, исправления заголовка. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.10.2013, 10:18 |
|
Открыть клиперовские дбф фоксом
|
|||
---|---|---|---|
#18+
Дед Евгений, В фоксе - это где? В примерах? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.10.2013, 10:49 |
|
Открыть клиперовские дбф фоксом
|
|||
---|---|---|---|
#18+
Клиппер, в отличие от Фокса, умеет создавать в таблицах Character-поля длиннее 254 символов. Если в таблице есть такое поле (и в нём есть значения длиннее 254), то исправления заголовка недостаточно. Надо или из Клиппера привести структуру таблицы к стандарту, или из Фокса всю таблицу читать на низком уровне. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.10.2013, 11:01 |
|
Открыть клиперовские дбф фоксом
|
|||
---|---|---|---|
#18+
SoftwareBoy, Спасибо за информацию. А можно примерчик, как прочитать таблицу на низком уровне и как потом ее выгрузить в правильную таблицу? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.10.2013, 11:08 |
|
Открыть клиперовские дбф фоксом
|
|||
---|---|---|---|
#18+
SoftwareBoyКлиппер, в отличие от Фокса, умеет создавать в таблицах Character-поля длиннее 254 символов. Если в таблице есть такое поле (и в нём есть значения длиннее 254), то исправления заголовка недостаточно. Надо или из Клиппера привести структуру таблицы к стандарту, или из Фокса всю таблицу читать на низком уровне. Кстати, еще там можно было с битовыми полями работать... Тогда, когда в Фоксе функций BITTEST(), BitSet(), BitClear() еще не было... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.10.2013, 14:28 |
|
|
start [/forum/topic.php?fid=41&msg=38415171&tid=1582889]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
323ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
others: | 376ms |
total: | 796ms |
0 / 0 |