Вниз
Скачать: 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.018 c
1-79878
Developerr
2004-02-10 11:23
2004.02.25
Edit.Enabled=false;


4-80380
Magic_CT
2003-12-19 19:44
2004.02.25
Hooks


1-79710
Miwa
2004-02-12 05:17
2004.02.25
Где найти компонент ListBox+PageControl?


1-79907
AsbAlex
2004-02-08 01:23
2004.02.25
Помагите перенести код с паскаля на си


1-79762
Vladimir "Chainik"
2004-02-10 14:18
2004.02.25
Оптимизация (ускорение работы) программы




   Наверх