Форма задачи при создании на сервере. Инициализирует общие параметры формы выполнения задачи.
// Инициализирует общие параметры формы выполнения задачи.
//
// Параметры:
// ФормаЗадачи - ФормаКлиентскогоПриложения - форма выполнения задачи.
// ЗадачаОбъект - ЗадачаОбъект - объект задачи.
// ЭлементГруппаСостояние - ГруппаФормы - группа с информации о состоянии задачи.
// ЭлементДатаИсполнения - ПолеФормы - поле с датой исполнения задачи.
//
Процедура ФормаЗадачиПриСозданииНаСервере(ФормаЗадачи, ЗадачаОбъект,
ЭлементГруппаСостояние, ЭлементДатаИсполнения) Экспорт
ФормаЗадачи.ТолькоПросмотр = ЗадачаОбъект.Выполнена;
Если ЗадачаОбъект.Выполнена Тогда
Если ЭлементГруппаСостояние <> Неопределено Тогда
ЭлементГруппаСостояние.Видимость = Истина;
КонецЕсли;
Родитель = ?(ЭлементГруппаСостояние <> Неопределено, ЭлементГруппаСостояние, ФормаЗадачи);
Элемент = ФормаЗадачи.Элементы.Найти("__СостояниеЗадачиКартинка");
Если Элемент = Неопределено Тогда
Элемент = ФормаЗадачи.Элементы.Добавить("__СостояниеЗадачиКартинка", Тип("ДекорацияФормы"), Родитель);
Элемент.Вид = ВидДекорацииФормы.Картинка;
Элемент.Картинка = БиблиотекаКартинок.Информация;
КонецЕсли;
Элемент = ФормаЗадачи.Элементы.Найти("__СостояниеЗадачи");
Если Элемент = Неопределено Тогда
Элемент = ФормаЗадачи.Элементы.Добавить("__СостояниеЗадачи", Тип("ДекорацияФормы"), Родитель);
Элемент.Вид = ВидДекорацииФормы.Надпись;
Элемент.Высота = 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
///////////////////////////////////////////////////////////////////////////////////////////////////////
УстановитьОформлениеЗадач (БСП)
ФормаЭлементаПриСозданииНаСервере (БСП)
УстановитьОформлениеБизнесПроцессов (БСП)