Программное формирование элементов и реквизитов на управляемой форме

Публикация № 1574931 23.12.21

Приемы и методы разработки - Работа с интерфейсом

Программное создание реквизитов расширение добавление ТЗ на форму

Разработана процедура по программному добавлению реквизитов на управляемую форму.

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

Когда речь идет о добавлении 1-го, 2-х, 5-ти реквизитов ссылочного/примитивного типа - никаких проблем! Загуглили, скопировали программный код, установили свои наименования и все ок, но если в качестве добавляемого реквизита выступает Таблица значений, либо реквизит объекта вида Табличная часть, то возникают некоторые сложности: Во-первых, необходимо программно добавить Элемент формы с типом "ТаблицаФормы", во-вторых в цикле обойти колонки Таблицы Значений, перебрать все возможные типы колонок и добавить элементы с типом "ПолеФормы".  

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

Всего у метода шесть параметров. Первые три указываются в обязательном порядке. "Форма" - форма, на которую добавляем элементы. "Имя" - наименование нашего реквизита и, соответственно, элемента формы. "ГруппаФормы" - элемент формы типа "Группа - обычная группа"/"Группа - обычная группа без отображения", никакие страницы не прокатят:). Затем, если реквизит уже существует на форме, то передаем его ("РеквизитФормы") и его полный путь в виде строки "ПолныйПуть". Если же реквизит отсутствует на форме и его необходимо динамически создать, передаем переменную, значение которой хотим выводить на форме "ЗначениеРеквизита" - Ссылочный/примитивный тип, либо Таблица значений.

В качестве примера, привожу скриншот с вызовом данной процедуры на форме справочника "Сотрудники", конфигурации ЗКГУ 3.1:

 

   

Первый вызов процедур соответствует программному созданию реквизита на форме, с именем "ПриемНаРаботу" и выводом элемента типа "ТаблицаФормы" на форму. В качестве имени я указал "ПриемНаРаботу", в качестве группы выбрал "Элементы.ГруппаДатаРожденияПолИННСНИЛС" и в качестве желаемого реквизита передал ТЗ - Выгрузка результата запроса.

Второй вызов соответствует программному добавлению элементов на форме для табличной части "Форм_ТабличнаяЧасть1". Реквизит я назвал "ТестоваяТаблица", группу передал аналогичную - "Элементы.ГруппаДатаРожденияПолИННСНИЛС", наименование реквизита - "Сотрудник.Форм_ТабличнаяЧасть1", полный путь к реквизиту "Сотрудник.Форм_ТабличнаяЧасть1" (тип: строка).

После вызова указанных процедур на форме сгенерировались две таблицы следующего вида:

 

 

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

К данной статье прикладываю два расширения: 1-е с указанным выше примером для конфигурации ЗКГУ, 2-е - содержит только общий модуль и саму процедуру по формированию элементов и реквизитов на форме.

Разработка производилась и тестировалась на платформе "1С:Предприятие 8.3 (8.3.18.1289)", конфигурации "Зарплата и кадры государственного учреждения, редакция 3.1 (3.1.20.36)"

Скачать файлы

Наименование Файл Версия Размер
Расширение с процедурой и примером из ЗКГУ

.cfe 24,13Kb
68
.cfe 24,13Kb 68 Скачать бесплатно
Расширение с процедурой

.cfe 8,39Kb
67
.cfe 8,39Kb 67 Скачать бесплатно

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. user1387276 23.12.21 09:50 Сейчас в теме
2. Dimbayyyy 23.12.21 11:55 Сейчас в теме
(1) Очень полезный источник. Но цель данной заметки - предоставить готовую процедуру по добавлению полей и таблиц на форму, особо не вникая в ее устройство.
Оставьте свое сообщение

См. также

Программное позиционирование на первой строке табличного поля с типом значения Регистр накопления Набор записей (обычные формы)

Работа с интерфейсом v8 Платформа 1C v8.2 1cv8.cf Бесплатно (free)

Часто при интерфейсных решениях возникает необходимость программно спозиционироваться на первой строке Табличного поля.

09.02.2022    1310    10    Vlad_CK    0    

Диалог выбора картинки из библиотеки картинок

