Внешний отчет в разделах 1С: регистрация, размещение и права

· 10 мин

Содержание

Чтобы внешний отчет появился в интерфейсе 1С, его регистрируют как дополнительный: Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки → Добавить из файла, затем в карточке указывают разделы для размещения и включают публикацию. Разово посмотреть отчет проще: Главное меню → Файл → Открыть, выбрать файл .erf — но в разделах он после этого не появится.

Путь выше одинаков для конфигураций на Библиотеке стандартных подсистем: 1С:Бухгалтерия 3.0, ЗУП 3.1, Управление торговлей 11, Комплексная автоматизация 2. Различаются только названия разделов, в которых отчет разместят.

Какой способ подключения выбрать

Внешний отчет можно запустить тремя способами. Они решают разные задачи, и путать их не стоит.

СпособКогда подходитОграничения
Файл → ОткрытьРазово посмотреть отчет, проверить доработкуФайл нужен на каждом компьютере, нет кнопки в разделе, нужна роль на интерактивное открытие
Дополнительный отчет (регистрация в базе)Отчетом пользуются регулярно несколько человекОтчет должен поддерживать регистрацию (см. ниже)
Встроить в конфигурацию или расширениеОтчет стал частью учета, нужен доступ по правам как у типовыхНужен разработчик, расширение придется сопровождать при обновлениях

Для рабочего отчета, которым пользуется бухгалтерия, почти всегда выбирают второй вариант. Файл хранится прямо в базе, его не нужно копировать по компьютерам, а кнопка появляется в нужном разделе.

Разовый запуск без регистрации

Если отчет нужен один раз, регистрировать его не обязательно:

  1. Откройте Главное меню → Файл → Открыть.
  2. Выберите файл .erf и нажмите Открыть.
  3. В окне предупреждения безопасности нажмите Да, если доверяете источнику файла.

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

Подготовка файла: формат и совместимость

Перед загрузкой проверьте три вещи.

📄 Расширение файла. Внешний отчет — это .erf, внешняя обработка — .epf. Механизм загрузки один, но вид объекта задается внутри файла, а не расширением.

🧩 Поддержка регистрации. Чтобы отчет можно было добавить в справочник дополнительных отчетов, в его модуле объекта должна быть экспортная функция СведенияОВнешнейОбработке(). Она сообщает программе вид объекта, версию, режим работы и список команд. Без нее отчет откроется через Файл → Открыть, но зарегистрировать его не получится — программа сообщит, что файл не подходит для подключения.

⚙️ Версия платформы. Файл, сохраненный в конфигураторе более новой платформы, может не открыться на старой. Номер платформы на компьютерах пользователей должен быть не ниже того, в котором отчет сохраняли. Номер своей платформы смотрите в Главное меню → Справка → О программе.

🔗 Ссылки на объекты конфигурации. Отчет, написанный под Бухгалтерию, обращается к ее справочникам и регистрам. В УТ или ЗУП таких объектов может не оказаться, и при формировании появится ошибка вида Тип не определен. Отчет под одну конфигурацию в другой работает только если разработчик это предусмотрел.

Если вы разработчик и дорабатываете отчет сами, вот минимальный пример функции регистрации для отчета на БСП:

Функция СведенияОВнешнейОбработке() Экспорт

	ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.3.1.73");
	ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительныйОтчет();
	ПараметрыРегистрации.Версия = "1.0";
	ПараметрыРегистрации.БезопасныйРежим = Истина;

	Команда = ПараметрыРегистрации.Команды.Добавить();
	Команда.Представление = "Анализ продаж по менеджерам";
	Команда.Идентификатор = "АнализПродаж";
	Команда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
	Команда.ПоказыватьОповещение = Ложь;

	Возврат ПараметрыРегистрации;

КонецФункции

Строка в параметре СведенияОВнешнейОбработке("2.3.1.73") — версия БСП, под которую написан отчет. Представление команды — это текст, который пользователь увидит в списке дополнительных отчетов. БезопасныйРежим = Истина означает, что отчет не будет работать с файлами, COM-объектами и внешними ресурсами. Для обычного отчета на системе компоновки данных этого достаточно.

Отчет, который только собирает данные запросом и выводит их через СКД, почти никогда не требует отключения безопасного режима. Если разработчик просит включить небезопасный режим, уточните зачем.

Добавление внешнего отчета в базу: пошагово

Регистрирует отчет пользователь с правами администратора или с правом добавлять дополнительные отчеты.

Шаг 1. Включите функциональность

  1. Откройте Администрирование → Печатные формы, отчеты и обработки.
  2. Установите флажок Дополнительные отчеты и обработки.
  3. Под флажком станет активна ссылка с тем же названием — перейдите по ней.

Если флажок уже стоит, сразу открывайте ссылку. В УТ 11 и КА 2 раздел называется так же: НСИ и администрирование → Администрирование → Печатные формы, отчеты и обработки.

Шаг 2. Загрузите файл

  1. В списке дополнительных отчетов и обработок нажмите Добавить из файла.
  2. Подтвердите предупреждение безопасности: программа напомнит, что файл из непроверенного источника может навредить базе. Загружайте только отчеты от известного разработчика.
  3. Выберите файл .erf на диске.

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

