Topic: дробное число

Доброго времени суток!
скрипт работает, но как только в Edit3 ввожу дробное число, соответственно skItog становится тоже дробным, выскакивает ошибка "is not a valid integer value"...  поле sklad.skKol вещественное число.

var
    skItog, skKol, skID: string;

procedure AddMaterialy_Button1_OnClick (Sender: string; var Cancel: boolean);
begin
     skKol := SQLExecute ('SELECT skkol FROM sklad WHERE (id=' + IntToStr(AddBanner.TableGrid6.dbItemID) + ');');
     skID := IntToStr(AddBanner.TableGrid6.dbItemID);     

     skItog := FloatToStr( StrToFloat(skKol) - StrToFloat(AddMaterialy.Edit3.Text));

     if StrToInt(skItog) >= 0 then
     begin
     SQLExecute('UPDATE sklad SET skkol=' + skItog + ' WHERE (id=' + skID + ');');
     AddBanner.TableGrid6.dbUpdate;
     end
     else
     begin
     ShowMessage('На складе материала меньше, чем Вы списываете!');
     Cancel := True;
     end;
end;

Re: дробное число

Приветствую,


попробуйте так


var
    skItog, skKol, skID: string;

procedure AddMaterialy_Button1_OnClick (Sender: string; var Cancel: boolean);
begin
     skKol := SQLExecute ('SELECT skkol FROM sklad WHERE (id=' + IntToStr(AddBanner.TableGrid6.dbItemID) + ');');
     skID := IntToStr(AddBanner.TableGrid6.dbItemID);     

     skItog := FloatToStr( StrToFloat(skKol) - AddMaterialy.Edit3.Value);

     if StrToFloat(skItog) >= 0 then
     begin
         SQLExecute('UPDATE sklad SET skkol=' + skItog + ' WHERE (id=' + skID + ');');
         AddBanner.TableGrid6.dbUpdate;
     end else
     begin
           ShowMessage('На складе материала меньше, чем Вы списываете!');
           Cancel := True;
     end;
end;
Dmitry.

Re: дробное число

помогло это: 
if StrToFloat(skItog) >= 0 then

а на AddMaterialy.Edit3.Value ругается, пишет   Undeclared identifier: 'Value'  видно потому, что проект в версии 1.46. оставил как было.

Всё работает.


ОГРОМНОЕ СПАСИБО!!!