Текущий архив: 2002.09.16;
Скачать: CL | DM;
Вниз
Как Variant привести к int64 ? Найти похожие ветки
← →
lmr (2002-09-02 16:18) [0]и\или наоборот собственно
← →
Игорь Шевченко © (2002-09-02 16:32) [1]RTFS: (DB.PAS) TLargeIntField.GetAsVariant - int64 в Variant
Variant имеет тип VT_DECIMAL
← →
lmr (2002-09-02 17:42) [2]Вроде всё ясно, ноо
пишу уже час одно и тоже , а именно :
Table1.Close;
T := TLargeintField.Create(Self);
T.FieldName := "NREC";
T.Name := Table1.Name+T.FieldName;
T.DataSet := Table1;
Table1.FieldDefs.UpDate;
Table1.Open;
y:=T.AsLargeInt;
Edit1.text:=Format("%X , %D",[y,y]);
← →
lmr (2002-09-02 17:48) [3]y:int64
поле это в FieldDefs вообще нет а он мне одно что -
что-то там Ошибка : LargeInt , оно Float должно быть и всё тут
← →
Игорь Шевченко © (2002-09-02 18:03) [4]Я, честно говоря, не понимаю, в чем задача состоит.
Если int64 в строку или наоборот, то это IntToStr/StrToInt.
Если передать, как вариант, то посмотреть в исходниках DB.pas тот метод, который я указал...
← →
lmr (2002-09-02 18:08) [5]Поле базы есть NUMERIC(19) - оно получается строкой - 1.23456789123456E19 . floatom тоже а реальное значение -
1234567890123456789 вот как ни возьму его - он всяко разно 789 откидывает
← →
lmr (2002-09-02 18:09) [6]а Int64(*.asVariant) не прёт
← →
Игорь Шевченко © (2002-09-02 18:16) [7]lmr (02.09.02 18:08)
А какая база ? Может, в настройках BDE сказать EnableBCD ?
← →
lmr (2002-09-02 18:19) [8]Ща проверю - база - Галактика-Pervasive-OBDC
← →
lmr (2002-09-02 18:28) [9]Что за тип BCD ?
dbgrid его не переваривает - overflov говорит
← →
lmr (2002-09-03 08:27) [10]вот что написано в help :
TBCDField Real number with a fixed number of decimal places, accurate to 18 digits. Range depends on the number of decimal places.
а поле есть такое NUMERIC(19,0)
Страницы: 1 вся ветка
Текущий архив: 2002.09.16;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.011 c