Шаг 3. Настройте публикацию

Поле Публикация в карточке принимает три значения:

ЗначениеЧто происходит
ИспользуетсяОтчет доступен всем, у кого есть права
Режим отладкиОтчет виден только администраторам — удобно для проверки
ОтключенаОтчет хранится в базе, но не показывается никому

Для первой проверки поставьте Режим отладки. Когда убедитесь, что отчет формируется без ошибок, переключите на Используется.

Шаг 4. Сохраните карточку

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

Как вывести отчет в разделы интерфейса «Такси»

Без размещения отчет есть в базе, но пользователь его не увидит в нужном месте. Размещение настраивается в той же карточке.

  1. Откройте карточку дополнительного отчета.
  2. Найдите строку Размещение — по ссылке рядом с ней откроется выбор разделов.
  3. Отметьте флажками разделы, где отчет нужен: например, «Продажи» и «Руководителю».
  4. Нажмите ОК, затем Записать и закрыть.

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

Быстрый доступ для конкретных людей

На вкладке с командами в карточке есть колонка быстрого доступа. Через нее можно указать пользователей, у которых отчет будет показан сразу при открытии списка дополнительных отчетов, без поиска.

Это удобно, когда в разделе десяток дополнительных отчетов, а конкретному сотруднику нужен один.

Если кнопки не видно после размещения

  • 🔄 Интерфейс перечитывает команды при входе. Попросите пользователя закрыть программу и зайти снова.
  • 🧭 Панель раздела могла быть настроена вручную. Откройте раздел, вызовите настройку навигации через шестеренку в правом верхнем углу и проверьте, не скрыта ли команда «Дополнительные отчеты».
  • 🔐 У пользователя нет прав на использование дополнительных отчетов — об этом следующий раздел.

Права доступа к дополнительным отчетам

Права разделяются на два уровня: кто может загружать отчеты и кто может их запускать.

ДействиеЧто нужно
Загружать и изменять дополнительные отчетыРоль «Добавление и изменение дополнительных отчетов и обработок» (входит в профиль «Администратор»)
Запускать зарегистрированный отчетДоступ к разделу, в котором он размещен, и к данным, которые отчет читает
Открывать любой файл через Файл → ОткрытьРоль «Интерактивное открытие внешних отчетов и обработок»

Права выдают через группы доступа: Администрирование → Настройки пользователей и прав → Группы доступа. Профиль группы определяет набор ролей. Если готового профиля с нужной ролью нет, скопируйте подходящий типовой профиль и добавьте роль в копию — типовые профили лучше не менять, их перезаписывает обновление.

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

Защита от опасных действий

С платформы 8.3.9 при открытии внешнего файла появляется окно предупреждения безопасности. Оно включено у пользователя флажком «Защита от опасных действий» в его свойствах в конфигураторе (Администрирование → Пользователи).

Для зарегистрированных дополнительных отчетов это окно появляется один раз — при загрузке администратором. Пользователи, которые запускают отчет из раздела, его не видят. Еще один довод в пользу регистрации.

Отключить защиту для конкретных баз на компьютере можно параметром в файле conf.cfg платформы:

DisableUnsafeActionProtection=.*МояБаза.*

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

Отладка внешнего отчета и типовые ошибки

Отчет загрузился, но формируется с ошибкой или пустой. Разберите по симптому.

Диагностика: выберите симптом

Пошаговая отладка в конфигураторе

Разработчику удобно ставить точки останова прямо в коде зарегистрированного отчета:

  1. Переведите отчет в публикацию Режим отладки.
  2. В карточке выгрузите отчет в файл через меню Еще → Выгрузить в файл и откройте этот файл в конфигураторе.
  3. Запустите 1С:Предприятие с отладкой из конфигуратора и поставьте точку останова в модуле отчета.
  4. Внесите правку, сохраните файл и загрузите его обратно в карточку.

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

Обновление и сопровождение внешних отчетов

Внешний отчет живет отдельно от конфигурации, поэтому за ним нужно следить.

Как заменить отчет новой версией

  1. Откройте карточку дополнительного отчета.
  2. В меню Еще выберите Загрузить из файла и укажите новый .erf.
  3. Проверьте, что поле версии изменилось, и запишите карточку.

Размещение по разделам, быстрый доступ и сохраненные пользователями варианты настроек при этом остаются. Не удаляйте старую карточку и не добавляйте отчет заново — пропадут настройки, а у пользователей в списке появится дубль.

После обновления конфигурации

Типовые обновления меняют структуру справочников и регистров. Отчет, который вчера работал, после обновления может выдать Поле объекта не обнаружено или Тип не определен.

  • 🗓️ Проверяйте ключевые дополнительные отчеты сразу после каждого обновления релиза.
  • 🧪 Удобный порядок: обновить копию базы, проверить на ней отчеты, затем обновлять рабочую.
  • 📝 Ведите короткий реестр: какой отчет, кто разработчик, под какую конфигурацию, где лежит исходник.
Сопровождение дополнительных отчетов
Выполнено: 0 / 5

Когда отчет пора встроить в конфигурацию

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

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

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