Изменение рабочего процесса sharepoint во время его работы - PullRequest
1 голос
/ 13 октября 2009

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

Можно ли это сделать легко? Я посмотрел в Google и таких местах: Как обновить давно работающий рабочий процесс SharePoint, уже работающий , но я не могу найти никого, кто действительно делает то, что я пытаюсь сделать.

Полагаю, это потому, что этого нельзя сделать?

Ответы [ 2 ]

0 голосов
/ 19 октября 2009

Экземпляр рабочего процесса сериализуется в базу данных (через сериализацию .NET), когда он простаивает, и десериализуется в объект рабочего процесса при пробуждении. Если вы измените класс экземпляра рабочего процесса, среда выполнения захлебнется при попытке десериализации свободных рабочих процессов со «старой» структурой.

Если вы осторожны, вы можете добавить некоторую степень изменения в работающий рабочий процесс: например, вы можете изменить код в действиях кода или изменить некоторую логику, если это не влияет на «физическую» структуру процесс (нам удалось сделать это несколько раз, исправляя ошибку в коде и перезаписывая библиотеки DLL на месте без переустановки функции рабочего процесса). Большим запретом является добавление / удаление полей из класса, который содержит рабочий процесс, или изменение их типов.

Если вам нужно внести какие-то серьезные изменения (добавить / удалить действия и т. Д.), Лучше развернуть новый рабочий процесс как другой рабочий процесс. Обычно мы разворачиваем разные версии рабочих процессов, используя схему именования, такую ​​как foowf-0.1, foowf-0.2 и т. Д.

0 голосов
/ 13 октября 2009

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

...