Условия
SharePoint 2010
Рабочий процесс в SharePoint Designer
В рабочем процессе есть действие “Обновить элемент в списке”, в котором обновляется столбец типа “Пользователь или группа”
Рабочий процесс нормально работает под пользователем, являющимся администратором семейства.
При запуске пользователем, не администратором, если в столбец подставляется пользователь, еще не добавленный в список сведений о пользователях, процесс завершается с ошибкой.
В журнале рабочего процесса:
“Обновить элемент в рабочем процессе не удалось, возможно потому, что в одном или нескольких столбцах для этого элемента должны содержаться данные другого типа.”
“The workflow could not update the item, possibly because one or more columns for the item require a different type of information”
В журнале SharePoint:
08/28/2013 17:21:21.39 w3wp.exe (0x1690) 0x20F0 SharePoint Foundation Workflow Infrastructure 88xr Unexpected WinWF Internal Error, terminating workflow Id# 29853693-81f2-49a1-9041-b807a1e38710
08/28/2013 17:21:21.39 w3wp.exe (0x1690) 0x20F0 SharePoint Foundation Workflow Infrastructure 98d4 Unexpected System.ArgumentException: Элемент не существует. Возможно, он был удален другим пользователем. at Microsoft.SharePoint.SPList.GetItemById(String strId, Int32 id, String strRootFolder, Boolean cacheRowsetAndId, String strViewFields, Boolean bDatesInUtc) at Microsoft.SharePoint.Workflow.SPWinOEWSSService.RetrieveListItem(SPWeb web, Guid id, Guid listId, SPItemKey itemKey, Boolean allowCreate) at Microsoft.SharePoint.Workflow.SPWinOEWSSService.UpdateListItemInternal(Guid id, Guid listId, SPItemKey itemKey, Hashtable itemProperties) at Microsoft.SharePoint.Workflow.SPWinOEWSSService.UpdateListItem(Guid id, Guid listId, SPItemKey itemKey, Hashtable itemProperties) at Microsoft.SharePoint.WorkflowActions.ActivityHelper.DoCorrectUpdateMethod(WorkflowContext theContext, SPItemK...
08/28/2013 17:21:21.39* w3wp.exe (0x1690) 0x20F0 SharePoint Foundation Workflow Infrastructure 98d4 Unexpected ...ey item, Guid listId, Hashtable properties, IListItemService hostInterface) at Microsoft.SharePoint.WorkflowActions.WithKey.UpdateItemActivity.DoUpdate(ActivityExecutionContext provider) at Microsoft.SharePoint.WorkflowActions.WaitForDocumentUnlockActivity.Execute(ActivityExecutionContext executionContext) at Microsoft.SharePoint.WorkflowActions.WithKey.UpdateItemActivity.Execute(ActivityExecutionContext provider) at System.Workflow.ComponentModel.ActivityExecutor`1.Execute(T activity, ActivityExecutionContext executionContext) at System.Workflow.ComponentModel.ActivityExecutor`1.Execute(Activity activity, ActivityExecutionContext executionContext) at System.Workflow.ComponentModel.ActivityExecutorOperation.Run(IWorkflowCoreRuntime workflowCoreRuntime) at System...
08/28/2013 17:21:21.39* w3wp.exe (0x1690) 0x20F0 SharePoint Foundation Workflow Infrastructure 98d4 Unexpected ....Workflow.Runtime.Scheduler.Run()
Причина
Причина в том, что пользователь, в контексте которого выполняется рабочий процесс, не имеет прав на создание новых записей в списке сведений о пользователях. Процесс не может создать нового пользователя и поэтому не может осуществить подстановку несуществующей записи.
Решение
В рабочем процессе перенести действие обновление элемента списка в шаг олицетворения и опубликовать процесс пользователем, имеющим права администратора семейства.