Как убрать будни в продолжительности типа данных NAV

Как удалить дни недели в типе CAL?

например: длительность:= дата / время2 - дата / время1

Но продолжительность включает субботы и воскресенья. Как я могу удалить их?

1 ответ

Решение

Простой ответ: вы не можете.

Но вы можете использовать Date виртуальный стол. Что-то вроде этого:

Date.SETRANGE("Period Type", Date."Period Type"::Date);
Date.SETFILTER("Period Start", '%1..%2', DT2DATE(datetime1), DT2DATE(datetime2));
Date.SETRANGE("Period No.", 1, 5); // only days 1 - 5 = weekdays
EXIT(Date.COUNT); // returns number of days

Затем вы можете преобразовать количество дней в длительность с помощью простого умножения. Duration не более чем количество миллисекунд.

1 час = 3600000мс.

Следовательно:

MESSAGE('%1', NoOfDays);
dur := NoOfDays * 24 * 3600 * 1000;
MESSAGE('%1', dur);
Другие вопросы по тегам