Отображение даты
Добрый день. Прошу помощи с корректным выводом даты в формате ДД:ЧЧ:ММ.
Данные с 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.
В видео примере я показал что данные считываются и отображаются корректно.
Вот же рабочий пример скрипта!!!
Если скрипт как на скрине - то он не будет ничего читать. Там константное значение установлено.
Для начала нужно разобраться с тем что передаёт ОРС. В теме я все подробно расписал.