Альтернативный способ добавления элементов и реквизитов на формы

Публикация № 1119926

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

Элементы реквизиты формы добавление реквизитов

Предлагаю альтернативный вариант добавления динамически создаваемых элементов и реквизитов на форму.

Предлагаю альтернативный вариант добавления элементов, реквизитов и обработчиков данных добавленных элементов.

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

Итак что нужно сделать.

1) Создать Общий Серверный модуль и скопировать из модуля обработки в модуль код.

2 Создать ОбщийМакет с наименованием "NF_ПФ_MXL_ДопЭлементыФорм" и скопировать макет из обработки в ваш общий макет.

3) Если конфигурация на БАЗЕ БСП или есть модуль "МодификацияКонфигурацииПереопределяемый" тогда добавить вызов в функцию "ПриСозданииНа Сервере"

ИмяОбластиПоУмолчанию=СтрЗаменить(Форма.ИмяФормы,".","_");
ИмяОбщегоМодуляизПункта1.ДобавитьЭлементыНаФормуПоМакету(Форма,ИмяОбластиПоУмолчанию);

 Если же такого модуля нет то можно вставить данный код в формы "ПриСозданииНаСервере"

   Все в части программирования закончено.

Теперь что умеет делать этот макет..да почти все.

1 Добавить реквизиты формы

2 Добавить элементы формы, в том числе и декорации, кнопки и.т.д.

3 Добавить, изменить обработчики элементов формы.

Итак что бы добавить что нибудь на форму нужно.

1) Добавить в макет горизонтальную область с полным именем формы, где точки заменены на "_" Пример

Документ_КорректировкаПриобретения_Форма_ФормаДокумента

  В макете определены 7 вертикальных областей они подписаны, в каждой области есть колонки которые отвечают за создание элементов, реквизитов, или кнопок.

1-ая область "ДанныеЭлемента" содержит 8 колонок.

  1. ИмяЭлемента - Это собственно как будет называться ваш элемент на форме, если не хотите его создавать, например вам нужен реквизит, без связанного элемента в этой колонке нужно написать "НеСоздавать". Поле обязательное.
  2. ТипЭлемента - Тип создаваемого элемента ПолеФормы,ТаблицаФормы,ГруппаФормы,КнопкаФормы, и т.д. то что есть в конфигурации
  3. ВидЭлемента - Ну тут понятно из названия, это и есть вид создаваемого элемента, ВидПоляФормы.ПолеВвода,ВидДекорацииФормы.Надпись, т.е. так же как вы бы писали это в коде. - обязательное поле если хотите увидеть свой элемент
  4. ПутьКданным - Собственно путь к данным элемента, например "Объект.Дата", или если это реквизит формы то просто "Дата"
  5. РодительЭлемента - Тут указывается куда будет добавлен элемент, наименование элемента родителя , если не указать будет вставлен на форму
  6. СоздаватьКолонки - Не используется.
  7. ИменаКолонок - Не используется.
  8. ВставитьПеред - Наименование элемента перед которым вы хотите вставить свой -не обязательное поле

2-ая область "ДопСвойстваЭлемента" 1 колонка.

  1. ДопСвойстваЭлемента Здесь указываются свойства элемента, свойства зависят от типа и вида элемента т.е здесь можно перечислить свойства элемента как они заданы в конфигураторе . Формат в данном поле"НаименованиеСвойства,ЗначениеСвойства",Отделяются свойства точкой с запятой примеры,если тип значения Свойства текст, то значение пишется в кавычках, в остальных случаях без. примеры есть в прилагаемом макете.

3-ая область "ДанныеРеквизита" данная область заполняется только тогда когда вам помимо элемента нужен еще и связанный с ним реквизит, ну или вы просто хотите добавить реквизит без элемента содержит три колонки.

  1. ИмяРеквизита - Ну тут все понятно, это как ваш реквизит будет называться.
  2. ТипРеквизита - Здесь указываете ТипСоздаваемого реквизита пока без поддержки составного типа. т.е если тип Число пишите тут "число". в общем так же как и в функции Новый ОписаниеТипа( ТипРеквизита ) только тут не тип а как раз то что в в функцию тип попадет Тип("ТипРеквизита")
  3. Путь - Тут указывается путь к реквизиту родителю, если вы хотите допустим добавить колонку в таблицу то тут будет что то типа "Товары", тогда реквизит будет создан как Товары.ИмяРеквизита.

