06.02.2026 Олег Штода 330
Программное создание элементов на форме документа

Содержание:

1.    Динамическое программное создание элементов и реквизитов форм в управляемых приложениях 1С


В управляемом приложении, так же, как и в обычном, предусмотрена возможность программного создания элементов формы. Однако между ними есть существенные различия. В обычных формах программное добавление ограничивается только элементами формы, тогда как в управляемых формах можно создавать не только элементы, но и реквизиты формы. Как правило, элементы и реквизиты задаются статически в конфигураторе, но в ряде случаев требуется их динамическое программное создание. Для решения этой задачи в языке программирования предусмотрены специальные методы и свойства, которые позволяют гибко управлять интерфейсом.


Программное создание элементов и реквизитов позволяет адаптировать формы под специфические требования бизнеса, автоматизировать пользовательский интерфейс и повысить качество взаимодействия с пользователем. Это особенно важно при необходимости расширения стандартных конфигураций, сохраняя при этом стабильность работы и удобство использования.


Настройка интерфейса с помощью встроенного языка часто используется при доработке типовых конфигураций. Такой подход значительно облегчает внедрение обновлений и новых функций без необходимости полной переработки существующих интерфейсов. Кроме того, он часто применяется при доработках в расширениях, позволяя сохранить целостность основной конфигурации и упростить процесс поддержки.


Изменения элементов формы выполняются на сервере, что дает возможность использовать как предопределённые обработчики событий (например, &ПриСозданииНаСервере), так и любые другие методы с директивой &НаСервере.


Для выполнения различных действий с формой — таких как добавление, перемещение, удаление и поиск элементов — используется коллекция "Элементы" с типом "ВсеЭлементыФормы". Поскольку каждый элемент формы должен быть связан с соответствующим реквизитом, возможно либо привязать новый элемент формы к уже существующему реквизиту, либо создать необходимый реквизит программно. Такая связь обеспечивает корректное отображение и обработку данных в интерфейсе.  


Таким образом, использование программных методов создания и управления элементами и реквизитами в управляемых формах является мощным инструментом для гибкой настройки и модернизации приложения с минимальными усилиями для поддержки и обновления.


2.    Пример программного создания реквизитов и элементов формы документа в 1С


Ниже приведен пример кода, демонстрирующий создание реквизитов и элементов формы документа

&НаСервере

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

// добавленине реквизитов     

          МоиРеквизиты = Новый Массив;

    ТипСтрока = Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки());

    МоиРеквизиты.Добавить(Новый РеквизитФормы("РеквизитПрограммноСтрока", ТипСтрока, "", "Реквизит строка", Ложь));

          ТипДата = Новый ОписаниеТипов("Дата", , Новый КвалификаторыДаты());

    МоиРеквизиты.Добавить(Новый РеквизитФормы("РеквизитПрограммноДата", ТипДата, "", "Реквизит дата", Ложь));  

          ИзменитьРеквизиты(МоиРеквизиты);      

                   

          //Создадим группу

          // третий параметр зависит от места на форме в которое непобходимо добавить группу

          ГруппаСтрокаДата = Элементы.Добавить("ГруппаСтрокаДата", Тип("ГруппаФормы"),Элементы.ГруппаШапкаПравая);

          ГруппаСтрокаДата.Вид = ВидГруппыФормы.ОбычнаяГруппа;

          ГруппаСтрокаДата.Отображение = ОтображениеОбычнойГруппы.Нет;

          ГруппаСтрокаДата.ОтображатьЗаголовок = Ложь;

          ГруппаСтрокаДата.Группировка = ГруппировкаПодчиненныхЭлементовФормы.ГоризонтальнаяЕслиВозможно;

         

          // добавленине элементов ПолеФормы

          ПолеСтрока = Элементы.Добавить("ПолеСтрока", Тип("ПолеФормы"), Элементы.ГруппаСтрокаДата);

    ПолеСтрока.Вид = ВидПоляФормы.ПолеВвода;

    ПолеСтрока.ПутьКДанным = "РеквизитПрограммноСтрока";

         

          ПолеДата = Элементы.Добавить("ПолеДата", Тип("ПолеФормы"), Элементы.ГруппаСтрокаДата);

    ПолеДата.Вид = ВидПоляФормы.ПолеВвода;

    ПолеДата.ПутьКДанным = "РеквизитПрограммноДата";

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


Специалист компании ООО "Кодерлайн"

Олег Штода

Наши проекты

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
«1С: Управление торговлей»

- Создание прототипа SRM-системы на базе «1С: Управление торговлей»
- Автомат...

Московский филиал ООО «Авиакомпания «Икар»
Московский филиал ООО «Авиакомпания «Икар»

Отрасль:
Авиаперевозки

Внедренное типовое решение:
1С:Зарплата и управление персоналом

Управление персоналом и кадровый учет (HRM) Кадровый учет Расчет зарплаты Рег...

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

Внедренное типовое решение:
1С:Управление холдингом 8

Бухгалтерский учет;
Расчет зарплаты и кадровый учет;...

ООО «ДАФ Тракс Рус» (DAF Trucks Rus)
ООО «ДАФ Тракс Рус» (DAF Trucks Rus)

Отрасль:
Машиностроение

Внедренное типовое решение:
«1С:Управление корпоративными финансами»

- Осуществлена разработка матрицы прав и ролей для финансового подразделени...

Внедрение ПП «1С:Предприятие 8. Аренда и управление недвижимостью на базе "1С:Бухгалтерия 8"» в компании «Бутово Молл»
ООО «Бутово Молл»

Отрасль:
Недвижимость

Внедренное типовое решение:
1С:Аренда и управление недвижимостью на базе «1С:Бухгалтерия 8»

Управление продажами, логистикой и транспортом (SFM, WMS, TMS):
- Оформление зак...

Автоматизация системы учета продаж газа на базе «1С:ERP Управление предприятием 2.0»
ООО «Эйр Продактс Газ»

Отрасль:
Производство промышленных газов

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Расчеты с контрагентами;
- Производственные операции;
- Управление скла...

ООО ХДМ Рус
ООО ХДМ Рус

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Управление цепочками поставок Оптовая торговля ...

ООО «ТейблТок»
ООО «ТейблТок»

Отрасль:
Общественное питание и рестораны

Внедренное типовое решение:
1С:ТОИР Управление ремонтами и обслуживанием оборудования

Мониторинг и анализ ключевых показателей деятельности предприятия Управле...

ООО "АСТАРМЕДИКА КЛИНИКА МИКРОХИРУРГИИ ГЛАЗА"
ООО "АСТАРМЕДИКА КЛИНИКА МИКРОХИРУРГИИ ГЛАЗА"

Отрасль:
Деятельность больничных организаций

Внедренное типовое решение:
БИТ:Управление медицинским центром 8

- Управление отношениями с клиентами (CRM)
- Делопроизводство
- Ведение но...

ЗАО «Ламбумиз»
ЗАО «Ламбумиз»

Отрасль:
Производство картонной упаковки

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Маркетинг;
- Продажи;
- Планирование закупок;
- Закупки;
- Регламенти...

Группа компаний АО «Киномакс»
Группа компаний АО «Киномакс»

Отрасль:
Культура, шоу-бизнес

Внедренное типовое решение:
БИТ.Финанс

- Разработка Положения о Казначействе группы компаний
- Разработка Положе...

Автоматизации бизнес-процессов учета и планирования на базе «1С:ERP Управление предприятием 2.0»
ООО «Буровая сервисная компания «ГРАНД»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

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

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение