Динамическое дополнение/изменение форм в интерфейсе Такси и Управляемых формах v8.3 (8.2). Изменяем формы в режиме 1С:Предприятие...

21.11.14

Разработка - Инструментарий разработчика

В дополнение к статье "v8: Концепция минимального изменения конфигурации для легкого обновления" (http://infostart.ru/public/170935/) (автор MarSeN) и в качестве некой альтернативы его разработке http://infostart.ru/public/171514/ предлагаю вашему вниманию механизм динамического дополнения и изменения управляемых форм из среды 1С:Предприятие с целью минимизировать довольно трудоемкий процесс сравнения измененных типовых форм.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
DynForms 006
.cf 32,22Kb ver:006
20 2 500 руб. Купить
DynForms версия 005 (не описан функционал по динамическому добавлению кнопок). Оставил для истории, скачивать не актуально.
.cf 30,84Kb ver:005
7 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

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

Оформить подписку и скачать решение со скидкой

Если сравнение модулей на данный момент можно считать довольно удобным, то сравнение форм остается весьма трудоемким, хотя с появлением управляемых форм и в этом направлении появилась бОльшая информативность. Но влиять на объединение реквизитов форм почему-то все равно нельзя (см. пример скрина).

Отличие данной реализации от других (например, //infostart.ru/public/171514/)  в более удобной, на мой взгляд, подготовке самого "ТЗ" на изменения. В данном решении заполнение происходит в режиме 1С:Предприятие. Система предлагает в выпадающем списке возможные значения. Можно более-менее заполнить все интерактивно, по кнопке "Проверить редактируемую форму" посмотреть что получается.

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

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

 

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

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

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

В версии 006 описан механизм работы с кнопками. Т.е. можно динамически добавить кнопку, команда создастся, если ее не было. Метод определяющий действие команды должен быть в модуле.
Изменен один параметр в вызове метода. Теперь передается сама форма, а не ее имя, см. ниже

Вызов, который нужно добавить в процедуру ПриСозданииНаСервере:

// ВНИМАНИЕ, ЗДЕСЬ ОСУЩЕСТВЛЯЕТСЯ ИЗМЕНЕНИЕ ВНЕШНЕГО ВИДА ФОРМЫ
// для актуальной версии 006

крДинамическоеИзменениеФормСервер.крДобавитьЭлементыПоСправочнику(ЭтаФорма, Элементы, Параметры.ДополнительныеПараметры); 

// для версии 005
// крДинамическоеИзменениеФормСервер.крДобавитьЭлементыПоСправочнику(ЭтаФорма.ИмяФормы, Элементы, Параметры.ДополнительныеПараметры); 


Применимо к управляемым формам. Делалось на 8.3 для Бухгалтерии 3.0

 

Ограничения (что проверял, что нет).

По факту проверял только Поле ввода (на форме и в таблице), Обычную группу, Группу колонок. В большинстве случаев этого достаточно.

 

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

Вступайте в нашу телеграмм-группу Инфостарт

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

См. также

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

24900 руб.

20.08.2024    64107    337    162    

299

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С:Предприятие 8 Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

16500 руб.

02.09.2020    252358    1397    421    

1147

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм.

22570 руб.

06.10.2023    36729    96    40    

117

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданым 1С, справке синтакс-помошника и проверки синтаксиса.

15250 руб.

25.08.2025    48878    99    27    

113

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

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

17000 руб.

10.11.2023    24449    92    42    

101

Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

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

9500 руб.

17.05.2024    51398    181    63    

211

Мастера заполнения Поиск данных Инструментарий разработчика Подбор и обработка объектов 1С 8.3 1С 8.5 Платные (руб)

Infostart MagicInput улучшает подбор в полях ввода 1С: ищет по любой части названия и по нескольким ключевым фрагментам, распознаёт ввод в другой раскладке и показывает иконки/статусы объектов прямо в списке. Поддерживает вставку навигационной ссылки/представления документа для автоподбора; для разработчиков доступны поиск по GUID и полному имени предопределённого. Работает в управляемых формах и подключается в большинстве конфигураций 1С 8.3/8.5.

5000 руб.

25.02.2026    2689    10    1    

14
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. karg 12 23.11.14 13:05 Сейчас в теме
Собственно метод, который нужно добавить с процедуру ПриСозданииНаСервере:

// Karg 06.11.2014 << >>
// ВНИМАНИЕ, ЗДЕСЬ ОСУЩЕСТВЛЯЕТСЯ ИЗМЕНЕНИЕ ВНЕШНЕГО ВИДА ФОРМЫ
крДинамическоеИзменениеФормСервер.крДобавитьЭлементыПоСправочнику(ЭтаФорма.ИмяФормы, Элементы, Параметры.ДополнительныеПараметры);
2. Denis S 24.11.14 09:42 Сейчас в теме
Интересная идея, опробуем) Применяю данный подход в ERP с использованием типового функционала внесения доработок форм.
3. Puk2 191 26.11.14 10:00 Сейчас в теме
интересно как заработают типовые расширения 1С в платформе 8.3.6, призванные облегчить обновление и изменение конфигураций Типовой механизм расширений 1С
4. karg 12 26.11.14 15:47 Сейчас в теме
-> 3 Думаю, что с появлением расширений, механизмы подобные представленному уйдут в прошлое. Там все же гораздо больший функционал. Но посмотрим. Скорей бы выпустили, сэкономили бы нам всем много времени, я думаю.
5. sss999 50 01.06.15 08:50 Сейчас в теме
Прочитал,ниче,не понял,что это и для чего,ссылку читал про легкие изменения.
Для отправки сообщения требуется регистрация/авторизация