networkdays — скрипт и функция диаграммы
Функция networkdays возвращает число рабочих дней (понедельник-пятница) между и включая значения, указанные в поле start_date и end_date, учитывая выходные, которые можно дополнительно задать в поле holiday.
Синтаксис:
networkdays (start_date, end_date [, holiday])
Тип возврата данных: целое число
Аргументы:
Аргумент | Описание |
---|---|
start_date | Дата начала для оценки. |
end_date | Дата окончания для оценки. |
holiday |
Периоды выходных дней для исключения из рабочих дней. Период выходных дней указан как дата начала и дата окончания, разделенные запятыми. Пример: '25/12/2013', '26/12/2013' Можно указать несколько периодов выходных дней, разделенных запятыми. Пример: '25/12/2013', '26/12/2013', '31/12/2013', '01/01/2014' |
Примеры и результаты:
В этих примерах используется формат даты DD/ММ/YYYY. Формат даты указан в операторе SET DateFormat в верхней части скрипта загрузки. Измените формат в примерах согласно своим пожеланиям.
Пример 1:
networkdays ('19/12/2013', '07/01/2014')
Возвращает 14. В этом примере выходные дни не учитываются.
Пример 2:
networkdays ('19/12/2013', '07/01/2014', '25/12/2013', '26/12/2013')
Возвращает 12. В этом примере учитываются выходные в периоде с 25/12/2013 по 26/12/2013.
Пример 3:
networkdays ('19/12/2013', '07/01/2014', '25/12/2013', '26/12/2013', '31/12/2013', '01/01/2014')
Возвращает 10. В этом примере учитываются двухдневные периоды выходных дней.
Пример 4:
Добавьте образец скрипта в свой документ и запустите. Затем добавьте на лист документа как минимум поля, указанные в столбце с результатами, чтобы увидеть результаты.
PayTable:
LOAD recno() as InvID, * INLINE [
InvRec|InvPaid
28/03/2012|28/04/2012
10/12/2012|01/01/2013
5/2/2013|5/3/2013
31/3/2013|01/5/2013
19/5/2013|12/6/2013
15/9/2013|6/10/2013
11/12/2013|12/01/2014
2/3/2014|2/4/2014
14/5/2014|14/6/2014
13/6/2014|14/7/2014
7/7/2014|14/8/2014
4/8/2014|4/9/2014
] (delimiter is '|');
NrDays:
Load *,
NetWorkDays(InvRec,InvPaid) As PaidDays
Resident PayTable;
Drop table PayTable;
Результирующая таблица показывает возвращенные значения функции NetworkDays для каждой записи в таблице.
InvID | InvRec | InvPaid | PaidDays |
---|---|---|---|
1 | 28/03/2012 | 28/04/2012 | 23 |
2 | 10/12/2012 | 01/01/2013 | 17 |
3 | 5/2/2013 | 5/3/2013 | 21 |
4 | 31/3/2013 | 01/5/2013 | 23 |
5 | 19/5/2013 | 12/6/2013 | 18 |
6 | 15/9/2013 | 6/10/2013 | 15 |
7 | 11/12/2013 | 12/01/2014 | 23 |
8 | 2/3/2014 | 2/4/2014 | 23 |
9 | 14/5/2014 | 14/6/2014 | 23 |
10 | 13/6/2014 | 14/7/2014 | 22 |
11 | 7/7/2014 | 14/8/2014 | 29 |
12 | 4/8/2014 | 4/9/2014 | 24 |