Вход | Регистрация


Бизнес процесс "Исполнение" в конфигурации Документооборот

Бизнес процесс "Исполнение" в конфигурации Документооборот
Я
   TolstiyBeremenniy
 
22.11.18 - 12:48
Есть документ Заявка.
Заявка создается постановщиком и адресуется Адресату.
Адресат адресует заявку Исполнителю и создает бизнес процесс
по кнопке командной панели формы документа.

Исполнитель видит бизнес процесс в списке мои задачи.
И исполняет его по кнопке исполнить. В результате чего
меняется статус у документа заявка, на завершена.

Нормальная ли такая реализация? Встраивание в типовой бизнес процесс?
То есть адресация исполнителю и его исполнение.

Вопрос возник. так как это ещё не очень все отлажено и
протестировано. И так же посмотрел карту БИ Исполнение.
Там много разных блоков и ветвлений!!!

Процедура создание БП с формы документа:


//

&НаСервере
Процедура СоздатьБПНаСервере()
    //

    БП                                           = БизнесПроцессы.Исполнение.СоздатьБизнесПроцесс();
    БП.Дата                                      = ТекущаяДата();
    //

    БП.Важность                                  = Перечисления.ВариантыВажностиЗадачи.Обычная;
    БП.ВариантИсполнения                         = Перечисления.ВариантыМаршрутизацииЗадач.Последовательно;
    БП.ВариантУстановкиСрокаОбработкиРезультатов = Перечисления.ВариантыУстановкиСрокаИсполнения.ОтносительныйСрок;
    //

    БП.Наименование                              = "Заявка управлению информатизации и связи";
    БП.Описание                                  = Объект.ОписаниеЗаявки;
    //

    // ТАБЛИЧНАЯ ЧАСТЬ ПРЕДМЕТЫ

    СтрокаПредметы                               = БП.Предметы.Добавить();
    СтрокаПредметы.ИмяПредмета                   = Справочники.ИменаПредметов.НайтиПоНаименованию("LS_ЗаявкаУИиС");
    //СтрокаПредметы.ИсходноеИмяПредмета           = Справочники.ИменаПредметов.НайтиПоНаименованию("LS_ЗаявкаУИиС");

    //СтрокаПредметы.ИмяПредметаОснование =

    //СтрокаПредметы.Описание                      = СТРОКА(Объект.Ссылка);

    СтрокаПредметы.Предмет                       = Объект.Ссылка;
    СтрокаПредметы.РольПредмета                  = Перечисления.РолиПредметов.Вспомогательный;
    // ТАБЛИЧНАЯ ЧАСТЬ ИСПОЛНИТЕЛИ

    Если ЗначениеЗаполнено(Объект.Адресат) И Не ЗначениеЗаполнено(Объект.Исполнитель) Тогда
        СтрокаИсполнители                       = БП.Исполнители.Добавить();
        СтрокаИсполнители.Исполнитель         = Объект.Адресат;
        СтрокаИсполнители.ПорядокИсполнения   = Перечисления.ПорядокВыполненияЗадач.ВместеСПредыдущим;
        //

        СтрокаИсполнители.Пройден             = Ложь;
        СтрокаИсполнители.Ответственный       = Ложь;
        //СтрокаИсполнители.СрокИсполненияИстек = Ложь;

        //СтрокаИсполнители.Шаг                 = 1;

        //

        //СтрокаИсполнители.СрокИсполнения    = Объект.Дата;

        // - //

        БП.Проверяющий                          = Объект.Подготовил;
        БП.Контролер                            = Объект.Подготовил;
    ИначеЕсли ЗначениеЗаполнено(Объект.Адресат) И ЗначениеЗаполнено(Объект.Исполнитель) Тогда    
        СтрокаИсполнители                       = БП.Исполнители.Добавить();
        СтрокаИсполнители.Исполнитель         = Объект.Исполнитель;
        СтрокаИсполнители.ПорядокИсполнения   = Перечисления.ПорядокВыполненияЗадач.ВместеСПредыдущим;
        //

        СтрокаИсполнители.Пройден             = Ложь;
        СтрокаИсполнители.Ответственный       = Ложь;
        //СтрокаИсполнители.СрокИсполненияИстек = Ложь;

        //СтрокаИсполнители.Шаг                 = 2;

        //

        //СтрокаИсполнители.СрокИсполнения    = Объект.Дата;

        // - //

        БП.Проверяющий                          = Объект.Адресат;
        БП.Контролер                            = Объект.Подготовил;
    КонецЕсли;
    // ТАБЛИЧНАЯ ЧАСТЬ ПРЕДМЕТЫ ЗАДАЧ

    СтрокаПредметыЗадач               = БП.ПредметыЗадач.Добавить();
    СтрокаПредметыЗадач.ИмяПредмета   = Справочники.ИменаПредметов.НайтиПоНаименованию("ЗаявкаУИиС");
    СтрокаПредметыЗадач.ТочкаМаршрута = БизнесПроцессы.Исполнение.ТочкиМаршрута.ОтветственноеИсполнение;
    //

    СтрокаПредметыЗадач               = БП.ПредметыЗадач.Добавить();
    СтрокаПредметыЗадач.ИмяПредмета   = Справочники.ИменаПредметов.НайтиПоНаименованию("ЗаявкаУИиС");
    СтрокаПредметыЗадач.ТочкаМаршрута = БизнесПроцессы.Исполнение.ТочкиМаршрута.Исполнить;
    //

    СтрокаПредметыЗадач               = БП.ПредметыЗадач.Добавить();
    СтрокаПредметыЗадач.ИмяПредмета   = Справочники.ИменаПредметов.НайтиПоНаименованию("ЗаявкаУИиС");
    СтрокаПредметыЗадач.ТочкаМаршрута = БизнесПроцессы.Исполнение.ТочкиМаршрута.Контролировать;
    //

    СтрокаПредметыЗадач               = БП.ПредметыЗадач.Добавить();
    СтрокаПредметыЗадач.ИмяПредмета   = Справочники.ИменаПредметов.НайтиПоНаименованию("ЗаявкаУИиС");
    СтрокаПредметыЗадач.ТочкаМаршрута = БизнесПроцессы.Исполнение.ТочкиМаршрута.Проверить;
    //

    
    БП.СрокОбработкиРезультатов       = Объект.Дата;
    БП.КоличествоИтераций             = 1;
    //

    БП.Автор                          = ПараметрыСеанса.ТекущийПользователь;
    БП.Записать();
    БП.Старт();
    //

    Объект.БП = БП.Ссылка;
    Записать();
КонецПроцедуры
//
 
 

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует