Разместить группу индикатора ошибки. Размещает группу индикатора ошибок в форме.
// Размещает группу индикатора ошибок в форме.
//
// Параметры:
// ФормаКлиентскогоПриложения - ФормаКлиентскогоПриложения - Форма объекта на которой нужно разместить группу индикатора.
// КлючУникальностиИмен - Строка - Строковый ключ уникальности добавляемых элементов на форму. Нужен для
// минимизации рисков пересечения с уже существующими элементами.
// ИмяРодителяГруппы - Строка, Неопределено - Строковое имя группы формы в контексте которой
// требуется разместить группу индикатора. Если неопределено, то в качестве
// контекста выступает управляемая форма. Если на форме не находится такого
// элемента генерируется исключение.
// ВыводитьСнизу - Булево - Определяет местоположение добавляемой группы,
// сигнализирующей об ошибке Если принимает значение "Истина",
// то группа будет добавлена в конец коллекции подчиненных
// элементов группы родителя. В противном случае группа будет
// расположена сразу за основной командной панелью формы объекта.
//
Функция РазместитьГруппуИндикатораОшибки(Форма, КлючУникальностиИмен, ИмяРодителяГруппы = Неопределено, ВыводитьСнизу = Ложь) Экспорт
ВсеЭлементыФормы = Форма.Элементы;
Если ИмяРодителяГруппы = Неопределено Тогда
КонтекстРазмещения = Форма;
Иначе
РодительГруппы = ВсеЭлементыФормы.Найти(ИмяРодителяГруппы);
Если РодительГруппы = Неопределено Тогда
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не найдена группа формы: ""%1""'"), ИмяРодителяГруппы);
Иначе
КонтекстРазмещения = РодительГруппы;
КонецЕсли;
КонецЕсли;
ГруппаИндикатораОшибки = ВсеЭлементыФормы.Добавить("ГруппаИндикатораОшибки_" + КлючУникальностиИмен, Тип("ГруппаФормы"), КонтекстРазмещения);
ГруппаИндикатораОшибки.Вид = ВидГруппыФормы.ОбычнаяГруппа;
ГруппаИндикатораОшибки.ОтображатьЗаголовок = Ложь;
ГруппаИндикатораОшибки.Группировка = ГруппировкаПодчиненныхЭлементовФормы.ГоризонтальнаяВсегда;
ГруппаИндикатораОшибки.РастягиватьПоГоризонтали = Истина;
ГруппаИндикатораОшибки.ЦветФона = ЦветаСтиля.ФонУправляющегоПоля;
ПодчиненныеЭлементыКонтекста = КонтекстРазмещения.ПодчиненныеЭлементы;
Если ВыводитьСнизу Тогда
ВсеЭлементыФормы.Переместить(ГруппаИндикатораОшибки, КонтекстРазмещения);
Иначе
Если ПодчиненныеЭлементыКонтекста.Количество() > 0 Тогда
ВсеЭлементыФормы.Переместить(ГруппаИндикатораОшибки, КонтекстРазмещения, ПодчиненныеЭлементыКонтекста.Получить(0));
КонецЕсли;
КонецЕсли;
Возврат ГруппаИндикатораОшибки;
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
ЗаполнитьГруппуИндикатораОшибки (БСП)
ПриОпределенииПараметровГруппыИндикации (БСП)
Индикатор отчета для Обычных форм
СформироватьОбщуюСтрокуИндикатор (БСП)
УстановкаПараметровСеанса (БСП)
ПредставлениеГруппыДоступа (БСП)
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)