|
Программно запустить процесс внутреннего документа Документооборот КОРП | ☑ | ||
---|---|---|---|---|
0
skupidom
07.03.19
✎
08:19
|
Коллеги, при записи процесса ошибка и процесс не стартует, в чем ошибки?
НовыйУведомлениеОбОтпуске = Справочники.ВнутренниеДокументы.СоздатьЭлемент(); НовыйУведомлениеОбОтпуске.ВидДокумента = Справочники.ВидыВнутреннихДокументов.НайтиПоНаименованию("Уведомление об отпуске"); ШаблонУведомленияОбОтпуске = Справочники.ШаблоныВнутреннихДокументов.НайтиПоНаименованию("Уведомление об отпуске"); НовыйУведомлениеОбОтпуске.Шаблон = ШаблонУведомленияОбОтпуске; НовыйУведомлениеОбОтпуске.Ответственный = СотрудникКадров; //НовыйУведомлениеОбОтпуске.Подготовил = СотрудникКадров; НовыйУведомлениеОбОтпуске.Утвердил = СотрудникКадров; НовыйУведомлениеОбОтпуске.Подразделение = ПодразделениеКадры; //ШаблонУведомленияОбОтпуске.Адресат = ВыборкаОтсутствия.Сотрудник; ПравоРегистрировать = Истина; ФИОСотрудник = РазложитьСтрокуВМассивПодстрок(СОКРЛП(Строка(ВыборкаОтсутствия.Сотрудник))); НовыйУведомлениеОбОтпуске.Содержание = СодержаниеДок; // зарегистрируем документ //Нумератор = Нумерация.ПолучитьНумераторДокумента(НовыйУведомлениеОбОтпуске); НовыйУведомлениеОбОтпуске.ДатаРегистрации = ТекущаяДата(); НовыйУведомлениеОбОтпуске.ДатаСоздания = ТекущаяДата(); НовыйУведомлениеОбОтпуске.Создал = СотрудникКадров; // даты отпуска НовыйУведомлениеОбОтпуске.барк_ДатаНачалаОтпуска = ВыборкаОтсутствия.ДатаНачала; НовыйУведомлениеОбОтпуске.барк_ДатаОкончанияОтпуска = ВыборкаОтсутствия.ДатаОкончания; НовыйУведомлениеОбОтпуске.Записать(); // Запустим БП БПНовыйУведомлениеОбОтпуске = БизнесПроцессы.КомплексныйПроцесс.СоздатьБизнесПроцесс(); БПНовыйУведомлениеОбОтпуске.Автор = СотрудникКадров; БПНовыйУведомлениеОбОтпуске.Важность = Перечисления.ВариантыВажностиЗадачи.Обычная; ШаблонКомплексный = Справочники.ШаблоныКомплексныхБизнесПроцессов.НайтиПоНаименованию("Уведомление об отпуске"); БПНовыйУведомлениеОбОтпуске.Шаблон = ШаблонКомплексный; БПНовыйУведомлениеОбОтпуске.ДатаНачала = ТекущаяДата(); БПНовыйУведомлениеОбОтпуске.Дата = ТекущаяДатаСеанса(); БПНовыйУведомлениеОбОтпуске.Наименование = "Обработка документа "+(НовыйУведомлениеОбОтпуске.ссылка)+" ТЕСТ"; БПНовыйУведомлениеОбОтпуске.Описание = "Обработка документа "+(НовыйУведомлениеОбОтпуске.ссылка)+" ТЕСТ"; БПНовыйУведомлениеОбОтпуске.Состояние = Перечисления.СостоянияБизнесПроцессов.Активен; БПНовыйУведомлениеОбОтпуске.ВариантМаршрутизации = ПредопределенноеЗначение("Перечисление.ВариантыМаршрутизацииЗадач.Последовательно"); БПНовыйУведомлениеОбОтпуске.СрокИсполненияПроцесса = ТекущаяДата() + 60*60*24; //Мультипредметность.ПередатьПредметыПроцессу(БПНовыйУведомлениеОбОтпуске,НовыйУведомлениеОбОтпуске.Ссылка,Ложь,Истина); // тч Предмет НоваяСтрПредметы = БПНовыйУведомлениеОбОтпуске.Предметы.Добавить(); НоваяСтрПредметы.ИмяПредмета = Справочники.ИменаПредметов.НайтиПоНаименованию("Уведомление об отпуске"); НоваяСтрПредметы.Предмет = НовыйУведомлениеОбОтпуске.Ссылка; // тч Этапы НоваяСтрЭтапы = БПНовыйУведомлениеОбОтпуске.Этапы.Добавить(); НоваяСтрЭтапы.БезусловныйПереходКСледующемуБылВыполнен = Ложь; НоваяСтрЭтапы.ЗадачаВыполнена = Ложь; БПНовыйУведомлениеОбОтпуске.Записать(); НоваяСтрЭтапы.ЗадачаВыполнена = Ложь; НоваяСтрЭтапы.ЗапущенныйБизнесПроцесс = БПНовыйУведомлениеОбОтпуске.Ссылка; НоваяСтрЭтапы.ИсполнителиЭтапаСтрокой = "Уведомление об отпуске.Автор документа, Отдел кадров"; НоваяСтрЭтапы.ПорядокСортировки = 1; НоваяСтрЭтапы.ПредшественникиВариантИспользования = "ВсеПредшественники"; НоваяСтрЭтапы.ПредшественникиЭтапаСтрокой = "При старте процесса"; НоваяСтрЭтапы.ШаблонБизнесПроцесса = Справочники.ШаблоныОзнакомления.НайтиПоКоду("00-00000000000000000000000000000000000000000013322"); НоваяСтрЭтапы = БПНовыйУведомлениеОбОтпуске.Этапы.Добавить(); НоваяСтрЭтапы.БезусловныйПереходКСледующемуБылВыполнен = Ложь; НоваяСтрЭтапы.ЗадачаВыполнена = Ложь; НоваяСтрЭтапы.ЗапущенныйБизнесПроцесс = БПНовыйУведомлениеОбОтпуске.Ссылка; НоваяСтрЭтапы.ИсполнителиЭтапаСтрокой = "Уведомление об отпуске.Непосредственный руководитель автора документа, Уведомление об отпуске.Руководитель департамента"; НоваяСтрЭтапы.ПорядокСортировки = 2; НоваяСтрЭтапы.ПредшественникиВариантИспользования = "ВсеПредшественники"; НоваяСтрЭтапы.ПредшественникиЭтапаСтрокой = "После завершения 1"; НоваяСтрЭтапы.ШаблонБизнесПроцесса = Справочники.ШаблоныСогласования.НайтиПоКоду("00-00000000000000000000000000000000000000000013208"); БПНовыйУведомлениеОбОтпуске.Записать(); БПНовыйУведомлениеОбОтпуске.Старт(); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |