Как убрать будни в продолжительности типа данных 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);