Александр 52 регион, понятно что происходит.
У вас одна из переменных I1_S_TIME или I1_E_TIME отсутствует - содержит пустое значение. Или обе сразу. Соответственно, возникает ошибка конвертации типа.
Можно модифицировать немного код функции, чтоб в случае ошибки, он выдавал в отчет
N/A.
Проверьте, пожалуйста. И отпишитесь здесь.
Код:
|
function TimeMinus(TimeBegin: String; TimeEnd: String): String;
var
TEnd: TDateTime = 0;
TBegin: TDateTime = 0;
TRes: TDateTime = 0;
TResStr: String;
begin
try
TBegin := StrToDateTime(TimeBegin);
TEnd := StrToDateTime(TimeEnd);
TRes := TEnd - TBegin;
if TRes >= 1 then
begin
TResStr := DateTimeToStr(TRes);
TResStr := IntToStr(Trunc(TRes)) + ' сут. ' + Copy(TResStr, Length(TResStr) - 7, 8);
end
else
begin
TResStr := DateTimeToStr(TRes);
TResStr := Copy(TResStr, Length(TResStr) - 7, 8);
end;
result := TResStr;
except
result := 'N/A';
end;
end; |
Для индикации и проверки, сделайте еще одну ячейку с содержимым, выводящем эти переменные переменные (если хотите):
[Dataset1."I1_S_TIME"]
[Dataset1."I1_E_TIME"]