Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Подскажите, как правильно создать БД Foxpro в дельфях? [D6, dBase, FoxPro]


DimonS ©   (2005-06-22 02:11:00) 

Нужна БД именно FoxPro, с индехсным файлом ntx, т. к. эта долбаная 1с не принимает другую БД, как я понял.

Пишу такой код:
with tbZrp do begin
         TableType:=ttFoxPro;
         FieldDefs.Clear;
         FieldDefs.Add('F',ftString,75,false);
         FieldDefs.Add('P',ftString,20,false);
         FieldDefs.Add('Tn',ftInteger,0,true);
         FieldDefs.Add('R',ftinteger,0,False);
         FieldDefs.Add('SMR',ftFloat,0,False);
         FieldDefs.Add('SMRS',ftFloat,0,False);
         CreateTable;
end;

Выдается ошибка: Invalyd Record Structure,
Как я понимаю, скорее всего напутал с типом поля, но вот какие они должны быть? Или ошибка в чем-то другом? Если создавать этим же кодом dBase IV, то никакой ошибки нет.


atruhin   (2005-06-23 09:45:00) [1]

Вообще ничего хорошего из этого не получится. ИМХО. У 1С очень много особенностей, и в файлах и в структуре данных. Да и не нужно это все, 1С легко и просто работает через ОЛЕ


sniknik   (2005-06-22 13:04:00) [2]

> ИМХО. Индексный файл ntx это, кажись, не фокс уже, а клиппер . . .
точно. у фокса старые файловые индексы .idx,
а "эта долбаная 1с" кстати работает (7ка и 6ка вроде. 8ка свой формат держит, точно.) с индексами .cdx и то если база не в MSSQL.


ANB   (2005-06-22 11:27:00) [3]

Это, LocalSQL.hlp, искать "create table"


ANB   (2005-06-22 11:22:00) [4]

ИМХО. Индексный файл ntx это, кажись, не фокс уже, а клиппер . . .


Anatoly Podgoretsky   (2005-06-22 11:03:00) [5]

А ты уверен, что выдает ошибку?


DimonS   (2005-06-22 11:01:00) [6]

Я и посмотрел, но там поля типа Numeric, Float и т.д.
Как именно указать при создании таблицы эти поля?
FieldDefs.Add('SMR',ftFloat,0,False); выдает ошибку (наверно).
Или все же ошибка в другом?


Anatoly Podgoretsky   (2005-06-22 10:10:00) [7]

DimonS ©   (22.06.05 10:08) [5]
Можешь сам посмотреть в том же DBD


DimonS   (2005-06-22 10:08:00) [8]

ну так подскажите, какие есть там поля. Database Desktop не катит, нужно именно из программы.


Anatoly Podgoretsky   (2005-06-22 09:07:00) [9]

ftInteger 32-bit integer field

В ФоксПро нет таких полей!


Lord Zmiy   (2005-06-22 09:00:00) [10]

а фокс про разве не генерит скрипт сама


DimonS   (2005-06-22 03:40:00) [11]

То Dvm_home.

Вполне возможно. Но вот как его указать этот тип? ftDECIMAL - нет такого, а нужно БД создавать именно из программы. Если не сложно, то приведите кусочек кода.


Dvm_home   (2005-06-22 03:00:00) [12]

DimonS ©   (22.06.05 2:11)
Ты пытвешься создать базу dBase III ? Там нет типа данных float, только DECIMAL где строго указываешь размер поля и кол-во знаков после запятой. Может в этом проблема


Наверх

Титульная страница Поиск, карта сайта Написать письмо