Отображение даты

Добрый день. Прошу помощи с корректным выводом даты в формате ДД:ЧЧ:ММ.
Данные с Codesys 3.5 приходят в формате ltime. Можно ли вывести также, в таком же формате?


Добрый день. Прошу помощи с корректным выводом даты в формате ДД:ЧЧ:ММ.
Данные с Codesys 3.5 приходят в формате ltime. Можно ли вывести также, в таком же формате?

var
val: int64;
function LTimeToString(const LTime: Int64): string;
var
TotalSeconds: Int64;
Days, Hours, Minutes, Seconds: Integer;
begin
// 1 наносекунда = 1e-9 секунд
TotalSeconds := LTime div 1000000000;
Days := TotalSeconds div 86400;
TotalSeconds := TotalSeconds mod 86400;
Hours := TotalSeconds div 3600;
TotalSeconds := TotalSeconds mod 3600;
Minutes := TotalSeconds div 60;
Seconds := TotalSeconds mod 60;
Result := Format('%dd:%dh:%dm:%ds', [Days, Hours, Minutes, Seconds]);
end;
Begin
val := ReadValue('Имя вашего канала с которого читаем LTIME');
WriteValue('Virtual channel', LTimeToString(val));
end.
В видео примере я показал что данные считываются и отображаются корректно.

var
val: int64;
function LTimeToString(const LTime: Int64): string;
var
TotalSeconds: Int64;
Days, Hours, Minutes, Seconds: Integer;
begin
// 1 наносекунда = 1e-9 секунд
TotalSeconds := LTime div 1000000000;
Days := TotalSeconds div 86400;
TotalSeconds := TotalSeconds mod 86400;
Hours := TotalSeconds div 3600;
TotalSeconds := TotalSeconds mod 3600;
Minutes := TotalSeconds div 60;
Seconds := TotalSeconds mod 60;
Result := Format('%dd:%dh:%dm:%ds', [Days, Hours, Minutes, Seconds]);
end;
Begin
val := ReadValue('Имя вашего канала с которого читаем LTIME');
WriteValue('Virtual channel', LTimeToString(val));
end.
В видео примере я показал что данные считываются и отображаются корректно.
Вот же рабочий пример скрипта!!!

Если скрипт как на скрине - то он не будет ничего читать. Там константное значение установлено.
Для начала нужно разобраться с тем что передаёт ОРС. В теме я все подробно расписал.