Разработка и Конфигурация · 10 мин
Где хранятся формы в 1С и как их найти
Разбираем, где хранятся формы в 1С: в конфигурации, расширении и на диске. Как найти, открыть, выгрузить и восстановить форму объекта без потери данных.
Формы в 1С — это описания экранного интерфейса объектов конфигурации: документов, справочников, отчётов, обработок. Вопрос «где хранятся формы» возникает в трёх типовых ситуациях: когда нужно найти форму в дереве конфигуратора, когда разработчик ищет файлы формы на диске после выгрузки, и когда форма «пропала» после обновления или доработки расширением. Ответ зависит от того, о каком хранении идёт речь — логическом (внутри базы) или физическом (в файлах).
Ключевой момент: формы не существуют отдельно от конфигурации. Они являются частью метаданных объекта и хранятся внутри информационной базы — в файле 1Cv8.1CD для файлового варианта или в таблицах СУБД для клиент-серверного. Отдельных файлов с формами в работающей базе нет, поэтому «потерянную» форму нельзя восстановить из папки с программой — только из конфигурации, расширения или резервной копии.
Где логически хранятся формы: конфигурация и расширения
Каждая форма привязана к конкретному объекту метаданных. У справочника «Номенклатура» формы элемента, списка и выбора лежат внутри этого справочника, у документа «Реализация товаров» — внутри документа, у внешней обработки — внутри самого файла обработки. Общие формы, не привязанные к объекту, находятся в отдельной ветке «Общие формы» корня конфигурации.
Если прикладное решение доработано расширением конфигурации, заимствованная или добавленная форма хранится уже внутри расширения. При этом исходная форма в основной конфигурации никуда не девается — расширение работает как слой поверх неё. При отключении расширения база снова показывает «родную» форму, что часто воспринимается пользователями как «форма вернулась сама».
Важно различать формы объекта и формы, назначенные «основными». В свойствах объекта метаданных указывается, какая форма используется по умолчанию для элемента, списка, выбора. Если основная форма не задана, платформа генерирует её автоматически — такая автогенерируемая форма физически нигде не описана разработчиком и в дереве конфигурации не отображается.
Как найти форму объекта в Конфигураторе
Стандартный путь: откройте Конфигуратор, выполните «Конфигурация — Открыть конфигурацию», в дереве метаданных раскройте нужный тип объектов (например, «Документы»), найдите объект и раскройте ветку «Формы» внутри него. Двойной щелчок по имени формы открывает редактор формы, где доступны закладки с деревом элементов, реквизитами, командами и модулем.
Если объектов много и искать вручную долго, используйте поиск по конфигурации: «Правка — Найти» или глобальный поиск (Ctrl+Shift+F) по имени формы или фрагменту текста модуля. Также удобно открыть палитру свойств объекта (правый клик — «Свойства») и посмотреть поля «Основная форма элемента», «Основная форма списка» — там указано, какая именно форма открывается пользователю.
- 1Откройте Конфигуратор и конфигурацию базы
- 2В дереве метаданных раскройте нужный тип объектов и сам объект
- 3Раскройте ветку «Формы» внутри объекта
- 4Проверьте в свойствах объекта, какая форма назначена основной
- 5Если формы нет в списке — она генерируется платформой автоматически или переопределена расширением
Где физически находятся формы: файловая и клиент-серверная база
В файловом варианте вся база, включая конфигурацию и все формы, находится в одном файле 1Cv8.1CD в каталоге информационной базы. Путь к этому каталогу виден в окне запуска 1С при выборе базы. Открыть файл и «достать» форму напрямую нельзя — формат внутренний, работа с ним идёт только через платформу.
В клиент-серверном варианте метаданные конфигурации, включая формы, хранятся в служебных таблицах базы данных на стороне СУБД (MS SQL, PostgreSQL и др.). Прямая правка этих таблиц запрещена: структура внутренняя, недокументированная, и любое ручное вмешательство почти гарантированно приводит к разрушению базы.
Выгрузка форм на диск: XML и EDT
Единственный штатный способ увидеть форму в виде файлов — выгрузить конфигурацию. В Конфигураторе: «Конфигурация — Выгрузить конфигурацию в файлы». После выгрузки в каталоге появится иерархия папок по типам объектов, а каждая форма будет представлена XML-файлом с описанием элементов и файлом модуля (Module.bsl). Именно в таком виде конфигурации хранят в системах контроля версий.
В среде разработки 1C:EDT проект конфигурации изначально лежит на диске в виде файлов: формы находятся в папках соответствующих объектов, рядом с модулями. Поиск по проекту в EDT обычно быстрее и удобнее, чем в Конфигураторе, особенно в крупных конфигурациях.
Способы работы с формами
Подходит для быстрого просмотра и правки в работающей базе; ограничение — формы не видны как файлы, сложно отслеживать изменения
Подходит для хранения в Git и сравнения версий; ограничение — требуется загрузка обратно для применения
Подходит для командной разработки и удобного поиска; ограничение — требует отдельной установки и привыкания к интерфейсу
Где искать формы внешних обработок и отчётов
Внешние обработки и отчёты — это файлы с расширением .epf и .erf. Формы таких объектов хранятся внутри самого файла, а не в конфигурации базы. Чтобы открыть форму внешней обработки, в Конфигураторе выберите «Файл — Открыть», укажите файл обработки, и в появившемся дереве её структуры раскройте ветку «Формы».
Если обработка подключена к базе через механизм «Дополнительные отчеты и обработки», её файл хранится внутри базы в виде двоичных данных в соответствующем справочнике. Исходный файл на диске при этом может отличаться от того, что реально загружен в базу — проверяйте версию именно в справочнике дополнительных обработок.
Что делать, если форма «пропала» или изменилась
Типовые причины: форму переопределило расширение конфигурации, после обновления сбросились пользовательские настройки формы, либо в конфигурации поставщика форму изменили при обновлении. Порядок диагностики: сначала проверьте список расширений («Все функции — Расширения конфигурации» в режиме Предприятия или соответствующая команда в Конфигураторе), затем сравните текущую конфигурацию с конфигурацией поставщика или с копией.
Пользовательские настройки отображения формы (расположение колонок, видимость элементов) хранятся отдельно от самой формы — в хранилище пользовательских настроек. Их сброс не трогает код и структуру формы, но визуально выглядит как «всё сломалось». Очистка настроек выполняется через «Администрирование — Пользователи и права — Персональные настройки пользователей» либо через стандартную обработку управления настройками.
Как проверить результат и обезопасить работу
После любых правок формы обновите конфигурацию базы данных (F7) и откройте объект в режиме Предприятия под реальным пользователем, а не только под администратором: права и функциональные опции могут менять состав видимых элементов. Проверьте, что открывается именно нужная форма, кнопки работают, модуль не выдаёт ошибок при создании формы на сервере.
Перед правкой форм в рабочей базе сделайте выгрузку информационной базы (файл .dt) или хотя бы выгрузку конфигурации в файлы. Это единственная надёжная страховка: при неудачном изменении форму можно вернуть через сравнение и объединение с сохранённой версией, выбрав только нужный объект.
Как проверить результат
Открывается отредактированная форма с нужными элементами
Открывается старая форма — проверьте основную форму объекта и расширения
Форма создаётся без сообщений об ошибках модуля
Ошибка в обработчике ПриСозданииНаСервере — смотрите текст ошибки и модуль формы
Изменения сохранились после F7 и перезапуска
Изменения пропали — правки вносились не в ту конфигурацию или расширение отключено
Частые вопросы
Можно ли скопировать форму из одной конфигурации в другую?
Да, через сравнение и объединение конфигураций либо через выгрузку в файлы XML с последующей загрузкой нужных объектов. Учтите, что модуль формы может ссылаться на объекты, которых нет в целевой конфигурации, — такие обращения придётся адаптировать вручную.
Почему в дереве конфигурации у объекта нет ветки «Формы»?
Значит, разработчик не создавал собственные формы, и платформа генерирует их автоматически при открытии объекта. Чтобы начать редактировать такую форму, создайте новую форму нужного типа в ветке объекта — платформа подставит стандартную структуру, которую можно менять.
Где хранятся настройки формы конкретного пользователя?
В хранилище пользовательских настроек внутри информационной базы, а не в самой форме. Поэтому сброс настроек одного пользователя не влияет на других, а изменение формы разработчиком может сделать старые настройки неприменимыми.
Форму изменили в расширении, а в базе видна старая. Что проверить?
Убедитесь, что расширение активно и подключено к нужной базе, что у него не снят флаг использования и что изменённая версия расширения действительно загружена. Также проверьте, не отключено ли расширение настройками безопасного режима или профилями безопасности кластера.
Можно ли восстановить форму без резервной копии?
Если база на поддержке типовой конфигурации, форму можно вернуть через сравнение с конфигурацией поставщика. Если конфигурация самописная и копий нет, восстановить удалённую форму штатными средствами не получится — только восстанавливать базу из архивной копии СУБД или файла .dt.
Чем отличается файл .cf от выгрузки в файлы XML?
Файл .cf — это бинарный снимок всей конфигурации целиком, удобный для переноса и загрузки, но нечитаемый для сравнения. Выгрузка в файлы XML — текстовое представление, где каждая форма и модуль лежат отдельными файлами, что позволяет сравнивать версии и хранить конфигурацию в Git.
Что важно запомнить
Формы 1С живут внутри конфигурации базы (или расширения), а не в отдельных файлах. Ищите их в Конфигураторе в ветке объекта, выгружайте в XML для хранения версий, а при «пропаже» формы сначала проверяйте расширения и пользовательские настройки. Перед правками всегда делайте выгрузку базы или конфигурации.