Проблема рабочего процесса Sharepoint - PullRequest
0 голосов
/ 21 июня 2009

У меня есть пользовательский рабочий процесс состояния утверждения, этот рабочий процесс присоединен к списку и включен для запуска, когда любой элемент добавлен или изменен в соответствии с требованиями, когда мой рабочий процесс достиг состояния публикации, я пишу пользовательский код, чтобы изменить его статус модерации на Утверждено, затем рабочий процесс завершен (состояние элемента будет изменено, как я хочу), но проблема в том, что мой рабочий процесс снова запускается как новый экземпляр :(.

Ответы [ 3 ]

1 голос
/ 21 июня 2009

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

Единственный вариант - это выполнить первое действие в рабочем процессе, чтобы проверить, должен ли экземпляр рабочего процесса выполняться. Если нет, выйдите из экземпляра рабочего процесса. Если вы создаете рабочий процесс в SharePoint Designer и у вас нет такого действия, вы можете создать настраиваемое действие для этого в Visual Studio 2008, а затем использовать его в SharePoint Designer. Если вы создаете весь рабочий процесс в Visual Studio 2008, то вы можете создать настраиваемое действие в Visual Studio для использования с ним.

0 голосов
/ 16 июля 2009

Я создал небольшую работу, чтобы решить эту проблему. Я создал предфинальное состояние, которое перенаправляет в конечное состояние напрямую. Затем я создаю пользовательский код активности в этом состоянии и сделать его код:

Thread.Sleep(300);

и моя проблема исправлена:)

0 голосов
/ 21 июня 2009

У вас есть два варианта:

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

2) Начните рабочий процесс с кода в получателе событий, который вы пишете, и проверьте элемент перед его запуском.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...