4-ая область "ДопСвойстваРеквизита" аналогична ДопСвойстваЭлемента, только для реквизита 1 колонка

5-ая область "ДанныеКнопки" заполнять нужно если вы указали элемент как кнопку и хотите потом как то обработать нажатие данной кнопки, 2 колонки

  1. ИмяКоманды - Собственно как и в конфигураторе имякоманды.
  2. ДействиеКоманды - А вот тут вы прописываете как будет называться обработчик данной команды, потом в форме или в расширении формы вам нужно будет прописать процедуру с таким же именем, что бы у вас отработала кнопка.

6-ая область "ДопСвойстваКоманды" - аналогична другим доп свойствам.

7-ая область "ОбработчикиСобытий" , А вот тут можно прописать обработчики событий элементов которые вы добавили, или же заменить обработчик элемента на свой собственный( сейчас в связи с расширением это не актуально) но для своих элементов нужно

  1. ИменаОбработчиков - Через запятую перечислите имена обработчиков которые вы хотите потом в коде прописать(обработчики зависят от типа и вида элемента), Пример для элемента полеВвода с наименованием "Тратата" здесь можно написать "ПриИзменении", тогда в форме или расширении Процедура будет называться
    ДОП_ТрататаПриИзменении(Элемент)

    Обратите внимание на то что наименование процедуры практически такое же как если бы вы формировали ее из конфигуратора, только спереди добавляется префикс "ДОП_"

 Ну вот собственно и все.

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

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

В прилагаемом макете есть несколько записей для примера как нужно их заполнять.

Тестировалось все на платформе 8.3.13.1865

Конфигурация ЕРП 2.4.6.207 и более ранних версиях.

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

Наименование Файл Версия Размер
Альтернативный способо добавления элементов и реквизитов на формы:
.epf 15,43Kb
09.09.19
7
.epf 15,43Kb 7 Скачать

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

Комментарии
Избранное Подписка Сортировка: Древо
1. Светлый ум 242 11.02.20 12:43 Сейчас в теме
+1 взял на вооружение динамические реквизиты из макета.
Оставьте свое сообщение

См. также

Делаем из СКД Excel (ну, почти)

Инструменты и обработки Программист Конфигурация (md, cf) v8 Абонемент ($m) Работа с интерфейсом

Несложный в использовании способ внедрить в обычный отчет СКД возможность редактировать значения ресурсов отчета (а-ля Excel) и получать отредактированные значения для дальнейшей обработки.

1 стартмани

26.01.2020    2583    3    herfis    15       

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

Индикация прогресса выполнения фонового задания на управляемой форме внешней обработки

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) БСП (Библиотека стандартных подсистем) Работа с интерфейсом

Внешняя обработка с фоновым выполнением и индикацией процесса для любой конфигурации на основе БСП >= 2.3 без изменения конфигурации и встраивания обработки в "Дополнительные отчеты и обработки".

1 стартмани

27.12.2019    3068    7    1sig    12       

Декомпиляция условного оформления

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Работа с интерфейсом

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

1 стартмани

23.12.2019    3177    28    XilDen    3       

Сдача регламентированной отчетности из программ 1С Промо

Сдача регламентированной отчетности из программ "1С" во все контролирующие органы без выгрузок и загрузок в другие программы. Для групп компаний действуют специальные предложения.

от 1500 руб.

Многоуровневые списки выбора с оформлением элементов

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Практика программирования Работа с интерфейсом

Данная статья - попытка решить один маленький кусочек большой проблемы платформы 1С, а именно - бедные и невыразительные пользовательские интерфейсы. Поскольку 1С в режиме управляемого приложения позволяет задействовать веб-клиент, то хочется реализовывать интерфейсы как у взрослых веб-приложений - красивые, дружелюбные для пользователя и, желательно, с положительным UX. Возможно, кто-то со мной не согласится и скажет, что учетные системы должны быть строгие и линейные. Но мы все знаем, что 1С - это уже не только про бухгалтерию. Небольшое отступление для разработчиков, работающих с типовыми конфигурациями. Я не знаю, использует ли фирма 1С что-то похожее в своих разработках. Если да, то данная статья навряд ли будет вам полезна.

