Последовательный рабочий процесс, добавляющий другую копию элемента при обновлении элемента списка

Я создал собственный последовательный рабочий процесс, в котором я назначаю задачу пользователю, например:

private void createTask1_MethodInvoking(object sender, EventArgs e)
    {
       SPListItem currentItem = workflowProperties.Item; 
       RequestApproveTaskId = Guid.NewGuid();
       RequestTaskProperties.Title = "";
       RequestTaskProperties.Description = "Please review the request";
       RequestTaskProperties.StartDate = DateTime.Today;            
       RequestTaskProperties.AssignedTo = userName;            
       RequestTaskProperties.EmailBody = this.EmailBody;
       RequestTaskProperties.HasCustomEmailBody = true;
       RequestTaskProperties.SendEmailNotification = true;
    }

его правильное создание задачи и назначение пользователю. Без проблем, работает нормально. и я установил запуск рабочего процесса при добавлении нового элемента в список.

Проблема возникает, когда я редактирую/обновляю значение элемента списка, для которого запущен и находится в процессе рабочий процесс. Вместо обновления существующего элемента он добавляет еще один элемент в библиотеку с обновленным значением, которое снова запускает рабочий процесс для вновь добавленного элемента списка.

Итак, мой вопрос заключается в том, как остановить добавление нового элемента с обновленным значением. Я хочу обновить существующий элемент списка и нажать функцию OnChange() последовательного рабочего процесса. Пожалуйста, ответьте, я не получаю решения в Google.


person Atulya    schedule 18.10.2013    source источник
comment
Я решил это. Существуют действия OntaskChange() и OnWorkflowItemChange(), первое из которых запускается, когда вы редактируете задачу, а второе запускается, когда вы редактируете список/библиотеку, связанную с рабочим процессом.   -  person Atulya    schedule 19.10.2013


Ответы (1)


Рабочий процесс ItemAdding выполняется каждый раз, когда вы добавляете что-либо в элемент списка. Попробуйте написать свой код в ItemAdded. Тогда ваш код работает правильно, как вы хотите.

person Jay Doshi    schedule 12.01.2014