Разработка и Конфигурация · 11 мин
Что такое редактор формы 1С и как с ним работать
Что такое редактор формы в 1С: где находится, из чего состоит, как добавить и настроить элементы формы. Практические приёмы, ошибки и FAQ для разработчика.
Редактор формы — это встроенный инструмент конфигуратора 1С, с помощью которого разработчик создаёт и изменяет экранные формы: окна документов, справочников, отчётов и обработок, с которыми работает пользователь. Именно в редакторе формы определяется, какие поля, кнопки, таблицы и надписи увидит сотрудник, открыв карточку контрагента или документ продажи.
Форма в управляемом приложении 1С — это не статичная картинка, а описание структуры интерфейса: платформа сама «рисует» окно по этому описанию с учётом разрешения экрана, прав пользователя и настроек. Поэтому работа в редакторе сводится не к рисованию элементов мышью, а к настройке дерева элементов, реквизитов, команд и обработчиков событий.
Ошибки при редактировании формы обычно не ломают данные, но могут сделать интерфейс неудобным или вызвать ошибки при открытии формы у пользователей. Поэтому важно понимать устройство редактора и правила безопасных изменений, особенно если конфигурация находится на поддержке.
Где находится редактор формы и как его открыть
Редактор формы доступен только в конфигураторе, а не в режиме «1С:Предприятие». Чтобы открыть его, нужно запустить конфигуратор, найти в дереве конфигурации нужный объект (например, справочник «Номенклатура» или документ «Реализация товаров») и перейти на вкладку «Формы». Двойной щелчок по существующей форме откроет её в редакторе, а кнопка добавления создаст новую форму через конструктор.
У одного объекта может быть несколько форм: форма списка, форма элемента, форма выбора. Одна из них назначается основной — именно она откроется у пользователя по умолчанию. Если основная форма не создана, платформа сгенерирует её автоматически на основе структуры объекта, и во многих простых случаях этого достаточно.
Из чего состоит окно редактора формы
Редактор управляемой формы разделён на несколько рабочих областей. В левой части находится дерево элементов формы — иерархия всех видимых контролов: полей ввода, таблиц, групп, кнопок, декораций. В правой части — панели реквизитов, команд и параметров формы. В нижней части открывается модуль формы с кодом на встроенном языке.
Свойства выделенного элемента редактируются в палитре свойств: там задаются заголовок, видимость, доступность, ширина, связь с данными и десятки других параметров. Большинство настроек формы выполняется именно через свойства, без единой строки кода.
Элементы формы
Элементы — это визуальные составляющие: поле ввода, флажок, табличная часть, группа страниц, кнопка. Каждый элемент обычно привязан к реквизиту формы через свойство «ПутьКДанным». Элементы можно перетаскивать в дереве, меняя порядок и вложенность — платформа автоматически построит по ним разметку окна.
Реквизиты и команды
Реквизиты формы — это данные, с которыми работает форма. Главный реквизит (например, «Объект» для формы элемента справочника) содержит данные самого объекта, а дополнительные реквизиты разработчик добавляет для служебных целей: отборов, итогов, временных значений. Команды формы — это действия, которые вызываются кнопками: как стандартные («Записать», «Провести»), так и собственные с обработчиком в модуле.
Поля, кнопки, таблицы, группы — дерево в левой панели редактора
Главный реквизит объекта и дополнительные служебные данные
Стандартные и пользовательские операции, привязанные к кнопкам
Код на встроенном языке: обработчики событий и команд
Как добавить поле на форму: пошаговый порядок
Типовая задача — вывести на форму документа новый реквизит, добавленный в метаданные. Сначала реквизит создаётся в дереве конфигурации у самого объекта. Затем в редакторе формы он появляется в панели реквизитов, и его остаётся перетащить в дерево элементов в нужное место — платформа сама создаст подходящий тип поля (поле ввода, флажок, поле даты).
Если нужно поле, не связанное с данными объекта (например, признак для временного отбора), сначала создаётся дополнительный реквизит формы через контекстное меню панели реквизитов, а затем он выводится на форму тем же перетаскиванием. После этого в палитре свойств настраиваются заголовок, подсказка и доступность.
- 1Добавьте реквизит в объект метаданных или в реквизиты формы
- 2Откройте форму в редакторе и найдите реквизит в правой панели
- 3Перетащите реквизит в дерево элементов в нужную группу
- 4Настройте заголовок, видимость и доступность в палитре свойств
- 5Сохраните конфигурацию и откройте форму в режиме предприятия для проверки
Модуль формы и обработчики событий
Модуль формы содержит код, который выполняется при работе с формой: обработчики событий «ПриСозданииНаСервере», «ПриОткрытии», «ПередЗаписью», обработчики команд и событий отдельных элементов. Создать обработчик проще всего из палитры свойств: в строке нужного события нажать кнопку открытия — платформа сформирует заготовку процедуры с правильным именем и параметрами.
Ключевая особенность управляемых форм — разделение контекста клиента и сервера. Директивы &НаКлиенте и &НаСервере определяют, где выполняется код. Работа с базой данных (запросы, обращение к объектам) возможна только на сервере, а интерактивные действия (предупреждения, диалоги) — только на клиенте. Нарушение этого правила — самая частая причина ошибок у начинающих разработчиков.
&НаКлиенте
Процедура КомандаРассчитать(Команда)
РассчитатьНаСервере();
КонецПроцедуры
&НаСервере
Процедура РассчитатьНаСервере()
// обращение к данным объекта и запросам
КонецПроцедурыТипичные ошибки при редактировании форм
Наиболее распространённая ошибка — изменение типовых форм конфигурации, находящейся на поддержке. Любая правка типовой формы затрудняет последующие обновления: при обновлении конфигурации изменения могут быть потеряны или заблокируют автоматическое сравнение и объединение. Безопасная альтернатива — расширения конфигурации, которые позволяют изменить форму, не трогая типовой код.
Вторая группа ошибок связана с производительностью: тяжёлые запросы в обработчике «ПриСозданииНаСервере» без необходимости, обращения к серверу из клиентских процедур в цикле, вывод на форму огромных таблиц значений. Такие формы открываются медленно, и пользователи воспринимают это как «тормоза 1С». Проверять скорость открытия формы нужно на реальном объёме данных, а не на пустой тестовой базе.
Как проверить результат и не сломать работу пользователей
После изменения формы её нужно проверить в режиме «1С:Предприятие» под учётной записью с теми же правами, что у реальных пользователей. Администратор видит все элементы, а у менеджера с ограниченными правами часть реквизитов может быть недоступна — и если код формы обращается к такому реквизиту напрямую, возникнет ошибка.
Перед переносом изменений в рабочую базу сделайте копию и убедитесь, что форма открывается, записывается и корректно работает со всеми сценариями: создание нового объекта, открытие существующего, копирование. Для конфигураций на поддержке предпочтительный путь — расширение: его можно отключить в один клик, если что-то пошло не так.
Как проверить форму перед выкладкой
Открывается быстро, без сообщений об ошибках
Ошибка компиляции модуля или долгое ожидание
Под ролью пользователя форма работает полностью
Ошибки доступа к реквизитам или пустые поля
Документ или элемент записывается и проводится
Данные теряются или запись блокируется
Изменения в расширении, типовая форма не тронута
Типовая форма изменена — риски при обновлении
Когда форму лучше не трогать самостоятельно
Самостоятельная доработка оправдана для простых задач: добавить поле, изменить заголовок, скрыть неиспользуемый элемент, настроить порядок колонок. Эти операции обратимы и не затрагивают логику учёта. Риск растёт, когда нужно менять поведение проведения документа, встраивать сложные проверки или дорабатывать формы, связанные с регламентированной отчётностью.
Если форма участвует в обменах данными, электронном документообороте или интеграциях, любое изменение стоит согласовать со специалистом, сопровождающим конфигурацию: внешне безобидная правка может нарушить формат выгрузки или обработку документа на стороне приёмника.
Частые вопросы о редакторе формы 1С
Чем редактор формы управляемого приложения отличается от редактора обычных форм?
В обычных формах разработчик размещал элементы на макете с точными координатами, как в визуальном дизайнере. В управляемых формах задаётся только структура и свойства элементов, а разметку платформа строит автоматически. Это даёт адаптивность к разным экранам и работу через веб-клиент, но лишает точного попиксельного контроля.
Можно ли изменить форму без конфигуратора?
Частично. Пользователь в режиме «1С:Предприятие» может через меню «Изменить форму» скрывать и перемещать элементы, менять порядок колонок — эти настройки персональные или общие, но не затрагивают конфигурацию. Добавить новый реквизит или команду так нельзя: для этого нужен конфигуратор или расширение.
Что такое расширение конфигурации и зачем оно для форм?
Расширение — это отдельный механизм доработки, который накладывается на типовую конфигурацию без её изменения. Форму можно заимствовать в расширение и изменить там: добавить поля, команды, обработчики. При обновлении типовой конфигурации расширение сохраняется, а при необходимости его можно отключить, вернув стандартное поведение.
Почему после добавления реквизита в объект он не появился на форме?
Если форма создана вручную, платформа не обновляет её автоматически. Откройте форму в редакторе, найдите новый реквизит в панели реквизитов справа и перетащите его в дерево элементов. Автоматически поля добавляются только на формы, которые платформа генерирует сама.
Опасно ли редактировать форму — можно ли испортить данные?
Сама настройка элементов формы данных не портит: это только представление. Реальный риск несёт код в модуле формы, который меняет или записывает данные, и изменения связанных процедур проведения. Поэтому любую доработку сначала проверяют на копии базы, а перед внесением изменений в рабочую конфигурацию делают резервную копию.
Как скрыть поле только для части пользователей?
Два пути. Простой — настроить права на реквизит объекта: платформа сама скроет недоступное поле. Гибкий — в обработчике «ПриСозданииНаСервере» программно установить свойство Видимость элемента в зависимости от роли пользователя или функциональной опции. Функциональные опции предпочтительнее, так как управляются настройкой без доработки кода.
Что важно запомнить
Редактор формы 1С — инструмент конфигуратора для настройки экранных форм через дерево элементов, реквизиты, команды и модуль. Простые правки безопасны и обратимы, типовые формы лучше менять через расширения, а результат всегда проверяйте под правами реальных пользователей на копии базы.