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

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

Как найти форму в конфигураторе 1С

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

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

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

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

Откройте конфигуратор и загрузите конфигурацию через меню «Конфигурация → Открыть конфигурацию». В левой части появится дерево объектов метаданных. Формы всегда вложены в конкретный объект: у справочника «Номенклатура» свои формы, у документа «РеализацияТоваров» — свои.

Структура выглядит так: ветка «Документы» → конкретный документ → подветка «Формы». Внутри могут лежать «ФормаДокумента», «ФормаСписка», «ФормаВыбора». Аналогично у справочников, обработок, отчётов, регистров и планов обмена. У общих форм (не привязанных к объекту) есть отдельная ветка «Общие → Общие формы» на верхнем уровне дерева.

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

Как найти форму конкретного документа или справочника

Самый прямой путь — через дерево метаданных. Раскройте ветку «Документы», найдите нужный документ по имени, раскройте его двойным щелчком или значком «плюс», затем откройте подветку «Формы». Двойной клик по форме откроет её редактор с визуальным представлением и модулем.

Альтернатива — окно свойств объекта. Щёлкните правой кнопкой по документу, выберите «Свойства» (или «Палитра свойств»). В свойствах видны ссылки «Форма документа», «Форма списка» — если форма назначена явно, по ссылке можно перейти прямо к ней. Если в свойстве пусто, значит форма генерируется платформой автоматически.

Порядок действий
  1. 1
    Откройте конфигуратор и меню «Конфигурация → Открыть конфигурацию»
  2. 2
    В дереве раскройте ветку нужного типа: Документы, Справочники, Обработки
  3. 3
    Найдите объект по имени и раскройте подветку «Формы»
  4. 4
    Дважды щёлкните по нужной форме — откроется редактор
  5. 5
    Если подветки «Формы» нет — форма генерируется автоматически, её нужно создать

Быстрый поиск формы по имени и через глобальный поиск

Когда известно имя формы, но неизвестно, к какому объекту она относится, используйте глобальный поиск: «Правка → Глобальный поиск» или сочетание Ctrl+Shift+F. Укажите имя формы, включите поиск по файлам конфигурации. Поиск найдёт и саму форму, и все места в коде, где она вызывается через ОткрытьФорму("Документ.РеализацияТоваров.Форма.ФормаДокумента").

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

bsl
// Так форма вызывается в коде — по этой строке удобно искать
ОткрытьФорму("Справочник.Номенклатура.Форма.ФормаЭлемента", ПараметрыФормы);

Как узнать, какая форма открыта в режиме «Предприятие»

Частая задача: пользователь показывает окно, а разработчик не знает, какая это форма в конфигурации. В тонком клиенте откройте нужное окно в режиме «Предприятие», затем через меню «Сервис и настройки» (или сочетание, зависящее от версии платформы) вызовите «Техническая информация» / сведения о форме. Там будет указано полное имя формы вида Документ.ЗаказПокупателя.Форма.ФормаДокумента.

Полученное имя подставьте в дерево конфигурации: первая часть — тип объекта, вторая — имя объекта, третья — имя формы. Если имя выглядит как ОбщаяФорма.НастройкиПрограммы, ищите его в ветке «Общие → Общие формы».

Для управляемых форм также работает приём с отладчиком: поставьте точку останова в событии «ПриСозданииНаСервере» предполагаемой формы и откройте окно в режиме предприятия под отладкой. Если точка не сработала — вы смотрите не ту форму.

Что делать, если ветки «Формы» у объекта нет

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

Чтобы изменить такую форму, её нужно создать: правый клик по объекту → «Добавить» в контексте форм, либо в палитре свойств напротив «Форма документа» нажать кнопку выбора и создать новую. Конструктор предложит тип формы и состав реквизитов.

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

Поиск формы по содержимому: кнопка, надпись, обработчик

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

Двойной клик по результату откроет модуль на нужной строке. Чтобы от модуля перейти к самой форме, посмотрите заголовок окна модуля — там указан полный путь вида «ФормаДокумента (Документ.РеализацияТоваров)». По этому пути форма легко находится в дереве.

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

Особенности внешних обработок и расширений

Формы внешних обработок и отчётов (файлы .epf, .erf) не видны в дереве конфигурации. Чтобы найти и открыть такую форму, откройте файл через «Файл → Открыть» в конфигураторе — появится отдельное окно структуры обработки с её формами.

Формы, добавленные расширением конфигурации, находятся в дереве самого расширения: «Конфигурация → Расширения конфигурации», откройте нужное расширение и работайте с его деревом. Формы, заимствованные в расширение для доработки, отображаются там же, и их изменение не затрагивает основную конфигурацию.

Итог

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

Форма всегда привязана к объекту или лежит в общих формах. Полное имя формы надёжнее всего узнать из режима «Предприятие» через техническую информацию. Отсутствие ветки «Формы» означает автоматическую генерацию. Для доработки типовых конфигураций безопаснее использовать расширения.

Частые вопросы

Почему я не нахожу форму, которую вижу в режиме «Предприятие»?

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

Как найти все места, где открывается конкретная форма?

Используйте глобальный поиск (Ctrl+Shift+F) по строке с именем формы, например «Форма.ФормаДокумента» вместе с именем объекта. Поиск покажет все вызовы ОткрытьФорму и ПолучитьФорму в модулях конфигурации.

Можно ли найти форму по тексту на кнопке или в сообщении об ошибке?

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

Чем отличается форма списка от формы элемента?

Форма списка отображает таблицу объектов (журнал документов, список товаров), форма элемента — карточку одного объекта. У одного справочника или документа обычно есть обе, и править нужно ту, которую реально открывает пользователь.

Что делать, если форма есть, но не открывается в редакторе?

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

Как быстро перейти к форме из её модуля?

В открытом модуле формы заголовок окна содержит полный путь к форме. Также в редакторе формы вкладки «Форма», «Модуль», «Реквизиты» переключаются внутри одного окна — достаточно открыть любую из них и перейти на нужную вкладку.