Внешние печатные формы в 1С:Предприятие 8.3 — это отдельные файлы или объекты конфигурации, которые расширяют стандартный функционал программы, позволяя выводить документы в нетиповом формате. Однако их расположение не всегда очевидно: они могут храниться как в файловой системе, так и внутри базы данных, а пути к ним зависят от режима работы (файловый или клиент-серверный), версии платформы и даже от способа подключения. Если вы ищете, где именно лежит нужная форма, чтобы её отредактировать, перенести или восстановить — эта статья поможет разобраться во всех нюансах.

Мы рассмотрим не только стандартные пути хранения, но и «скрытые» места, куда может сохранять внешние печатные формы при разных сценариях: от ручного добавления через конфигуратор до автоматического размещения при обновлении. Особое внимание уделим различиям между файловым и клиент-серверным вариантами работы, а также нюансам для облачных решений (например, 1С:Фреш). Если вы разработчик, администратор или опытный пользователь — здесь найдёте ответы на вопросы, которые часто остаются без внимания в официальной документации.

1. Стандартные пути хранения внешних печатных форм в файловой базе 1С 8.3

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

  • 📁 ExtForms — стандартная папка для внешних печатных форм, создаётся автоматически при первом сохранении. Здесь лежат файлы с расширением .efd (для форм документов) или .erf (для отчётов).
  • 📁 ExtDataProc — если форма подключена как внешняя обработка (например, через механизм ДополнительныеОтчетыИОбработки).
  • 📁 Templates — реже, но иногда формы сохраняются здесь, особенно если они загружены через механизм шаблонов.

Полный путь к этим папкам выглядит так:

C:\Users\Пользователь\AppData\Roaming\1C\1Cv8\Имя_Информационной_Базы\ExtForms\

или (для сетевых баз):

\\Сервер\ОбщаяПапка\1C_Bases\Имя_Базы\ExtForms\

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

💡

Если папки ExtForms нет в каталоге базы, создайте её вручную — 1С автоматически начнёт сохранять туда новые формы.

2. Клиент-серверный вариант: где и как хранятся формы на SQL-сервере

В клиент-серверном режиме (например, при работе с Microsoft SQL Server или PostgreSQL) внешние печатные формы не хранятся в файловой системе, а размещаются непосредственно в базе данных. Это усложняет доступ к ним, так как нельзя просто открыть папку и отредактировать файл. Вместо этого формы сохраняются в следующих местах:

  • 🗃️ Таблица ConfigSave — здесь хранятся все внешние объекты конфигурации, включая печатные формы, в бинарном виде.
  • 🗃️ Таблица Params — может содержать ссылки на формы, если они подключены через механизм дополнительных отчётов.
  • 🗃️ Таблица DocTemplates — для форм, привязанных к конкретным документам (например, счета или накладные).

Чтобы извлечь форму из базы, потребуется:

  1. Подключиться к SQL-серверу через Management Studio или pgAdmin.
  2. Найти запись с нужной формой в таблице ConfigSave (искать по полю Name или Comment).
  3. Экспортировать бинарные данные в файл с расширением .efd или .erf.

Для упрощения задачи можно использовать обработку ВыгрузкаЗагрузкаДанныхXML или специализированные утилиты вроде 1C:EDT (если форма была создана в нём).

Как найти форму в SQL-базе без знания структуры таблиц?

Используйте запрос:

SELECT * FROM ConfigSave WHERE Name LIKE '%ПечатнаяФорма%' OR Comment LIKE '%ПечатнаяФорма%'

Это поможет отфильтровать записи, связанные с формами.

3. Подключение через конфигуратор: где хранятся формы в дереве объектов

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

  1. Откройте конфигуратор в режиме 1С:Предприятие (с правами администратора).
  2. Перейдите в ветку Общие → Внешние печатные формы или Общие → Дополнительные отчёты и обработки.
  3. Найдите нужную форму в списке. Она может быть привязана к конкретному документу (например, РеализацияТоваровУслуг) или быть универсальной.

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

  1. Выделите форму в дереве объектов.
  2. Нажмите правой кнопкой и выберите Сохранить в файл....
  3. Укажите путь для сохранения (например, на рабочий стол). Файл будет иметь расширение .efd или .epf.

