ФормаЗадачиПриСозданииНаСервере (БСП)

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

Форма задачи при создании на сервере. Инициализирует общие параметры формы выполнения задачи.

// Инициализирует общие параметры формы выполнения задачи.
//
// Параметры:
//  ФормаЗадачи            - ФормаКлиентскогоПриложения - форма выполнения задачи.
//  ЗадачаОбъект           - ЗадачаОбъект     - объект задачи.
//  ЭлементГруппаСостояние - ГруппаФормы      - группа с информации о состоянии задачи.
//  ЭлементДатаИсполнения  - ПолеФормы        - поле с датой исполнения задачи.
//
Процедура ФормаЗадачиПриСозданииНаСервере(ФормаЗадачи, ЗадачаОбъект, 
	ЭлементГруппаСостояние, ЭлементДатаИсполнения) Экспорт
	
	ФормаЗадачи.ТолькоПросмотр = ЗадачаОбъект.Выполнена;

	Если ЗадачаОбъект.Выполнена Тогда
		Если ЭлементГруппаСостояние <> Неопределено Тогда
			ЭлементГруппаСостояние.Видимость = Истина;
		КонецЕсли;
		Родитель = ?(ЭлементГруппаСостояние <> Неопределено, ЭлементГруппаСостояние, ФормаЗадачи);
		Элемент = ФормаЗадачи.Элементы.Найти("__СостояниеЗадачиКартинка");
		Если Элемент = Неопределено Тогда
			Элемент = ФормаЗадачи.Элементы.Добавить("__СостояниеЗадачиКартинка", Тип("ДекорацияФормы"), Родитель);
			Элемент.Вид = ВидДекорацииФормы.Картинка;
			Элемент.Картинка = БиблиотекаКартинок.Информация;
		КонецЕсли;
		
		Элемент = ФормаЗадачи.Элементы.Найти("__СостояниеЗадачи");
		Если Элемент = Неопределено Тогда
			Элемент = ФормаЗадачи.Элементы.Добавить("__СостояниеЗадачи", Тип("ДекорацияФормы"), Родитель);
			Элемент.Вид = ВидДекорацииФормы.Надпись;
			Элемент.Высота = 0; // автовысота
			Элемент.АвтоМаксимальнаяШирина = Ложь;
		КонецЕсли;
		ИспользоватьДатуИВремяВСрокахЗадач = ПолучитьФункциональнуюОпцию("ИспользоватьДатуИВремяВСрокахЗадач");
		ДатаИсполненияСтрокой = ?(ИспользоватьДатуИВремяВСрокахЗадач, 
			Формат(ЗадачаОбъект.ДатаИсполнения, "ДЛФ=DT"), Формат(ЗадачаОбъект.ДатаИсполнения, "ДЛФ=D"));
		Элемент.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru ='Задача выполнена %1 пользователем %2.'"),
			ДатаИсполненияСтрокой, 
			ИсполнительСтрокой(ЗадачаОбъект.Исполнитель, ЗадачаОбъект.РольИсполнителя,
			ЗадачаОбъект.ОсновнойОбъектАдресации, ЗадачаОбъект.ДополнительныйОбъектАдресации));
	КонецЕсли;
	
	Если БизнесПроцессыИЗадачиВызовСервера.ЭтоВедущаяЗадача(ЗадачаОбъект.Ссылка) Тогда
		Если ЭлементГруппаСостояние <> Неопределено Тогда
			ЭлементГруппаСостояние.Видимость = Истина;
		КонецЕсли;
		Родитель = ?(ЭлементГруппаСостояние <> Неопределено, ЭлементГруппаСостояние, ФормаЗадачи);
		Элемент = ФормаЗадачи.Элементы.Найти("__ВедущаяЗадачаКартинка");
		Если Элемент = Неопределено Тогда
			Элемент = ФормаЗадачи.Элементы.Добавить("__ВедущаяЗадачаКартинка", Тип("ДекорацияФормы"), Родитель);
			Элемент.Вид = ВидДекорацииФормы.Картинка;
			Элемент.Картинка = БиблиотекаКартинок.Информация;
		КонецЕсли;
		
		Элемент = ФормаЗадачи.Элементы.Найти("__ВедущаяЗадача");
		Если Элемент = Неопределено Тогда
			Элемент = ФормаЗадачи.Элементы.Добавить("__ВедущаяЗадача", Тип("ДекорацияФормы"), Родитель);
			Элемент.Вид = ВидДекорацииФормы.Надпись;
			Элемент.Заголовок = НСтр("ru ='Это ведущая задача для вложенных бизнес-процессов. Она будет выполнена автоматически при их завершении.'");
			Элемент.Высота = 0; // автовысота
			Элемент.АвтоМаксимальнаяШирина = Ложь;
		КонецЕсли;
	КонецЕсли;
	
КонецПроцедуры

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

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

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

УстановитьОформлениеЗадач (БСП)

ПриСозданииНаСервере (БСП)

ФормаЭлементаПриСозданииНаСервере (БСП)

УстановитьОформлениеБизнесПроцессов (БСП)

ОбслуживаниеПриСозданииНаСервере (БСП)

ОбщиеНастройкиПриСозданииНаСервере (БСП)

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