ВыполнитьЗадачу (БСП)

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

Выполнить задачу. Выполнить задачу ЗадачаСсылка, при необходимости выполнив обработчик.

// Выполнить задачу ЗадачаСсылка, при необходимости выполнив обработчик.
//  ОбработкаВыполненияПоУмолчанию модуля менеджера бизнес-процесса,
//  к которому относится задача ЗадачаСсылка.
//
// Параметры:
//  ЗадачаСсылка        - ЗадачаСсылка - ссылка на задачу.
//  ДействиеПоУмолчанию - Булево        -Признак необходимости вызова процедуры 
//                                       ОбработкаВыполненияПоУмолчанию у бизнес-процесса задачи.
//
Процедура ВыполнитьЗадачу(ЗадачаСсылка, ДействиеПоУмолчанию = Ложь) Экспорт

	НачатьТранзакцию();
	Попытка
		БизнесПроцессыИЗадачиСервер.ЗаблокироватьЗадачи(ЗадачаСсылка);
		
		ЗадачаОбъект = ЗадачаСсылка.ПолучитьОбъект();
		Если ЗадачаОбъект.Выполнена Тогда
			ВызватьИсключение НСтр("ru = 'Задача уже была выполнена ранее.'");
		КонецЕсли;
		
		Если ДействиеПоУмолчанию И ЗадачаОбъект.БизнесПроцесс <> Неопределено 
			И НЕ ЗадачаОбъект.БизнесПроцесс.Пустая() Тогда
			ТипБизнесПроцесса = ЗадачаОбъект.БизнесПроцесс.Метаданные();
			БизнесПроцессы[ТипБизнесПроцесса.Имя].ОбработкаВыполненияПоУмолчанию(ЗадачаСсылка,
				ЗадачаОбъект.БизнесПроцесс, ЗадачаОбъект.ТочкаМаршрута);
		КонецЕсли;
			
		ЗадачаОбъект.Выполнена = Ложь;
		ЗадачаОбъект.ВыполнитьЗадачу();
		ЗафиксироватьТранзакцию();
	Исключение
		ОтменитьТранзакцию();
		ВызватьИсключение;
	КонецПопытки;

КонецПроцедуры

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

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

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

ЗаписатьИЗакрытьВыполнить (БСП)

ВыполнитьЗадачиМониторингаЦКК (БСП)

Сравнение двух массивов

Сгибы листка (задача с собеседования)

ПроконтролироватьЗадачи (БСП)

ОткрытьПредметЗадачи (БСП)

ПеренаправитьЗадачиЗавершение (БСП)

ПринятьЗадачиКИсполнению (БСП)

ЭтоВедущаяЗадача (БСП)

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