Порядок полей в DBF

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Гость

Сообщение Гость »

Приветствую всех!

Подруга попросила написать для нее простенький конвертер: из одного dbf
в другой, меняя имена некоторых полей и размерность некоторых полей,
типа decimal(10.5) в decimal(10.0).
Написал. Работает. Подруга счастлива.
Проходит неделя и конвертер отказывается работать: invalid record
declaration - во входном dbf поменялся порядок полей (количество и
названия остались прежними).

Вопрос: неужто придется при каждом изменении порядка полей менять
описание файла в исходнике и перекомпилировать программу? Я бы не
удивился, если бы подобное произошло с dat или tps, но никак не ожидал,
что так по-свински себя поведет драйвер dbase3 из cw5508.

Или я чего-то не учел, и все-таки имеется возможность работать одним
описанием структуры с файлами разной структуры? (еще раз: названия, размерности и количество полей не меняются, поменялся только порядок)

--
С.А.

(Добавление)

Юзай ODBC. Будешь работать с именами полей, а не с их смещениями в записи.

WBR, Nick Tsigouro. MailTo:Nick@arsis.ru

Гм... Как я понимаю, для этого надо на каждой машине этот самый odbc
настраивать? А без настройки можно как-нибудь обойтись?
--
С.А,
Написал: ClaList(2)
Гость

Сообщение Гость »

Есть много описаний DBF-формата - попробуй разберись.
Или найди либу от Философова специально для Клариона - там работа идет именно с именами полей. Да и идет она в исходниках - удобно!

=============================
С уважением, Олег А. Руденко.
Oleg_Rudenko@mail.ru
Oleg_Rudenko@mail333.com
Библиотека DynaLib
http://dynalib.narod.ru
Написал: ClaList(2)
Гость

Сообщение Гость »

Добрый день.
Вчера кто-то спрашивал про проблемы конвертации DBF-файлов (поменялся порядок полей). К сожалению, письма не сохранились, точнее, остались дома ;). Олег Руденко предложил библиотеку работы с dbf Юрия Философова, я же добавлю DPQuery. Пример в аттаче. В переменной request - запрос, в котором можно менять порядок полей как хошь, при желании хоть в рантайме.

С уважением, Михаил
Написал: ClaList(2)
Ответить