forum.bitel.ru
http://forum.bitel.ru/

отсчёт дат в процессах.
http://forum.bitel.ru/viewtopic.php?f=49&t=11974
Страница 1 из 1

Автор:  Galkov [ 03 окт 2016, 14:09 ]
Заголовок сообщения:  отсчёт дат в процессах.

Доброго дня,

Есть проблемка с отсчётом дат. функция setRelativeDateParam прибавляет сколько дней к текущей дате:

# автоматом дату планового подключения.
onProcessEvent.26.events=created
onProcessEvent.26.commands=setRelativeDateParam:59:3

Но при этом учитываются к примеру и субботы-воскресенья.

А можете включить функцию, которая бы не учитывала "стандартные" выходные дни(отсчёт только рабочих дней)? Или в идеале - вообще использовала настраиваемый календарь выходных?

Автор:  Администратор [ 05 окт 2016, 02:51 ]
Заголовок сообщения:  Re: отсчёт дат в процессах.

Пример как это можно сделать с помощью стандартного обработчика событий. Здесь из учёта исключён вторник. Вы можете пропустить нужные вам дни. Можно использовать и календарь рабочих дней - но это посложнее.
Код:
onProcessEvent.1.events=created
onProcessEvent.1.doExpression=<<END
  dao = new("ru.bgcrm.dao.ParamValueDAO", conSet.getConnection());
  cal = new("java.util.GregorianCalendar");
  addDays = 2;
  while (addDays > 0) {
      var dw = cal.get(cal.DAY_OF_WEEK);
      if (dw != cal.TUESDAY)
          addDays = addDays - 1;
      cal.add(cal.DAY_OF_YEAR, 1);
  }
  dao.updateParamDate(process.getId(), 51, cal.getTime());
END

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/