![]() |
|
|
#1
|
|||
|
|||
|
Подскажите, пожалуйста, что делаю не так?
пишу: Код:
try
DataModule1.ADOQuery1.Active:= false;
DataModule1.ADOQuery1.SQL.Clear;
DataModule1.ADOQuery1.SQL.Add('Select [DateGaran]');
DataModule1.ADOQuery1.SQL.Add('From GaranTalon');
DataModule1.ADOQuery1.SQL.Add('Where [s/n] like '''+DBEdit2.Text+'''');
DataModule1.ADOQuery1.Active:= true;
DateGaran2 := DataModule1.ADOQuery1.Fields[0].AsDateTime;
except
MessageDlg('Ошибка в запросе поиска кода изделия', mtError, [mbOK], 0);
end;
MessageDlg('Дата составления гарантийного талона на данный товар: ' + DateToStr(DateGaran2), mtInformation, [mbOK], 0);
//================Разница дат гаран и квитанции=======================================
if MaskEdit1.Text <> ' . . ' then
begin
s := DaysBetween(StrToDateTime(MaskEdit1.Text),DateGaran2);
MessageDlg('Истечение срока гарантии через: ' + DateTimeToStr(s), mtInformation, [mbOK], 0); //вот здесь неправильно считает
end;DateUtils подключила |
|
#2
|
|||
|
|||
|
как именно неправильно считает?
Ошибка на 1 день? |
|
#3
|
|||
|
|||
|
нет, вообще непонятно откуда берет дату. например разница между 13.11.1111 и 11.11.1111 у него 01.01.2001
![]() |
|
#4
|
|||
|
|||
|
Ну да, а чего ты хотела???
Здесь: Код:
MessageDlg('Истечение срока гарантии через: ' + IntToStr(s), mtInformation, [mbOK], 0); |
|
#5
|
|||
|
|||
|
Ну конечно, это же количество дней. Спасибо, исправила!
|