Добавление реквизитов и элементов формы на управляемые формы легко и просто без кодирования

15.06.23

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

Изменять типовые формы можно разными способами
1 - Менять типовую в дизайнере
2 - Менять типовую расширением с помощью дизайнера форм
3 - Добавить кодом в расширении динамическое создание реквизитов и элементов
3.1 - Вариант - пишем функцию с параметрами, чтобы не писать один и тот же код для каждого добавляемого элемента

Каждый из способов имеет свои достоинства и недостатки.

Скачать исходный код

Наименование Файл Версия Размер
Добавляем реквизиты и элементы формы на управляемые формы
.cfe 22,50Kb
3
.cfe 22,50Kb 3 Скачать

 

  1. Все просто и наглядно. Но снимаем с поддержки - получаем проблемы при обновлении
  2. Не снимаем с поддержки. Все просто и наглядно. Но тянем с собой часть конфы и получаем отложенные проблемы при обновлении. 
  3. Не снимаем с поддержки и не тянем часть конфы. Но страницы кода на каждый элемент и "за деревьями леса не видно"
    1. Меньше лишнего кода - но функция с десятком параметров - не очевидно, что где надо заполнять

Предлагается еще способ - макет с описанием, что надо сделать - просто, наглядно, расширяемо.

 

Основная идея

При открытии формы система ищет подходящий к нему макет по шаблону в макетах объекта

<Типмакета><ИмяФормы>:

На данный момент рассматривается 3 типа макета

  1. РеквизитыФормы
  2. ЭлементыФормы
  3. СобытияФормы

 

Если макет есть - читает данные макета и по ним в форме:

  1. Добавляет или изменяет реквизиты
  2. Добавляет или изменяет элементы формы или их свойства
  3. Добавляет или переопределяет события формы

Из дополнительных возможностей - у пользователя можно установить допреквизит - и производить отладку создания формы (будет выделено цветом добавленные)

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

 

Планы на развитие

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

 

Данное расширение работает на конфигурациях с управляемыми формами. 

Тестировалось на платформах 8.3.17 и 8.3.22

Внедрено у нас на:

ERP 2.4

ЗУП 3.1

И в процессе развития Документооборот  3.0

 

PS.

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

Но есть проблема - в типовых конфигурациях не все объекты вызывают общие модули при создании. Вот такая "унификация"

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

 

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

Принимаю идеи по развитию функционала.

Кастомизация управляемых форм

См. также

Управление дашбордами

Работа с интерфейсом Программист Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Обработка предназначена для создания и управления дашбордами.

2400 руб.

29.06.2020    17201    23    4    

37

Новогоднее оформление для 1С

Работа с интерфейсом Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    11691    776    elcoan    47    

108

Конструктор HTML, CSS и javascript

Инструментарий разработчика Работа с интерфейсом Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

2 стартмани

10.04.2023    10221    157    acces969    31    

120

Модель состояния для MVC

Работа с интерфейсом Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.

1 стартмани

05.07.2022    4216    kalyaka    4    

31

Условное оформление элементов форм в пользовательском режиме 1С (управление видимостью и доступностью элементов форм)

Работа с интерфейсом Платформа 1С v8.3 Платные (руб)

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

6000 руб.

18.01.2022    9111    1    2    

6

Программный интерфейс для доработки форм

Работа с интерфейсом Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

25.11.2021    10022    AtamanovYS    19    

141
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Lemmonbri 124 15.06.23 16:38 Сейчас в теме
Это какая-то жесть если честно. Не понятна цель данного функционала.
Если обратиться к проблемам, которые упомянуты в начале и рассмотреть их в рамках предложенного решения, то получается следующее:
"Все просто и наглядно. Но снимаем с поддержки - получаем проблемы при обновлении" - не снимаем, так же как и с расширением.
"Не снимаем с поддержки. Все просто и наглядно. Но тянем с собой часть конфы и получаем отложенные проблемы при обновлении." - у вас тоже самое, в расширение тянутся типы и ссылки, вы так же в своих макетах указываете ссылки. После обновы идентификаторы поменялись - что расширение, что ваш макет отвалились. Проблема осталась.
"Не снимаем с поддержки и не тянем часть конфы. Но страницы кода на каждый элемент и "за деревьями леса не видно"" - вместо станиц кода вы получили бесконечную таблицу в макете, так ещё куда и методы на встроенном языке вставляете. Проблема никуда не делась. Отладка этих методов недоступна, получили новую проблему.
"Меньше лишнего кода - но функция с десятком параметров - не очевидно, что где надо заполнять" - это вообще не проблема, если изучить повнимательнее стандарты, то можно написать описание параметров, даже с примерами вызовов (см. общий модуль ДлительныеОперации БСП и описание его методов).
По итогу мы получили мало кому известный подход, в котором остались старые проблемы. У меня возникает вопрос: зачем мне менять шило на мыло? Про дальнейшее сопровождение я вообще молчу. Разраб, не знающий об этом подходе никогда в жизни не догадается до такого.
2. ZAOSTG 146 16.06.23 07:42 Сейчас в теме
(1) Краткое резюме - это не для Вас. По нескольким причинам. Нет смысла описывать чтобы не разводить флуд
Оставьте свое сообщение