1 стартмани

17.12.2019    3597    2    azhilichev    5       

"Живые" картинки со Snap.SVG

Статья Программист Конфигурация (md, cf) v8 Абонемент ($m) Практика программирования WEB Работа с интерфейсом

В статье рассмотрен пример использования http-сервисов для визуализации данных

1 стартмани

24.10.2019    6341    12    blackhole321    4       

Базовый курс по управлению ИТ-проектами. Курс проходит с 26 февраля по 22 апреля 2020 года. Промо

Отличительная черта курса - органичное сочетание трех вещей: 1.Теория проектного управления (PMI®+Agile Alliance+Российские ГОСТ+Методологии от 1С); 2. Опыт внедрения продуктов 1С (опыт франчайзи и успешных компаний + тренды Infostart Event и Agile Days); 3. Разбор реальных проблем и рекомендации экспертов по проектам слушателей. Мы будем фиксироваться на тех инструментах, которые реально оказываются полезными в практике руководителей проектов внедрения. Ведущая курса - Мария Темчина.

от 11000 рублей

Удобный выбор из таблицы/дерева в УФ

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Практика программирования Работа с интерфейсом Разработка

Выбор из таблицы значений или дерева значений в выпадающем списке рядом с полем ввода - УФ, быстро и просто!

1 стартмани

12.08.2019    6676    5    Yashazz    18       

[Механизм интерфейса] Свой флажок (чекбокс)

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Работа с интерфейсом

Создадим свой флажок для интерфейса, используем простой универсальный алгоритм.

1 стартмани

09.08.2019    8993    11    rpgshnik    39       

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Отбор на управляемой форме из списка значений

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Практика программирования Работа с интерфейсом Разработка

Пример простого удобного отбора любых данных ссылочного типа на управляемой форме. Работа обработки проверена на релизе: 1С:Предприятие 8.3.13.1513.

1 стартмани

09.08.2019    8725    9    nagaitseff    6       

Изменяющееся контекстное меню в 1С 8.3

Статья Программист Архив с данными v8 v8::УФ Абонемент ($m) Практика программирования Работа с интерфейсом Разработка

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

1 стартмани

06.08.2019    7995    1    signum2009    15       

Открыто голосование за доклады на INFOSTART MEETUP Krasnodar Промо

Выбирайте и голосуйте за самые интересные доклады, лучшие из них попадут в окончательную программу митапа. Голосование продлится до 30 января 2020 года.

Шпаргалка разработчика для работы с формами

Отчеты и формы Программист Архив с данными v8 Россия Абонемент ($m) Работа с интерфейсом

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

3 стартмани

31.10.2018    10528    73    ELAM    3       

Открывашка ячеек таблиц

Инструменты и обработки Программист Расширение (cfe) v8 1cv8.cf Абонемент ($m) Работа с интерфейсом

Глобальное сочетание клавиш для открытия объекта по ссылке из текущей ячейки любой таблицы в большинстве управляемых форм

1 стартмани

27.10.2018    11764    11    tormozit    28       

1C:Предприятие для программистов: Запросы и отчеты. Второй поток. Онлайн-интенсив с 17 марта по 16 апреля 2020 г. Промо

Данный онлайн-курс предусматривает углубленное изучение языка запросов и возможностей системы компоновки данных, которые понадобятся при разработке отчетов, работающих на платформе “1С:Предприятие” в рамках различных прикладных решений. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей различных прикладных решений, которые используют в своей работе отчеты разного назначения.

6500 рублей

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

Визуализация событий на временной шкале средствами "Поле HTML документа"

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Работа с интерфейсом

Интересный способ наглядно отобразить события на временной шкале. Например, может быть применен для красивого вывода документов по клиенту. Тестировалось на платформе 8.3.12.1469

1 стартмани

31.07.2018    16851    130    Plotks2017    24       

Продвинутое рисование в табличном документе (стрелок и не только)

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 Абонемент ($m) Практика программирования Работа с интерфейсом

Вспоминаем геометрию и основы компьютерной графики. Матрицы и аффинные преобразования на плоскости.

1 стартмани

24.07.2018    10186    18    WalterMort    27       

INFOSTART MEETUP Kazan. 13 марта 2020 г. Промо