Работа с интерфейсом v8 1cv8.cf Бесплатно (free)

Диалог для интерактивного выбора картинки из объекта БиблиотекаКартинок.

26.09.2021    1679    9    msergeev79    0    

Демосцена на 1С

Работа с интерфейсом v8 1cv8.cf Бесплатно (free)

Графическое демо "Плазма". Олдскульный эффект из 90-х. Воссоздан по исходнику на ассемблере x86. Посвящается Дню программиста 2021.

12.09.2021    3312    61    saver77    9    

MP3 - плейер на основе Miracle

Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

MP3 - плейер на основе Miracle с визуализацией спектра, уровней громкости каналов, времени проигрывания

31.03.2012    17309    40    Abadonna    1    

Информация по регионам и ФО с использованием Яндекс.Карт

WEB Работа с интерфейсом v8 1cv8.cf Бесплатно (free)

Пример использования Yandex.Map API для отображения информации по регионам или федеральным округам РФ. Раскраска регионов и ФО, вывод меток, работа в режиме картограммы. Не привязан к какой-либо конфигурации. Просто пример. В 8.2 работает на толстом, тонком и WEB*-клиентах. *(WEB не во всех браузерах).

30.11.2011    8373    143    mgor    3    

Форма выбора координат Yandex карт (управляемая форма)

Универсальные обработки WEB Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

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

06.09.2011    21343    403    motkot    27    

Прикол над пользователями. 1 апреля

Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

Завтра первое апреля. День смеха)) Разбавление обычных будней. При открытии формы раскрашивает цветами радуги табличную часть.

31.03.2011    17102    86    Serj1C    20    

Не простой пример работы с флажками и деревом значений (исправление от 21.02.2011)

Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

1С.8х позволяет заполнять поле ввода списком значений из выполненного пользователем подбора, при этом контроль на уникальность элементов списка и вхождение в группы необходимо прописать программно (хотя и не сложно). В данном примере показано, как можно реализовать заполнение списка значений поля ввода из справочника /метаданные/, используя дерево значений, простой запрос и обработку помеченных элементов дерева.

20.02.2011    11964    305    demanru    2    

Шрифт для печати текста в рамочке.

Работа с интерфейсом v8 1cv8.cf 1cv7.md Россия Бесплатно (free)

Будет полезен для печати каждого символа текста в рамке без опасений за масштабирование, выход за пределы, настройки принтера и пр.

01.02.2011    20253    130    Sykoku    32    

Братья и сестры, кузены и кузины в Структуре подчиненности

Работа с интерфейсом v8 БП2.0 УПП1 Россия Бесплатно (free)

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

04.11.2010    11963    110        12    

Дерево конфигурации 8.1

Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

Обработка предназначена для быстрого доступа к объектам конфигурации.

20.07.2010    10602    313    seagull33    17    

Вариант отображения перебора каталогов

Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

Как можно отобразить процесс перебора дерева(любого, например дерева каталогов) при условии, что количество элементов дерева неизвестно?

20.05.2010    13343    44    lazy    5    

Танцы с Гуглом

Универсальные обработки WEB Работа с интерфейсом v8 1cv8.cf Бесплатно (free)

Работа с картами гугл из локального кэша формата google titles. Всего две функции: показать по координатам и получить координаты под курсором. Применяется для отображения на карте объектов, имеющих координатную привязку.

27.03.2010    10431    200    Путин    7    

Отчет "Движения документа по регистрам", СКД

Работа с интерфейсом Анализ учета v8::СКД 1cv8.cf Россия БУ Бесплатно (free)

Отчет по движениям документа использующий систему компоновки данных

12.03.2010    22545    294    Dmitryiv    11    

1c-minder: обработка для создания ментальных карт (mind maps) в 1С:Предприятие 8

Файловые протоколы обмена (TXT, XML, DBF), FTP Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

Обработка позволяет быстро и удобно создавать ментальные карты (mind maps) в виде графических схем. Присутствует возможность сохранения схем в файлах формата .grs, после чего их можно открывать на всех компьютерах, на которых есть установленная "1С:Предприятие 8" или "1С:Работа с файлами". Реализован экспорт в графические форматы (PNG/BMP). Разработка является иллюстрацией механизма программной работы с графической схемой (добавление и изменение элементов схемы).

