Функция firstworkdate возвращает самую позднюю дату начала, при которой период, заданный в поле no_of_workdays (понедельник-пятница), окончится не позднее даты, заданной в поле end_date, с учетом возможных выходных. end_date и holiday должны быть действительными датами или метками времени.
Количество рабочих дней, которое должно быть получено.
holiday
Периоды выходных дней для исключения из рабочих дней. Праздник обозначен как постоянная строка даты. Можно указать несколько дат праздников, разделенных запятыми.
В этих примерах используется формат даты DD/MM/YYYY. Формат даты указан в операторе SET DateFormat в верхней части скрипта загрузки данных. Измените формат в примерах согласно своим пожеланиям.
Возвращает 15/12/2014, поскольку учитывается двухдневный период выходных.
Пример:
Добавьте образец скрипта в свое приложение и запустите. Чтобы увидеть результаты, добавьте поля, перечисленные в столбце результатов, в лист приложения.
ProjectTable:
LOAD *, recno() as InvID, INLINE [
EndDate
28/03/2015
10/12/2015
5/2/2016
31/3/2016
19/5/2016
15/9/2016
] ;
NrDays:
Load *,
FirstWorkDate(EndDate,120) As StartDate
Resident ProjectTable;
Drop table ProjectTable;
Результирующая таблица показывает возвращенные значения функции FirstWorkDate для каждой записи в таблице.
Результирующая таблица
InvID
EndDate
StartDate
1
28/03/2015
13/10/2014
2
10/12/2015
26/06/2015
3
5/2/2016
24/08/2015
4
31/3/2016
16/10/2015
5
19/5/2016
04/12/2015
6
15/9/2016
01/04/2016
Помогла ли вам эта страница?
Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!