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

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

число записывается в базу в научном формате [D7, XP]


Sw ©   (2007-03-13 09:26:00) 

кусок кода:
var summa,CashBegin,CashEnd:double;
begin
 if kod>100 then begin
  CashEnd:=CashBegin+summa
  DM.Tmp.FieldByName('CashEnd').AsFloat:=CashEnd;
  CashBegin:=CashEnd;
  end;

DM.Tmp-файл dbf (Foxpro)
выполняется в цикле и каждый раз когда в результате CashBegin+summa получается 0, то в базу пишет число в научном формате (например,1.1369Е-13) Подскажите, как исправить данную ситуацию, нужно, чтобы и в базе был ноль. Думаю, через преобразование в строковый тип и обратно, но не хотелось бы в цикле выполнять множество раз. Подскажите, пожалуйста, как правильно сделать


Sw   (2007-03-13 10:39:00) [1]


> Рамиль ©

Спасиб


Сергей М.   (2007-03-13 09:46:00) [2]


> в базу пишет число в научном формате (например,1.1369Е-13)


Да глупости !

Нет в базе никаких - ни "научных" ни "околонаучных" - форматов, там есть таблица, в таблице есть поле, хранящее значения с плавающей запятой aka значения с ограниченной точностьюпредставления.

Вот из-за этой самой "ограниченной точности" туда и записан не 0, а очень-очень малое значение, близкое к 0.


Рамиль   (2007-03-13 09:42:00) [3]

Если я правильно понимаю слово Cash в данном контексте, то поле должно быть Currency и проблема пропадет сама собой.


Наверх

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