Нюанс: если форма подключена через механизм ДополнительныеОтчетыИОбработки, её также можно найти в ветке Общие → Дополнительные отчёты и обработки, но экспортировать придётся через специальную обработку (например, УправлениеДополнительнымиОтчетамиИОбработками).

📊 Где вы обычно храните внешние печатные формы в 1С?
В файловой системе (папка ExtForms)
В базе данных (SQL)
В дереве объектов конфигуратора
Использую облачное хранилище

4. Облачные решения: 1С:Фреш и другие сервисы

В 1С:Фреш и других облачных сервисах (1С:Линк, 1С:ГЛОНАСС) доступ к файловой системе ограничен, поэтому внешние печатные формы хранятся исключительно внутри базы данных. Доступ к ним возможен только через:

  • 🌐 Веб-интерфейс конфигуратора (если предоставлены права администратора).
  • 📤 Экспорт через обработки — например, УправлениеДополнительнымиОтчетамиИОбработками.epf.
  • 🔄 Механизм обмена данными — если форма загружается из внешнего источника (например, через 1С:EDT или 1С:Коннект).

Чтобы загрузить форму в облако:

  1. Создайте файл формы локально (например, в 1С:Enterprise Development Tools).
  2. Используйте обработку ЗагрузкаДанныхИзФайла.epf для импорта в базу.
  3. Либо загрузите через веб-интерфейс (раздел Администрирование → Печатные формы).

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

💡

В 1С:Фреш внешние печатные формы хранятся только в базе данных. Доступ к ним возможен через конфигуратор или обработки загрузки/выгрузки.

5. Альтернативные места хранения: временные файлы и кэш

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

  • 🗑️ %TEMP%\1C\1Cv8\ — здесь могут храниться временные копии форм, особенно если они были загружены через механизм обновлений.
  • 🗑️ C:\Program Files\1cv8\conf\templates\ — стандартные шаблоны печатных форм (например, для УПД или ТОРГ-12).
  • 🗑️ AppData\Local\1C\1Cv8\ — кэш форм, используемых в тонком клиенте или веб-клиенте.

Временные файлы обычно имеют расширение .tmp или .efd~. Их можно открыть в текстовом редакторе (например, Notepad++), чтобы понять, какая это форма. Однако редактировать такие файлы не рекомендуется — они могут быть перезаписаны при следующем запуске .

Если форма «подвисает» или не обновляется, попробуйте:

  1. Очистить кэш через Пуск → Все программы → 1С Предприятие → Утилиты → Очистка кэша.
  2. Перезагрузить сервер 1С:Предприятие (если работаете в клиент-серверном режиме).
  3. Проверить права доступа к папкам ExtForms и Temp.

Просмотреть папку %TEMP%\1C\1Cv8\|Очистить кэш 1С через утилиту|Проверить права доступа к ExtForms|Перезагрузить сервер 1С (для клиент-серверного режима)-->

6. Как определить, где именно хранится нужная форма

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

Тип базы Где искать форму Как экспортировать
Файловая ExtForms\ или ExtDataProc\ в каталоге базы Скопировать файл .efd/.erf вручную
Клиент-серверная (SQL) Таблица ConfigSave в базе данных Экспорт через Management Studio или обработку ВыгрузкаЗагрузкаДанныхXML
Облачная (1С:Фреш) Внутри конфигурации базы (нет доступа к файлам) Экспорт через веб-интерфейс или обработку УправлениеДополнительнымиОтчетамиИОбработками
Локальная с подключением через конфигуратор Ветка Общие → Внешние печатные формы ПКМ по форме → Сохранить в файл...

Если форма подключена через механизм ДополнительныеОтчетыИОбработки, её можно найти в справочнике ДополнительныеОтчетыИОбработки (раздел Администрирование → Печатные формы и обработки). Здесь отображаются все внешние объекты, даже если они хранятся в базе данных.

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

7. Частые ошибки и проблемы с внешними печатными формами

