Обратный расчет даты в бизнес-процессе

Уважаемые коллеги!

Имеется следующая ситуация: при подготовке маркетингового мероприятия исполняется бизнес-процесс. В этом бизнес-процессе есть два шага, дата совершения которых зависит от даты проведения этого мероприятия, например:

- звонок для получения подтверждения совершается за -2 рабочих дня от мероприятия,
- рассылка напоминания контактному лицу за -1 рабочий день до мероприятия.

Дата мероприятия известна, это реквизит "Actual start" маркетингового воздействия, а вот как подставить в задачу расчетные даты [Actual start - 2 раб. дня] с минимумом программирования?

Если кто делал, буду благодарен за решение!

Нравится

1 комментарий

Дмитрий, если Вам необходимо, чтобы в задачу подставлялись даты, которые меньше, чем дата выполнения предыдущего элемента, попробуйте указать отрицательное число в поле "Выполнить через":

Если Вам необходимо, чтобы дата зависела от другого параметра, нужно изменить обработку события OnExecute скрипта wa_TaskActionScript в месте, где определяется значение переменной ExecuteDate, или установить нужное значение для StartDate:

	var ExecuteDate = ItemDataset.ValAsDateTime('ExecuteDate');
	var ExecuteAfterTimeTypeID = 
		WFGetParamsMapItemValue(ActionItem, 'ExecuteAfterTimeTypeID');
	var ExecuteAfterTimeValue = 
		parseInt(WFGetParamsMapItemValue(ActionItem, 'ExecuteAfterTimeValue'));
	ExecuteDate = WFCalcExecuteTime(ExecuteDate, ExecuteAfterTimeTypeID, 
		ExecuteAfterTimeValue);
	ExecuteDate = ExecuteDate.getVarDate();
	DefaultValues.Add('StartDate', ExecuteDate);

Именно в этом блоке вычисляется значение, которое потом попадает в поле "Дата начала" карточки задачи. Вы можете изменить алгоритм вычисления (для всех задач или удовлетворяющих некоторому условию).

Показать все комментарии