#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], но получите рабочий процесс, который вы действительно хотите (например, зная его название).