Автор | Сообщение |
|
| постоянный участник
|
Пост N: 2215
Зарегистрирован: 12.09.06
|
|
Отправлено: 28.05.12 13:38. Заголовок: Помогите открыть DBF-файл из Киева....
Всем привет. Прислали мне тут DBF-файл, а современные "смотрелки" вылетают.... http://files.mail.ru/WBLOJS DBedit Pavel Tsarenko - предлагает изменить заголовок и обрезает базу. Открывает только старый DBU на Клипере. Что посоветуете, как работать с такими файлами... У меня много их потом будет...
|
|
|
Ответов - 25
, стр:
1
2
All
[только новые]
|
|
|
| |
Пост N: 2384
Зарегистрирован: 17.05.05
|
|
Отправлено: 28.05.12 13:54. Заголовок: Плагин для Far , Loo..
Плагин для Far , LookDBF нормально открыл. Harbour и Xharbour cчитают что файл пуст. Сами файлики тебе слали в архиве или в чистом виде ? Помнится был глюк у Тhe Bat. Если dbf-ик слать в чистом виде то при сохранении туда дописывалась какая та дрянь PS Clipper так же нормально открыл файл ЗЫ1 Excel открыл норм ;)
|
|
|
|
| постоянный участник
|
Пост N: 2216
Зарегистрирован: 12.09.06
|
|
Отправлено: 28.05.12 14:15. Заголовок: Dima пишет: Помнитс..
Dima пишет: цитата: | Помнится был глюк у Тhe Bat. Если dbf-ик слать в чистом виде то при сохранении туда дописывалась какая та дрянь |
| Спасибо БОЛЬШОЕ Дима, а то я думал что мне труба... Это оказывается The BAT! глючит...
|
|
|
|
| |
Пост N: 65
Зарегистрирован: 16.12.08
|
|
Отправлено: 28.05.12 14:26. Заголовок: В файле повторяются ..
В файле повторяются названия полей (DOPP_2 и т.д.). Открылb только DBF Manager и плагин для Фара.
|
|
|
|
| постоянный участник
|
Пост N: 2217
Зарегистрирован: 12.09.06
|
|
Отправлено: 28.05.12 14:30. Заголовок: santy пишет: В файл..
santy пишет: цитата: | В файле повторяются названия полей (DOPP_2 и т.д.). |
| Это ошибка программеров или The Bat! "постарался" ? И каким языком можно продублировать поля в БД ?
|
|
|
|
| |
Пост N: 214
Зарегистрирован: 11.10.11
|
|
Отправлено: 28.05.12 14:38. Заголовок: Не открывайте подозр..
Не открывайте подозрительные посылки. Позвоните лучше в милицию!
|
|
|
|
| |
Пост N: 496
Зарегистрирован: 11.06.10
|
|
Отправлено: 28.05.12 14:42. Заголовок: Сыроежка во флейме а..
Сыроежка, во флейме анекдоты рассказывайте!
|
|
|
|
| |
Пост N: 215
Зарегистрирован: 11.10.11
|
|
Отправлено: 28.05.12 14:51. Заголовок: Может быть этот файл..
Может быть этот файл сформирован СУБД которая разрешает в качестве полей указывать массивы. И, возможно, именно поэтому имена дублируются. Если их характеристики одинаковы (число знаков в поле и количество после запятой), то скорей всего это именно массив. Clipper, если имеется в виду DBU, открывает файл наверное потому, что он не проверяет дублирование имен полей. Возможно вам придется отредактировать заголовок, изменив имена дублирующихся полей.
|
|
|
|
| |
Пост N: 66
Зарегистрирован: 16.12.08
|
|
Отправлено: 28.05.12 14:52. Заголовок: не думаю что это The..
не думаю что это The bat , в версии 3 х такого не наблюдал. В принципе можна протестить. Скажите пусть заархивируют и пришлют вам ещё раз. Сравните структуру.
|
|
|
|
| постоянный участник
|
Пост N: 2218
Зарегистрирован: 12.09.06
|
|
Отправлено: 28.05.12 14:55. Заголовок: santy пишет: не дум..
santy пишет: Спасибо БОЛЬШОЕ. Так и поступлю...
|
|
|
|
| |
Пост N: 67
Зарегистрирован: 16.12.08
|
|
Отправлено: 28.05.12 14:58. Заголовок: Ещё этот файл открыв..
Ещё этот файл открывает внутренний редактор dbf xedit oт Xailer . При просмотре структури видно что поля одинаковые , разница только в длине поля типа С.
|
|
|
|
| |
Пост N: 216
Зарегистрирован: 11.10.11
|
|
Отправлено: 28.05.12 15:02. Заголовок: Может быть проще у н..
Может быть проще у них, то есть в Киеве, спросить, какой СУБД сформирован файл, и разрешается ли запись массива полей. Еще такая делитантская мысль пришла. Не может ли быть так, что этот файл подготовлен в 1С? Как иззвестно, если я не ошибаюсь, они в 8-ой версии используют собственную СУБД. Может быть при выгрузке в формат DBF, их пррграмма просто вставила имена, которые соответствуют имени одному агрегированному полю исходной СУБД. Просто сделала это автоматически.
|
|
|
|
|
| постоянный участник
|
Пост N: 2219
Зарегистрирован: 12.09.06
|
|
Отправлено: 28.05.12 15:06. Заголовок: Сыроежка пишет: Мож..
Сыроежка пишет: цитата: | Может быть проще у них, то есть в Киеве, спросить, какой СУБД сформирован файл, и разрешается ли запись массива полей. |
| Это сложно очень ! Из Москвы до Киева звонить и узнавать кто этим там занимается....
|
|
|
|
| |
Пост N: 217
Зарегистрирован: 11.10.11
|
|
Отправлено: 28.05.12 15:07. Заголовок: А по электронной поч..
А по электронной почте?
|
|
|
|
| |
Пост N: 2385
Зарегистрирован: 17.05.05
|
|
Отправлено: 28.05.12 16:20. Заголовок: Andrey Похоже не в ..
Andrey Похоже не в почтовой проге дело ;) На эти грабли уже натыкались в 2010 и структура файла такая же. Смотрим тут
|
|
|
|
| Администратор
|
Пост N: 2356
Зарегистрирован: 23.05.05
|
|
Отправлено: 31.05.12 11:44. Заголовок: Клиппер и остальные ..
Клиппер и остальные средства работы с форматом dbf поддерживают символьные поля размером до 256 байт, а харбор - до 64к. Для этого в заголовке для указания размера такого поля используется 2 байта - байт длины и байт к-ва десятичных знаков. В "киевском" файле в байте для десятичных знаков ошибочно указано 2, хотя должно быть 0. Вот харбор и вычисляет длину такого поля более 256 байт. Если открыть файл через dbedit, не исправляя заголовок, и посмотреть его структуру, то символьные поля размером более 500 байт - как раз они и есть. В результате харбор неверно определяет общий размер записи, и отсюда все дальнейшие беды. Насколько я знаю, excel как раз может формировать такие битые файлы.
|
|
|
|
| |
Пост N: 2
Зарегистрирован: 31.05.12
|
|
Отправлено: 31.05.12 18:17. Заголовок: Pasha пишет: Клиппе..
Pasha пишет: цитата: | Клиппер и остальные средства работы с форматом dbf поддерживают символьные поля размером до 256 байт |
| Вообще то в Клиппер 5.01, согласно официальной документации от Nantucket, максимальная длина символьного поля 64k. цитата: | Для этого в заголовке для указания размера такого поля используется 2 байта - байт длины и байт к-ва десятичных знаков. |
|
|
|
|
|
| Администратор
|
Пост N: 2358
Зарегистрирован: 23.05.05
|
|
Отправлено: 31.05.12 18:33. Заголовок: evsob пишет: Вообще..
evsob пишет: цитата: | Вообще то в Клиппер 5.01, согласно официальной документации от Nantucket, максимальная длина символьного поля 64k. |
| Это для memo-поля. А для символьного поля максимальная длина 256 байт, так как в заголовке dbf для длины поля используется 1 байт. В структуре заголовка поля есть еще байт для определения числа десятичных знаков числового поля. Для символьного поля он не задействован. А в харборе этот байт как раз используется для задания размера символьного поля до 64к.
|
|
|
|
| |
Пост N: 3
Зарегистрирован: 31.05.12
|
|
Отправлено: 31.05.12 18:47. Заголовок: Pasha пишет: Это дл..
Pasha пишет: цитата: | Это для memo-поля. А для символьного поля максимальная длина 256 байт |
| Во-первых передо мной официальная документация. Во-вторых пользовался сам в базах такими полями. И в-третьих дбушука (русская) от него читает прекрасно эти файлы.
|
|
|
|
| Администратор
|
Пост N: 2359
Зарегистрирован: 23.05.05
|
|
Отправлено: 31.05.12 19:16. Заголовок: evsob пишет: Во-пер..
evsob пишет: цитата: | Во-первых передо мной официальная документация. Во-вторых пользовался сам в базах такими полями. И в-третьих дбушука (русская) от него читает прекрасно эти файлы. |
| Ну дайте ссылку на доку. Тест для 5.01: dbCreate('test', {{'F1', 'C', 300, 0}}) В результате создается файл с полем f1 размерностью 44 символа, т.е. остаток от деления на 256. Так как и должно быть. Не надо выдумывать того, чего нет.
|
|
|
|
| Администратор
|
Пост N: 2360
Зарегистрирован: 23.05.05
|
|
Отправлено: 31.05.12 19:32. Заголовок: Я оказался неправ, д..
Я оказался неправ, давно не работаю с клиппером. Действительно, в клиппере поддерживается символьные поля до 64к А проблема в исходном киевском файле заключается в том, что размер записи в заголовке (2641 байт) не соответствует сумме длин полей (11345 байт). Это произошло вследствие того, что для клиппера (и харбора) к-во десятичных знаков для поля С величина значащая, а для прочих dbf-ридеров - незначащая. А для некоторых полей это значение оказалось заполненным.
|
|
|
Ответов - 25
, стр:
1
2
All
[только новые]
|
|