К статье
Практический материал

Разработка и Конфигурация · 11 мин

Что такое редактор формы 1С и как с ним работать

Что такое редактор формы в 1С: где находится, из чего состоит, как добавить и настроить элементы формы. Практические приёмы, ошибки и FAQ для разработчика.

Редактор формы — это встроенный инструмент конфигуратора 1С, с помощью которого разработчик создаёт и изменяет экранные формы: окна документов, справочников, отчётов и обработок, с которыми работает пользователь. Именно в редакторе формы определяется, какие поля, кнопки, таблицы и надписи увидит сотрудник, открыв карточку контрагента или документ продажи.

Форма в управляемом приложении 1С — это не статичная картинка, а описание структуры интерфейса: платформа сама «рисует» окно по этому описанию с учётом разрешения экрана, прав пользователя и настроек. Поэтому работа в редакторе сводится не к рисованию элементов мышью, а к настройке дерева элементов, реквизитов, команд и обработчиков событий.

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

Где находится редактор формы и как его открыть

Редактор формы доступен только в конфигураторе, а не в режиме «1С:Предприятие». Чтобы открыть его, нужно запустить конфигуратор, найти в дереве конфигурации нужный объект (например, справочник «Номенклатура» или документ «Реализация товаров») и перейти на вкладку «Формы». Двойной щелчок по существующей форме откроет её в редакторе, а кнопка добавления создаст новую форму через конструктор.

У одного объекта может быть несколько форм: форма списка, форма элемента, форма выбора. Одна из них назначается основной — именно она откроется у пользователя по умолчанию. Если основная форма не создана, платформа сгенерирует её автоматически на основе структуры объекта, и во многих простых случаях этого достаточно.

Из чего состоит окно редактора формы

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

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

Элементы формы

Элементы — это визуальные составляющие: поле ввода, флажок, табличная часть, группа страниц, кнопка. Каждый элемент обычно привязан к реквизиту формы через свойство «ПутьКДанным». Элементы можно перетаскивать в дереве, меняя порядок и вложенность — платформа автоматически построит по ним разметку окна.

Реквизиты и команды

Реквизиты формы — это данные, с которыми работает форма. Главный реквизит (например, «Объект» для формы элемента справочника) содержит данные самого объекта, а дополнительные реквизиты разработчик добавляет для служебных целей: отборов, итогов, временных значений. Команды формы — это действия, которые вызываются кнопками: как стандартные («Записать», «Провести»), так и собственные с обработчиком в модуле.

ЭлементыВидимая часть

Поля, кнопки, таблицы, группы — дерево в левой панели редактора

РеквизитыДанные формы

Главный реквизит объекта и дополнительные служебные данные

КомандыДействия

Стандартные и пользовательские операции, привязанные к кнопкам

МодульЛогика

Код на встроенном языке: обработчики событий и команд

Как добавить поле на форму: пошаговый порядок

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

Если нужно поле, не связанное с данными объекта (например, признак для временного отбора), сначала создаётся дополнительный реквизит формы через контекстное меню панели реквизитов, а затем он выводится на форму тем же перетаскиванием. После этого в палитре свойств настраиваются заголовок, подсказка и доступность.

Как вывести реквизит на форму
  1. 1
    Добавьте реквизит в объект метаданных или в реквизиты формы
  2. 2
    Откройте форму в редакторе и найдите реквизит в правой панели
  3. 3
    Перетащите реквизит в дерево элементов в нужную группу
  4. 4
    Настройте заголовок, видимость и доступность в палитре свойств
  5. 5
    Сохраните конфигурацию и откройте форму в режиме предприятия для проверки

Модуль формы и обработчики событий

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

Ключевая особенность управляемых форм — разделение контекста клиента и сервера. Директивы &НаКлиенте и &НаСервере определяют, где выполняется код. Работа с базой данных (запросы, обращение к объектам) возможна только на сервере, а интерактивные действия (предупреждения, диалоги) — только на клиенте. Нарушение этого правила — самая частая причина ошибок у начинающих разработчиков.

bsl
&НаКлиенте
Процедура КомандаРассчитать(Команда)
	РассчитатьНаСервере();
КонецПроцедуры

&НаСервере
Процедура РассчитатьНаСервере()
	// обращение к данным объекта и запросам
КонецПроцедуры

Типичные ошибки при редактировании форм

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

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

Типичные ошибки
01
Правка типовой формы вместо расширения — потеря изменений при обновлении конфигурации
02
Обращение к базе данных из клиентского контекста — ошибка выполнения у пользователя
03
Тяжёлые запросы при открытии формы — заметные задержки на больших базах
04
Удаление элементов вместо отключения видимости — сложно вернуть стандартное поведение
05
Отсутствие проверки под разными ролями — у пользователя без прав форма падает с ошибкой

Как проверить результат и не сломать работу пользователей

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

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

Контрольные точки

Как проверить форму перед выкладкой

Открытие формы
Норма

Открывается быстро, без сообщений об ошибках

Тревожный признак

Ошибка компиляции модуля или долгое ожидание

Права пользователя
Норма

Под ролью пользователя форма работает полностью

Тревожный признак

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

Запись объекта
Норма

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

Тревожный признак

Данные теряются или запись блокируется

Обновление конфигурации
Норма

Изменения в расширении, типовая форма не тронута

Тревожный признак

Типовая форма изменена — риски при обновлении

Когда форму лучше не трогать самостоятельно

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

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

Частые вопросы о редакторе формы 1С

Чем редактор формы управляемого приложения отличается от редактора обычных форм?

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

Можно ли изменить форму без конфигуратора?

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

Что такое расширение конфигурации и зачем оно для форм?

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

Почему после добавления реквизита в объект он не появился на форме?

Если форма создана вручную, платформа не обновляет её автоматически. Откройте форму в редакторе, найдите новый реквизит в панели реквизитов справа и перетащите его в дерево элементов. Автоматически поля добавляются только на формы, которые платформа генерирует сама.

Опасно ли редактировать форму — можно ли испортить данные?

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

Как скрыть поле только для части пользователей?

Два пути. Простой — настроить права на реквизит объекта: платформа сама скроет недоступное поле. Гибкий — в обработчике «ПриСозданииНаСервере» программно установить свойство Видимость элемента в зависимости от роли пользователя или функциональной опции. Функциональные опции предпочтительнее, так как управляются настройкой без доработки кода.

Итог

Что важно запомнить

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