Lotus Notes: разница между часами

У меня есть два редактируемых поля (Time1 и Time2), оба в формате календаря / времени в 24-часовом формате. Оба показывают время, например 20:15, и у меня также есть вычисленное поле для отображения, которое покажет разницу между двумя полями.

Я пробовал разницу: = (Time1 - Time2), но не сработало.

Есть ли другой способ понять разницу между ними?


person drayl    schedule 21.06.2013    source источник
comment
Простое вычитание значений обычно дает вам разницу в секундах. Что именно вы получите? Завернули разницу в ошибку, если одно из полей еще не заполнено?   -  person Torsten Link    schedule 21.06.2013


Ответы (2)


Формула в вычисляемом поле:

_diff := Time1 - Time2;
@If( @IsError( _diff ); 0; _diff )

Если поле имеет тип даты и времени, тогда вы получите разницу в часах / минутах. Если поле имеет тип числа, вы получите разницу в секундах.

Не забывайте @IsError, иначе ваша форма не откроется, если у вас нет действительных значений по умолчанию для Time1 и Time2.

person Torsten Link    schedule 21.06.2013
comment
Как-то не удалось воспроизвести ошибку в операции Time1 - Time2. Я пробовал оставить оба поля пустыми, одно поле пустым. В обоих случаях формула не возвращала ошибку, и вычисляемое поле было пустым. Я что-то здесь пропустил? Я использовал поле «Дата / время» с включенным только Display Time прошлым в свойствах поля. - person Naveen; 21.06.2013
comment
Затем это было исправлено в версии с тех пор, как я последний раз тестировал ... Поскольку я всегда оборачиваю любые вычисления / манипуляции с датой и временем в @iserror, чтобы запретить странные результаты, я просто не осознавал ... - person Torsten Link; 22.06.2013

Формула, вычисляемая для отображения, будет просто записана как:

Time1 - Time2

Еще одна вещь, которую следует проверить, - это нажать кнопку «Обновить» (нажать F5 или Ctrl + F5 в зависимости от того, какая у вас версия Lotus Notes), чтобы вычислить значение в вычисляемом поле после заполнения Time1 и Time2.

person Naveen    schedule 21.06.2013