При работе с внешними печатными формами пользователи и разработчики сталкиваются с типичными проблемами. Вот самые распространённые из них и способы решения:

  • Форма не отображается в списке доступных
    Причина: неправильный путь в настройках подключения или отсутствие прав.
    Решение: проверьте путь в параметре ПутьКФайлу (для файлового варианта) или права доступа к таблице ConfigSave (для SQL).
  • Форма открывается, но не печатает данные
    Причина: неверная привязка к документу или устаревшая версия формы.
    Решение: обновите форму или проверьте её код на соответствие текущей конфигурации.
  • После обновления 1С форма перестала работать
    Причина: изменения в структуре документов, к которым привязана форма.
    Решение: отредактируйте форму в 1С:EDT или обратитесь к разработчику за актуальной версией.

Если форма была удалена или повреждена, её можно восстановить:

  1. Из резервной копии базы (если работаете в SQL).
  2. Из файлового бекапа папки ExtForms.
  3. Через историю изменений в 1С:EDT (если форма разрабатывалась в нём).

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

💡

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

FAQ: Ответы на частые вопросы

Можно ли редактировать внешнюю печатную форму прямо в папке ExtForms?

Да, но с оговорками. Если форма хранится в файловом варианте, вы можете открыть файл .efd или .erf в текстовом редакторе (например, Notepad++) или в 1С:EDT, отредактировать и сохранить. Однако:

  • Для форм с бинарными данными (например, с картинками) редактирование вручную может привести к ошибкам.
  • После изменения файла рекомендуется перезапустить , чтобы изменения применились.

Для клиент-серверного варианта редактирование напрямую невозможно — нужно сначала экспортировать форму, а затем импортировать обратно.

Как перенести внешние печатные формы с одной базы 1С на другую?

Способ переноса зависит от типа базы:

  • Файловый вариант: скопируйте файлы из папки ExtForms одной базы в аналогичную папку другой.
  • Клиент-серверный вариант: экспортируйте формы через конфигуратор (Сохранить в файл...) или обработку ВыгрузкаЗагрузкаДанныхXML, затем импортируйте в новую базу.
  • Облако (1С:Фреш): используйте обработку УправлениеДополнительнымиОтчетамиИОбработками для выгрузки и загрузки.

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

Почему внешняя печатная форма не обновляется после правок?

Это типичная проблема, связанная с кэшированием. Попробуйте:

  1. Очистить кэш (через утилиту или вручную удалив папку %TEMP%\1C\1Cv8\).
  2. Перезапустить клиент 1С:Предприятие.
  3. Если работаете в клиент-серверном режиме — перезапустить сервер .
  4. Проверить, не заблокирован ли файл формы (например, антивирусом).

Если форма подключена через конфигуратор, после правок может потребоваться обновление конфигурации базы (Конфигурация → Обновить конфигурацию базы данных).

Можно ли хранить внешние печатные формы в облачном хранилище (например, Яндекс.Диск)?

Технически да, но это требует дополнительной настройки. Варианты:

  • Символическая ссылка: создайте символическую ссылку (например, через mklink в Windows) с папки ExtForms на облачное хранилище. Однако это может замедлить работу из-за сетевых задержек.
  • Синхронизация: используйте утилиты вроде FreeFileSync, чтобы автоматически синхронизировать папку ExtForms с облаком. Но следите, чтобы файлы не блокировались во время синхронизации.
  • Загрузка через обработку: напишите обработку, которая будет загружать формы из облака по требованию (например, при открытии документа).

Важно: при таком подходе возможны проблемы с блокировкой файлов, особенно в многопользовательском режиме. Тестируйте решение на копии базы перед внедрением.

Как узнать, какая внешняя печатная форма используется для конкретного документа?

Есть несколько способов:

  1. Откройте документ, для которого нужна форма, и нажмите Печать → Настройка печатных форм. Здесь будет список доступных форм с пометкой, какая из них используется по умолчанию.
  2. В конфигураторе перейдите в ветку Общие → Внешние печатные формы и найдите форму, привязанную к типу вашего документа (например, РеализацияТоваровУслуг).
  3. Используйте запрос к базе (для SQL-варианта):
    SELECT * FROM InformationRegister_ДополнительныеОтчетыИОбработки
    

    WHERE Объект = 'Документ.РеализацияТоваровУслуг'

    Это покажет все внешние формы, привязанные к реализации.