25.12.2009    25076    1027    kharts    29    

[AgentDialog] Модальные диалоги у MS Agent из 1С

Работа с интерфейсом v8 1cv8.cf 1cv7.md Россия Бесплатно (free)

Компонента добавляет в MS Agent возможность формирования диалогов. - выводит модальные предупреждения - выводит сообщения с флажками (метки) - выводит вопросы с предложением различных вариантов ответа - показывает диалог ввода текста - приложены примеры для 1С 7.7, 8.1 и 8.2 (управляемые формы) Простой пример работы с MS Agent http://infostart.ru/public/16658/

24.12.2009    24544    593    Душелов    35    

Рабочий стол (версия 1.2)

Работа с интерфейсом Рабочее место v8 1cv8.cf Бесплатно (free)

Рабочий стол к платформе 1С Предприятие 8.1. Для небольших конфигураций - без страниц. Есть подсказки к значкам и назначение горячих клавиш

22.10.2009    15875    222    rauf    19    

400 анимированных 3D СМАЙЛИКОВ

Работа с интерфейсом v8 Россия Бесплатно (free)

Более 400 анимированных 3D смайликов! Прямо как вы и просили! =)

12.10.2009    16959    466    ChugaevArtem    23    

Сортировка файлов на диске

Работа с интерфейсом v8 1cv8.cf Бесплатно (free)

Обработка сортирует файлы на дисках по заданным параметрам.

17.09.2009    10773    26    fox06    4    

Панель избранного 3.03 (beta)

Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

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

13.09.2009    37365    1027    Totoro    113    

[TinyMCE] - редактор HTML WYSIWYG кода.

WEB Работа с интерфейсом v8 1cv8.cf Бесплатно (free)

Редактор HTML кода, использующий java-редактор TinyMCE (использующийся, кстати, на Инфостарте) Без внешних компонент. Сделан исключительно средствами 1С.

09.09.2009    47458    1901    Душелов    57    

Вывод графиков курсов валют

Работа с интерфейсом Финансовые v8 1cv8.cf Бесплатно (free)

Курсы валют из регистра конфигурации или сайта РБК

21.07.2009    21697    372    anig99    18    

Вариант ПанелиФункций (8.1)

Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

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

16.07.2009    9973    375    Русский    24    

[PDF Viewer] - Просмотр PDF в 1С

Разработка внешних компонент Работа с интерфейсом v7.7 v8 1cv8.cf 1cv7.md Бесплатно (free)

ActiveX-компонента для просмотра PDF. Позволяет сохранить в виде текста, картинки и PostScript. Реализованы механизмы поиска текста и печати.

15.07.2009    41344    966    Душелов    77    

Быстрый отбор по дате в списках (1с8)

Работа с интерфейсом v8 Россия Бесплатно (free)

Универсальный механизм отбора по дате (периоду) в формах списка документов, периодических регистров сведений, регистров накопления, регистров бухгалтерии, регистров расчета, журналов документов. Находка для очень ленивых 1снигов ;))) поскольку пользоваться им быстрее и удобнее чем стандартной встроенной в платформу формой отбора.

24.06.2009    17937    77    YVolohov    4    

[BarcodeGenerator] - "Генерация штрихкодов" ActiveX-компонента для 1С

Работа с интерфейсом v8 1cv8.cf 1cv7.md Россия Бесплатно (free)

Компонента генерирует штрихкод и сохраняет его в виде картинки. Поддерживаемые форматы: UPC-A, UPC-E, UPC 2 Digit Ext., UPC 5 Digit Ext., EAN-13, JAN-13, EAN-8, ITF-14, Codabar, PostNet, Bookland/ISBN, Code 11, Code 39, Code 39 Extended, Code 93, LOGMARS, MSI, Interleaved 2 of 5, Standard 2 of 5, Code 128, Code 128-A, Code 128-B, Code 128-C и QR Code

23.06.2009    55656    2149    Душелов    136    

Альтернатива "Панели функций"

Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

Альтернатива "Панели функций"

23.06.2009    15843    186    kalyan_2000    7    

Генератор случайных цветов

