none
SPWorkflow: Как получить список всех участников рабочего процесса? RRS feed

  • Общие обсуждения

  • Здравствуйте. Столкнулся с проблемой. Надо из C# получить список всех участников определенного рабочего процесса. Причем тех кто уже выполнил задачу процесса, и тех кому это ещё предстоит.

    Сделал так:

    SPSite site = new SPSite("http://portal/projects");
    SPWeb web = site.OpenWeb();
    SPList list = web.Lists["Справочник проектов"];
    
    SPListItem item = list.GetItemById(4613);
    
    SPWorkflow wf = item.Workflows[0];            
    Console.WriteLine(wf.Xml);
    
    

    Но проблема в том, что в XML только те участники кому ещё НЕ пришла задача. Те люди, которые уже выполнили задачу, в XML не попадают.

    Подскажите, в какую сторону копать?

    31 октября 2019 г. 10:00

Все ответы

  • Workflow 2010 или 2013?

    Как вариант можно создать столбец куда добавлять информацию по всем участникам процесса тем же самым Workflow, а потом GetListitem и смотреть в это значение. 

    1 ноября 2019 г. 7:30
  • Михаил, спасибо за ответ.
    А в столбец участников рабочего процесса писать из самого рабочего процесса? Без программирования?
    1 ноября 2019 г. 9:56
  • Михаил, спасибо за ответ.
    А в столбец участников рабочего процесса писать из самого рабочего процесса? Без программирования?
    Ну вы же можете в Workflow присваивать значения элементам, шаг 1 = Иванов, шаг 2 = Иванов, Петров и т.д. 
    1 ноября 2019 г. 11:25
  • Михаил, да я так и думал, но почему то, когда в SPD выбираю действие "Задать поле в текущем элементе", из всех полей мне доступно только "Название".

    Тем не менее, если выбрать "Запись в журнал", то доступны все поля и записывать могу, но только в лог (что совсем не актуально для меня).

    Михаил, подскажите, что сделать, чтобы было доступно не только название??

    5 ноября 2019 г. 4:47
  • Михаил, да я так и думал, но почему то, когда в SPD выбираю действие "Задать поле в текущем элементе", из всех полей мне доступно только "Название".

    Тем не менее, если выбрать "Запись в журнал", то доступны все поля и записывать могу, но только в лог (что совсем не актуально для меня).

    Михаил, подскажите, что сделать, чтобы было доступно не только название??

    Странное поведение, надо разбираться, попробуйте действие "Обновить элемент в списке".

    5 ноября 2019 г. 8:31
  • Михаил, то же самое. Я думаю дело в том, что это не рабочий процесс списка, а всего сайта. Хотя могу ошибаться.
    5 ноября 2019 г. 8:49
  • Михаил, то же самое. Я думаю дело в том, что это не рабочий процесс списка, а всего сайта. Хотя могу ошибаться.
    Да возможно, иногда такое поведение характерно и для Custom Columns созданных в Visual studio. 
    5 ноября 2019 г. 8:55