Вниз
Скачать: 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.016 c
1-79697
Builder
2004-02-13 02:19
2004.02.25
Сообщение об ошибке


6-80073
BlackSun
2003-12-17 13:20
2004.02.25
Indy и TIdIOHandlerSocket


14-80228
tvm
2004-02-04 23:28
2004.02.25
я только учусь


1-80001
Saris
2004-02-09 17:02
2004.02.25
Создание объектов в Rave reports


1-79925
Ivolg
2004-02-09 17:42
2004.02.25
Файлы




   Наверх