![](/s/cache/27/22/2722ce7b258bf1bf8cec8a0e9319ab6a.png)
график отпусков
А если задать начально отпуска датой и ввести кол-во календарных дней, то конечная дата получается на день больше чем должна быть.
ps и еще нет учета того "кадрово-бухгалтерского" нюанса, что если отпуск попадает на праздничный день, то этот день не учитывается как день отпуска и не оплачивается.
Answer
![](/s/cache/af/3c/af3c8d962123e442a6231a58785e3ec1.png)
![](/s/cache/af/3c/af3c8d962123e442a6231a58785e3ec1.png)
![](/s/cache/af/3c/af3c8d962123e442a6231a58785e3ec1.png)
![](/s/cache/18/4a/184acfbad23b8f19f61895b9cff772f2.png)
для правильного расчета конечной даты отпуска (при вводе начальной даты и кол-ва календарных дней) необходимо изменить скрипт расчета. Для этого:
1. заходим в КК под пользователем sa
2. открываем карточку Сотрудники.Отпуска.
3. нажимаем на клавиатуре сочетание клавиш Ctrl+T - становится активным значок свитка, на него нажимаем и попадаем в окно Редактор сценария
4. в процедуре Sub ScriptClick2 (Sender) находим строку:
q=DateAdd("d", this ("BookQuery").ValueByFieldName ("Кол-во календарных дней"), this ("BookQuery").ValueByFieldName ("Дата начала план"))
и заменяем ее на:
q=DateAdd("d", this ("BookQuery").ValueByFieldName ("Кол-во календарных дней")-1, this ("BookQuery").ValueByFieldName ("Дата начала план"))
5. в процедуре Sub ScriptClick4 (Sender) находим строку:
q=DateAdd("d", this ("BookQuery").ValueByFieldName ("Кол во календарных дней"), this ("BookQuery").ValueByFieldName ("Дата начала факт"))
и заменяем ее на:
q=DateAdd("d", this ("BookQuery").ValueByFieldName ("Кол во календарных дней")-1, this ("BookQuery").ValueByFieldName ("Дата начала факт"))
6. слева вверху Скрипт, Выполнить
![](/s/cache/27/22/2722ce7b258bf1bf8cec8a0e9319ab6a.png)
и понятно, что это нюанс, поэтому это не было включено мной в основной текст по ошибке, а так - для сведения.
![](/s/cache/af/3c/af3c8d962123e442a6231a58785e3ec1.png)
Customer support service by UserEcho