Как работать с согласованием и передачей на подпись
Согласования, запросы согласования или подписи можно делать с помощью PatchTask, который создаётся методом Box.CreatePatchTask()
.
Пример
В примере ниже выбираются документы для согласования (про возможности получения документов см. Как получить список документов) и передаются случайному сотруднику, который по каким-то причинам оказался под номером 1 в списке сотрудников.
Другие действия согласования отличаются только вторым аргументом PatchTask.AddToPatch()
и создаваемым для заполнения объектом
Процедура ДобавитьЗапросСогласованияСотруднику(dd_PatchTask, ДокументИлиДокументы, dd_Employee)
КоллекцияЗапросовНаОтправку = dd_PatchTask.AddToPatch(ДокументИлиДокументы, "Approve");
Для Каждого dd_ApprovementRequestToSend Из КоллекцияЗапросовНаОтправку Цикл
dd_ApprovementRequestToSend.Comment = "Согласуйте документ, пожалуйста";
dd_ApprovementRequestToSend.TargetUserId = dd_Employee.User.Id;
КонецЦикла;
КонецПроцедуры
Процедура ЗапроситьСогласованиеДокументаУСотрудника(dd_Box)
dd_DocumentBase_Collection = ПолучитьДокументДляСогласования(dd_Box);
dd_Employee = dd_Box.GetEmployees().GetItem(0);
dd_PatchTask = dd_Box.CreatePatchTask();
ДобавитьЗапросСогласованияСотруднику(dd_PatchTask, dd_DocumentBase_Collection, dd_Employee);
РезультатОтпраки = dd_PatchTask.Send();
КонецПроцедуры
См.также
HowTo_reply_document