Каков наилучший способ сообщить об ошибках из рабочего процесса SharePoint?

У меня есть настраиваемое действие в рабочем процессе, и я хочу сообщить пользователю об ошибке, если что-то пойдет не так. Какой лучший способ сделать это?

UPD: в идеале я хотел бы перевести рабочий процесс в состояние ошибки и записать сообщение в журнал рабочего процесса. Это не представляется возможным. Что мне ближе всего? Я хочу использовать повторно используемое решение, которое легко настроить пользователям при использовании моего настраиваемого действия в SharePoint Designer.


Добавил больше деталей к вопросу.

@mauro, который заботится о сохранении ошибки, но как я могу отобразить ошибку для пользователя таким образом, который имеет смысл?

@AdamSane Это кажется довольно хрупким решением. Это не вопрос настройки этого один раз на одном сайте. Мне нужно что-то, что другие могут добавить, используя SPD.

19.08.2008 13:24:19
4 ОТВЕТА

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

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

В противном случае вы можете иметь собственную таблицу БД, которую вы используете практически для одной и той же вещи, так что sharepoint сделает большую часть работы за вас.

Обновление Это можно упаковать как функцию и развернуть на каждом сайте по мере необходимости. Сильные стороны этого подхода (добавление элемента списка в список, выполнение запросов, оповещение пользователя и отправка электронного письма пользователю) - все это встроено в сам ресурс sharepoint. В этом случае вы можете сосредоточиться только на своей пользовательской логике, позволяя sharepoint сосредоточиться на деталях реализации.

0
19.08.2008 15:45:54

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

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

Mauro

0
19.08.2008 14:29:27

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

http://www.sharepointsecurity.com/blog/sharepoint/sharepoint-2007-development/fault-handling-in-sharepoint-workflows/

1
19.08.2008 17:03:41

Если вам нужно, чтобы пользователь предпринял какие-либо действия в результате ошибки (например, попытался повторить рабочий процесс), возможно ли создать для этого пользователя задачу с информацией об ошибке и местонахождении рабочего процесса?

0
18.09.2008 08:16:06
это то, что я пытаюсь сделать, но у меня возникают проблемы с получением ошибки: stackoverflow.com/questions/15053/… и stackoverflow.com/questions/33349/…
Eugene Katz 18.09.2008 14:25:45