БизнесПроцессыГлавнойЗадачи (БСП)

Автор: 1С
ОбщийМодуль.БизнесПроцессыИЗадачиСервер
БСП

Бизнес процессы главной задачи. Возвращает массив подчиненных указанной задаче бизнес-процессов.

// Возвращает массив подчиненных указанной задаче бизнес-процессов.
//
// Параметры:
//  ЗадачаСсылка  - ЗадачаСсылка.ЗадачаИсполнителя - задача.
//  ДляИзменения  - Булево - если Истина, то следует установить исключительную управляемую блокировку 
//                           на все бизнес-процессы, подчиненные указанной задаче. По умолчанию, Ложь.
//
// Возвращаемое значение:
//   Массив - ссылки на бизнес-процессы (БизнесПроцессСсылка.<Имя бизнес-процесса>).
//
Функция БизнесПроцессыГлавнойЗадачи(ЗадачаСсылка, ДляИзменения = Ложь) Экспорт
	
	Результат = Новый Массив;
	Для Каждого МетаданныеБизнесПроцесса Из Метаданные.БизнесПроцессы Цикл
		
		// У бизнес-процесса может и не быть главной задачи.
		РеквизитГлавнаяЗадача = МетаданныеБизнесПроцесса.Реквизиты.Найти("ГлавнаяЗадача");
		Если РеквизитГлавнаяЗадача = Неопределено Тогда
			Продолжить;
		КонецЕсли;	
			
		Если ДляИзменения Тогда
			Блокировка = Новый БлокировкаДанных;
			ЭлементБлокировки = Блокировка.Добавить(МетаданныеБизнесПроцесса.ПолноеИмя());
			ЭлементБлокировки.УстановитьЗначение("ГлавнаяЗадача", ЗадачаСсылка);
			Блокировка.Заблокировать();
		КонецЕсли;
		
		ТекстЗапроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
			"ВЫБРАТЬ РАЗРЕШЕННЫЕ
			|	%1.Ссылка КАК Ссылка
			|ИЗ
			|	%2 КАК %1
			|ГДЕ
			|	%1.ГлавнаяЗадача = &ГлавнаяЗадача", 
			МетаданныеБизнесПроцесса.Имя, МетаданныеБизнесПроцесса.ПолноеИмя());
		Запрос = Новый Запрос(ТекстЗапроса);
		Запрос.УстановитьПараметр("ГлавнаяЗадача", ЗадачаСсылка);
		
		РезультатЗапроса = Запрос.Выполнить();
		Выборка = РезультатЗапроса.Выбрать();
		Пока Выборка.Следующий() Цикл
			Результат.Добавить(Выборка.Ссылка);
		КонецЦикла;
			
	КонецЦикла;	
	
	Возврат Результат;
		
КонецФункции

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

ЗаполнитьГлавнуюЗадачу (БСП)

ПриЗаполненииГлавнойЗадачиБизнесПроцесса (БСП)

ВыбратьБизнесПроцессыВедущейЗадачи (БСП)

БизнесПроцессыВедущейЗадачи (БСП)

КоличествоНевыполненныхЗадачБизнесПроцессов (БСП)

КоличествоНевыполненныхЗадачБизнесПроцесса (БСП)

ПриПометкеУдаленияЗадачи (БСП)

УстановитьПометкуУдаленияЗадач (БСП)

ОткрытьБизнесПроцесс (БСП)

Обновлятор-1С: групповое (пакетное) обновление и обслуживание всех баз за один раз