Как получить доступ к результату истории рабочего процесса в MS Sharepoint?

#visual-studio #sharepoint #workflow

#visual-studio #sharepoint #рабочий процесс

Вопрос:

в настоящее время я использую Microsoft Visual Studio для создания веб-части для MS Sharepoint. Могу ли я спросить, как мне получить доступ к библиотекам / списку, в которых реализован рабочий процесс, чтобы получить историю рабочего процесса и результат после его завершения?

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

 SPSite site = new SPSite("http://win7:8000/RIDepartment/");
SPWeb oweb = site.OpenWeb();
SPList tasklist = oweb.Lists["Innovation workflow list"];
  

затем, чтобы получить первый элемент, я использую tasklist[0].Однако я не могу получить оттуда историю рабочего процесса, спасибо.

Мелвин

Ответ №1:

Пожалуйста, взгляните на различные руководства по рабочему процессуhttps://www.google.com/search ?q= sharepoint 2010 workflow tutorial c#

Вам нужно будет получить рабочий процесс для вашего элемента списка через SPListItem.Workflows . Как только вы получите правильный результат SPWorkflow из возвращенного SPWorkflowCollection , вы можете получить связанный список истории и список задач с помощью HistoryListId и TaskListId свойств (см. Документ SPWorkflow).

Итак, в принципе, что-то вроде этого должно работать:

 SPListItem item = tasklist[0];
SPWorkflow workflow = item.Workflows[0];
SPList historyList = workflow.HistoryList;
SPList taskList = workflow.TaskList;
  

Однако этот код в значительной степени отстой, поэтому просто используйте его в качестве отправной точки, также вам не следует использовать [0], но получите рабочий процесс, который вы действительно хотите (например, зная его название).