Работа с интерфейсом v8 1cv8.cf Бесплатно (free)

Генерирует случайные цвета

02.06.2009    12636    112    Dr_D    7    

Еще один динамический интерфейс

Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

Универсальный динамический интерфейс для 1С 8.1

28.05.2009    13803    303    transsoft    14    

Пример использования карты в 1С 8.1

Работа с интерфейсом v8 Россия Бесплатно (free)

Использование объекта "Географическая схема".

24.05.2009    8612    399    Jonny33    6    

Заполнение ТЧ "Принадлежность" справочника "ВнешниеОбработки" типовых конфигураций.

Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

Механизм подключения внешних обработок и печатных форм очень удобен в работе как программиста, так и пользователя. Как он работает написано например вот тут http://infostart.ru/blogs/345/. И все же при его использовании есть некоторые неудобства...

22.05.2009    13802    126    wildhog    2    

Выбор периода для СКД

Работа с интерфейсом v8::СКД 1cv8.cf Россия Бесплатно (free)

Мое интерфейсное решение для выбора периода в отчетах, построенных на СКД. Может использоваться как и замена НастройкиПериода

20.05.2009    22292    545    Stepa86    34    

Анкеты для юзабилити-тестирования (обработки)

Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

Юзабилити-тестированием является любой эксперимент, направленный на измерение качества интерфейса или же поиск конкретных проблем в нем. Польза юзабилити-тестирования многогранна. Тестирование позволяет: - Понять, насколько плохо или хорошо работает интерфейс, что может либо побудить улучшить его, либо, если он уже достаточно хорош, успокоиться; в любом случае достигается польза. - Сравнить качество старого и нового интерфейсов и тем самым дать обоснование изменениям или внедрению. - Найти и опознать проблематичные фрагменты интерфейса, а при достаточном объеме выборки также и оценить их частотность. В то же время юзабилити-тестирование не может сделать из плохого продукта продукт хороший; оно всего лишь делает продукт лучше.

13.05.2009    49136    303    Stepa86    10    

[VectorDrawing] - Векторная графика в 1С

Работа с интерфейсом v8 1cv8.cf 1cv7.md Россия Бесплатно (free)

ActiveX-компонента для работы с векторной графикой: рисует примитивы (прямоугольники, линии, многоугольники, эллипсы, текст), группирует их в сложные объекты. Позволяет вращать, деформировать, масштабировать. Инициируются события (при шелчке (одинарном и двойном) мышки на объекте и др.). Фигуры позволяют хранить ссылки на объекты 1С.

08.05.2009    34648    1073    Душелов    159    

[GDI+] - Рисуем программно в 1С

Работа с интерфейсом v8 1cv8.cf 1cv7.md Россия Бесплатно (free)

ActiveX-компонента для рисования в 1С.

05.05.2009    39865    1315    Душелов    113    

[Плоттер] - ActiveX-компонента для 1С (.NET)

Работа с интерфейсом v8 1cv8.cf 1cv7.md Россия Бесплатно (free)

Компонента рисует анимированный график в стиле осциллографа.

04.05.2009    17454    166    Душелов    11    

Подпись к полю ввода в самом поле

Работа с интерфейсом Разработка внешних компонент v8 1cv8.cf Бесплатно (free)

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

30.04.2009    20154    322    Stepa86    22    

Еще немного фракталов

Работа с интерфейсом v8 1cv8.cf Россия Бесплатно (free)

Опять фракталы

23.04.2009    4761    191    Crag    3    

Обработка поиска контрагентов на картах Яндекса

WEB Поиск данных Работа с интерфейсом v8 1cv8.cf Бесплатно (free)

Поиск ведет по контактной информации.

16.04.2009    17044    208    kwazi    11    

Включение документации в форматах MS Office в базу 1С + Описание метаданных

Работа с интерфейсом Загрузка и выгрузка в Excel Документооборот и делопроизводство v8 1cv8.cf Бесплатно (free)

Думаю, что так можно было бы документировать измененные конфигурации. При реализации использовалось http://infostart.ru/projects/3670/ (респект автору), также добавил отрывки из "Конвертации данных".

09.04.2009    13174    159    mosAdm    1