Вниз
Скачать: CL | DM;

Float поля в DBase   Найти похожие ветки 

 
KADAN   (2004-01-29 09:37) [0]

Драссе, мастера! Знаю, что DBase такие поля делаются как N(10,2)
Не могу етого сделать из Delphi. Делается только так:

FieldDefs.Clear;
FieldDefs.Add("DATE",ftDate);
FieldDefs.Add("PRIXOD",ftFloat);
FieldDefs.Add("RASXOD1",ftFloat);
FieldDefs.Add("RASXOD2",ftFloat);
FieldDefs.Add("SALDO",ftFloat);
FieldDefs.Add("NOTE",ftString,20);
CreateTable;

И после етого могу писать table1.FieldByName("PRIXOD").AsFloat и все работает. Хотя когда открываю в Database Desktop"е значение типа поля оказывается не указанным вообще. А теперь, внимание, вопрос: не аукнется ли мне такой неуказанный Float в будущем, и если да, то как сделать нормальный N(10,2)???


 
Anatoly Podgoretsky ©   (2004-01-29 10:06) [1]

N(10,2) это не float поля, а Numeric (BCD)

Add is provided for backward compatibility. The recommended way to add new field definitions to the Items property array is using the AddFieldDef method.


 
KADAN   (2004-01-29 10:26) [2]

Ну хорошо, пусть Numeric, я имел ввиду, что мне надо поле вида ХХХХХХХХХХ.ХХ, а с AddFieldDef та же ерунда, там только один Size.


 
KADAN   (2004-01-29 10:28) [3]

И, кстати, если в Query делать "PRIXOD" NUMERIC(10,2), В dbd32 опять не показыавется тип поля... :(


 
KADAN   (2004-01-29 10:54) [4]

Ладно, я разобрался с тем что надо юзать ftBCD, но тогда у меня поле становится 20 и 4, ето для меня много...

with Fielddefs.AddFieldDef do begin
DataType:=ftBCD;
Name:="PRIXOD";
Size:=10;
Precision:=2;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.047 c
1-79763
@G
2004-02-11 17:52
2004.02.25
Защита файла


1-79841
3APA3A
2004-02-10 21:50
2004.02.25
Добавление файлов в ресурс...


7-80303
наблюдатель
2003-12-07 18:17
2004.02.25
WM_ACTIVATE


1-79919
norman
2004-02-08 22:21
2004.02.25
Ошибка при запуске программы на delphi


7-80322
Chery
2003-12-04 15:02
2004.02.25
Обратиться к флопику, открыть с дискеты файл ?




   Наверх