none
Запуск РП2010 из РП2013 в другом списке RRS feed

  • Вопрос

  • Все доброго дня!

    Работаю в SPD2010 c рабочими процессами на платформе 2010 и 2013. Кодировка мне не по силам, поэтому управляю процессами в стандартном конструкторе SPD.

    Есть Список1 и Список2.  В Списке1 встроен РП2013, который обрабатывает записи при создании или изменении. В этом же Списке1 есть РП2010, которые запускается  из РП2013 при определенных условиях и создает в Списке 1 новую запись с определенными значениями полей. Эта часть работает без замечаний. Т.е. оба  РП принадлежат одному Списку1.

    Но есть потребность запускать РП2010 в Списке1 из стороннего РП в Списке2 с целью создания тоже новой записи с определенными значениями полей. Так вот из стороннего списка РП2010 в Списке1 не хочет запускаться. Выдает ошибку :

    RequestorId: 5172ea7e-8465-c93b-0000-000000000000. Details: An unhandled exception occurred during the execution of the workflow instance. Exception details: System.ApplicationException: HTTP 400 {"error":{"code":"-2147024809, System.ArgumentException","message":{"lang":"ru-RU","value":"associationName"}}} {"Transfer-Encoding":["chunked"],"X-SharePointHealthScore":["0"],"SPClientServiceRequestDuration":["97"],"SPRequestGuid":["5172ea7e-8465-c93b-9303-df6e94375fc7"],"request-id":["5172ea7e-8465-c93b-9303-df6e94375fc7"],"X-FRAME-OPTIONS":["SAMEORIGIN"],"MicrosoftSharePointTeamServices":["15.0.0.4569"],"X-Content-Type-Options":["nosniff"],"X-MS-InvokeApp":["1; RequireReadOnly"],"Cache-Control":["max-age=0, private"],"Date":["Mon, 12 Sep 2016 07:09:42 GMT"],"Server":["Microsoft-IIS\/8.5"],"X-AspNet-Version":["4.0.30319"],"X-Powered-By":["ASP.NET"]} at Microsoft.Activities.Hosting.Runtime.Subroutine.SubroutineChild.Execute(CodeActivityContext context) at System.Activities.CodeActivity.InternalExecute(ActivityInstance instance, ActivityExecutor executor, BookmarkManager bookmarkManager) at System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation)

    Я протестировал на нескольких списках и выявил, что проблема именно в том, что РП2010 запускается из стороннего списка. 

    РП2010 создан как рабочий процесс списка.

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

    Ну, в общем, прошу помочь советом, как из одного списка запустить РП в другом списке

    13 сентября 2016 г. 8:26

Ответы

  • Добрый день!

    А вы не пробовали создать рабочий процесс не для списка, а для сайта. Далее вызывать этот процесс и при помощи этого процесса создавать запись?

    • Помечено в качестве ответа NeAlVl 13 сентября 2016 г. 14:33
    13 сентября 2016 г. 10:13

Все ответы