Как настроить рассылку внешнего отчета по расписанию в 1С с использованием БСП?

Программист 1С v8.3 (Управляемые формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

Многие разработчики, проводя отладку внешних отчетов, при работе с конфигурациями на базе 1С:Библиотеки стандартных подсистем (БСП) сталкиваются с необходимостью автоматизировать отправку внешних отчетов. Основная сложность заключается в том, что по умолчанию внешний отчет может не отображаться в списке доступных для создания рассылки, либо поле с расписанием может быть недоступно. Давайте подробно разберем, как правильно зарегистрировать отчет, чтобы он стал полноценным участником подсистемы рассылки отчетов.

Основные условия регистрации внешнего отчета

Для того чтобы система «увидела» ваш внешний отчет, необходимо внести изменения в функцию СведенияОВнешнейОбработке, которая находится в модуле объекта внешнего отчета. Ключевым моментом является передача специальных параметров, описанных в справочнике по методам БСП, в структуру регистрационных данных.

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

  1. Добавление ключа РассылкаОтчетов: В структуру, которую возвращает функция, обязательно нужно вставить свойство РассылкаОтчетов со значением Истина. Это дает команду подсистеме БСП считать отчет пригодным для массовой автоматической рассылки.
  2. Вид обработки: Убедитесь, что в поле Вид указано значение ДополнительныйОтчет. Это критически важно для корректной типизации объекта в справочнике ДополнительныеОтчетыИОбработки.
  3. Оформление команд: Структура команд должна быть корректно заполнена. Если вы используете «Вызов серверного метода», убедитесь, что структура команд не конфликтует с требованиями фонового задания.

Пример кода для модуля объекта внешнего отчета

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


Функция СведенияОВнешнейОбработке() Экспорт
    РегистрационныеДанные = Новый Структура;
    РегистрационныеДанные.Вставить("Наименование", "Наименование Вашего Отчета");
    РегистрационныеДанные.Вставить("БезопасныйРежим", Ложь);
    РегистрационныеДанные.Вставить("Версия", "1.0");
    РегистрационныеДанные.Вставить("РассылкаОтчетов", Истина);
    РегистрационныеДанные.Вставить("Вид", "ДополнительныйОтчет");
    РегистрационныеДанные.Вставить("Информация", "Описание отчета для пользователей");

    тзКоманд = Новый ТаблицаЗначений;
    тзКоманд.Колонки.Добавить("Идентификатор");
    тзКоманд.Колонки.Добавить("Представление");
    тзКоманд.Колонки.Добавить("Модификатор");
    тзКоманд.Колонки.Добавить("ПоказыватьОповещение");
    тзКоманд.Колонки.Добавить("Использование");

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

    РегистрационныеДанные.Вставить("Команды", тзКоманд);

    Возврат РегистрационныеДанные;
КонецФункции

Почему рассылка может не работать в старых версиях УТ 11?

Если вы работаете в конфигурации 1С:Управление торговлей (например, версии 11.1), вы можете столкнуться с тем, что подсистема БСП работает некорректно. В таких случаях часто наблюдается недоступность функционала рассылок даже при верной регистрации отчета.

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

Как настроить рассылку после регистрации отчета?

Когда отчет корректно зарегистрирован, он появится в списке доступных объектов в разделе Администрирование — Печатные формы, отчеты и обработки — Рассылки отчетов.

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

Рекомендации по настройке периодов

Часто возникает вопрос: можно ли задать произвольный или плавающий период (например, за последние 3 дня)? Стандартный интерфейс рассылок БСП ограничен, поэтому для достижения гибкости рекомендуем:

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

← На главную