1. Vitaly1C8 12.12.16 12:18 Сейчас в теме

Стартовать бизнес процесс программно

Добрый день ! Будьте добры, покажите простой пример - как стартовать Бизнес процесс (самый простой "Исполнение") программно !
Искал в инете, простого и понятного примера так и не нашел. Показывают как это делать из интерфейса, либо рассуждают о точках маршрута ... вода в общем.
Заранее благодарен !
Ответы
Избранное Подписка Сортировка: Древо
2. fromtomike 28 12.12.16 12:51 Сейчас в теме
Есть же в СП:

БизнесПроцессОбъект.<Имя бизнес-процесса> (BusinessProcessObject.<Имя бизнес-процесса>)
Старт (Start)
Синтаксис:

Старт(<ТочкаМаршрутаБизнес-процесса>)
Параметры:

<ТочкаМаршрутаБизнес-процесса> (необязательный)

Тип: ТочкаМаршрутаБизнесПроцессаСсылка.
Точка маршрута бизнес-процесса, на которой выполняется старт бизнес-процесса. У карты маршрута бизнес-процесса может быть несколько точек старта. В этом случае указание параметра обязательно.
Описание:

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

Доступность:

Сервер, толстый клиент, внешнее соединение.
Примечание:

Если у бизнес-процесса всего одна точка старта, то указывать ее не обязательно.
Пример:

БизнесПроцесс = БизнесПроцессы.РегистрацияКорреспонденции;
// Бизнес-процесс имеет только одну точку старта, поэтому не указываем ее

БизнесПроцесс.Старт();

...
3. Vitaly1C8 12.12.16 14:20 Сейчас в теме
Нужен пример. Как создаются задачи исполнителей и т.д.
4. le0nid 12.12.16 14:45 Сейчас в теме
Если в Документообороте, то стоит копать в сторону готовых функций - ЗаполнитьПоШаблону/ЗаполнитьПоШаблонуИПредмету/ЗаполнитьПоРа­ссмотрению и.т.д., которые в модуле объекта (бизнес-процесса).

Например:

Бп = бизнеспроцессы.КомплексныйПроцесс.СоздатьБизнесПроцесс();
Бп.ЗаполнитьПоШаблонуИПредмету(справочники.ШаблоныКомплексныхБизнесПроцессов.НайтиПоКоду("000000068"),          ПредметСсылка,Справочники.Пользователи.НайтиПоНаименованию("Пользователь"));
Бп.Наименование ="Судебное дело " + Предметссылка.заголовок;
Бп.Дата=датаСтарта;	
Бп.Записать();
Бп.Старт();
NRG; Vitaly1C8; +2 Ответить
5. ImHunter 21 12.12.16 14:48 Сейчас в теме
Если говорить про штатный механизм платформы, то задачи сами создаются при приходе БП в точку действия.
То бишь, после старта, чего-то делать с БП более не нужно. Он сам и должен задачи создавать и двигаться выполнением задач к финишу.
Vitaly1C8; +1 Ответить
6. Vitaly1C8 12.12.16 17:34 Сейчас в теме
Спасибо за советы ! Получился такой код:
Бп = БизнесПроцессы.Исполнение.СоздатьБизнесПроцесс();
	Бп.Дата = ТекущаяДатаСеанса();
	Бп.Важность = Перечисления.ВариантыВажностиЗадачи.Обычная;
	Бп.НомерИтерации = 0;
	Бп.Проверяющий = ПользователиКлиентСервер.ТекущийПользователь();
	Бп.ВариантИсполнения = Перечисления.ВариантыМаршрутизацииЗадач.Параллельно;		
	
	Бп.Автор = ПользователиКлиентСервер.ТекущийПользователь();	
	Бп.Проект = РаботаСПроектами.ПолучитьПроектПоУмолчанию();
	
	Мультипредметность.ПередатьПредметыПроцессу(Бп, Объект.Предмет, Ложь, Истина);
	
	// Для Каждого Исполнитель ИЗ ДанныеЗаполнения.Исполнители Цикл
		Строка = Бп.Исполнители.Добавить();
		Строка.Исполнитель = ПользователиКлиентСервер.ТекущийПользователь();
	// КонецЦикла;		
	
	МультипредметностьКлиентСервер.ЗаполнитьНаименованиеПроцесса(Бп, НСтр("ru = 'Исполнить'"));
	Бп.Записать();
	Бп.Старт();
Показать
damnation1981; +1 Ответить
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Консультант-аналитик 1С
Санкт-Петербург
Полный день

Консультант-аналитик 1С
Москва
зарплата от 120 000 руб. до 120 000 руб.
Полный день

Удаленный ИТ-журналист
Санкт-Петербург
По совместительству

Программист 1С
Санкт-Петербург
зарплата от 100 000 руб.
Полный день

Программист 1С
Санкт-Петербург
зарплата от 100 000 руб.
Полный день