Инфостарт продолжает путешествие по России. Следующая остановка - Казань. Тема мероприятия - управление и технологии автоматизации учета на платформе "1С: Предприятие". Ждем всех: докладчиков и участников! Стоимость участия - 5 500 рублей. Цена действительна до 30.01.2020

5 500

Работа с данными выбора

Инструменты и обработки Программист Архив с данными v8 Россия Абонемент ($m) Практика программирования Работа с интерфейсом

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

1 стартмани

17.07.2018    28716    17    kalyaka    16       

Управление состоянием формы через конечный автомат

Статья Программист Конфигурация (md, cf) v8 Россия Абонемент ($m) Практика программирования Работа с интерфейсом

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

1 стартмани

19.06.2018    12002    12    kalyaka    35       

1C:Предприятие для программистов: Расчетные задачи (зарплата). Онлайн-интенсив с 01 по 17 июня 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, которые предназначены для автоматизации периодических расчетов, а именно - для расчета зарплаты. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей прикладного решения “1С:Зарплата и управление персоналом” и прочих прикладных решений, в которых реализован функционал расчета зарплаты.

4900 рублей

Иерархическая диаграмма

Инструменты и обработки Программист Бизнес-аналитик Руководитель проекта Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Работа с интерфейсом

Концепция диаграммы по иерархической структуре данных, например по номенклатуре (продажи или остатки на складах).

2 стартмани

17.06.2018    9312    16    DrAku1a    5       

Программы для исполнения 488-ФЗ: Маркировка товаров Промо

1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.

Программная работа с графическими схемами. Готовое решение

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Инструментарий разработчика Универсальные обработки Работа с интерфейсом

Работоспособное, проверенное на практике, простое и удобное программное управление графическими схемами.

1 стартмани

18.02.2018    13459    16    Yashazz    13       

Тестирование интерфейса в обычном приложении 8.2 при помощи SikuliX

Инструменты и обработки Системный администратор Программист Архив с данными v8 1cv8.cf Windows Абонемент ($m) Инструментарий разработчика Работа с интерфейсом

Как же не хватает клиента тестирования на платформе 8.2. Не кликнешь на кнопку, не выберешь из списка, не проверишь видит ли надпись пользователь. Воспользуемся внешним инструментом SikuliX, который позволит нам протестировать функционал форм. Данный инструмент легко встраивается в линию сборки и может "дружить" с уже известным многим Open-source продуктами.

1 стартмани

03.01.2018    22882    2    kraynev-navi    40       

Новый раздел на Инфостарте - Electronic Software Distribution Промо

Инфостарт напоминает: на нашем сайте можно купить не только ПО, связанное с 1С. В нашем арсенале – ESD-лицензии на ПО от ведущих вендоров: Microsoft, Kaspersky, ESET, Dr.Web, Аскон и другие.

  • Низкие цены, без скрытых платежей и наценок
  • Оперативная отгрузка
  • Возможность оплаты с личного счета (кешбек, обмен стартмани на рубли и т.п.)
  • Покупки идут в накопления для получения скидочных карт лояльности Silver (5%) и Gold (10%)

Программное формирование форматированной строки в стиле html+inline CSS

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Работа с интерфейсом Инструментарий разработчика

Если вам приходилось работать с форматированными строками программно, то вы знаете, какая это боль. Данное решение облегчает программное формирование таких строк.

1 стартмани

18.11.2017    23083    29    bonv    9       

Размеры управляемой формы

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования Работа с интерфейсом Универсальные функции

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

1 стартмани

08.10.2017    21396    58    json    8       

Голосование за доклады на INFOSTART MEETUP Kazan - до 25 февраля. Промо

Выбирайте и голосуйте за самые интересные доклады! Лучшие из лучших попадут в окончательную программу казанского митапа. Оставить свой голос можно до 25 февраля 2020 года.

Программное создание элементов графической схемы (через XSLT)

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования Работа с интерфейсом

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

1 стартмани

20.07.2017    16256    54    lazarenko    16       

Расширенная настройка динамического списка УФ

Инструменты и обработки Программист Расширение (cfe) v8 v8::УФ 1cv8.cf Абонемент ($m) Работа с интерфейсом

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

1 стартмани

31.05.2017    26884    146    tormozit    23