Автоматическая рассылка произвольных отчетов по электронной почте (обычные формы)















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

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

 

1. Установка

Установка производится в режиме "Конфигуратор", через сравнение и объединение.

 

 

2. Настройка прав доступа

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

 

 

3. Настройка рассылки

Настройка рассылки осуществляется в справочнике "Рассылки отчетов".

 

Настройки рассылки отчета

На закладке "Настройки отчета" выберем нужный отчет, например, "Продажи":

Отчет Продажи

 

Выберем сохраненную настройку (необходимо предварительно настроить отчет и сохранить его настройку):

Восстановление настройки

 

Выберем тип файла:

Тип файла

 

Теперь необходимо настроить "Дату начала" и "Дату окончания" отчета.

В качестве "Периодичности" можно выбрать одну из стандартных, например, День:

Периодичность День

В качестве "Сдвига периода" указывается число, которое означает на сколько будет сдвинут период относительно текущей даты.

Например, если для "Даты начала" указана периодичность "Неделя" и сдвиг "-1", то "Дата начала" будет равна началу предыдущей недели.

Если для "Даты окончания" указана периодичность "День", то "Дата окончания" для отчета будет — конец вчерашнего дня.

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

 

Нажав на ссылку "Расписание", можно гибко настроить время рассылки:

Расписание рассылки

 

Через "Дополнительные настройки" можно включить или выключить выполнение регламентного задания, задать дополнительные параметры:

Дополнительная настройка расписания

 

На закладке "Настройки почты" выберем:

  • учетную запись электронной почты,
  • получателей письма,
  • получателей копии письма.

Настройки почты

Доступ к учетной записи

 

На этом настройка рассылки завершена.

 

4. Результат рассылки

 

 Теперь, согласно настроенного расписания, в программе будет создаваться документ "Электронное письмо":

Электронное письмо

 

С отчетом во вложении:

Вложения

 

Письмо будет сразу же отправлено получателям:

 

Тестировалось на конфигурациях:

  • Управление торговлей, редакция 10.3 (10.3.47.2) 
  • Управление производственным предприятием, редакция 1.3 (1.3.120.1)

13 Comments

  1. wowik

    Добрый день. Нашел маленький недочет — http://prntscr.com/q35p6l

    Reply
  2. wowik

    подскажите чем https://infostart.ru/public/464647/ отличается от вашей разработки?

    Reply
  3. Nicholas

    (1) Спасибо. Исправлю.

    Reply
  4. Nicholas

    (2) По описанию очень похоже.

    Reply
  5. mike_pol

    Объединил вашу CF с УПП 1.3.128.1 . После создания записи в справочнике рассылка отчетов, создается регламентное задание, но оно не выполняется, а в журнале регистрации формируется запись с ошибкой

    для отчетов выбиралась одна из сохраненных настроек

    для отчета Товары на складах выдается ошибка

    {ОбщийМодуль.РассылкаОтчетов_NM.Модуль(271)}: Ошибка при вызове метода контекста (Сдвинуть)

    по причине:

    Неправильное смещение внутри коллекции

    для отчета Анализ движения денежных средств

    {ОбщийМодуль.РассылкаОтчетов_NM.Модуль(1038)}: Ошибка при вызове метода контекста (Добавить)

    по причине:

    по причине:

    Поле не найдено. «СуммаПриходВал»

    Reply
  6. Nicholas

    (5) Можете выслать получившийся CF?

    Reply
  7. skaut

    Здравствуйте! Спасибо за отличную разработку.

    Но у нас возникает ошибка при запуске регламентного задания:

    {ОбщийМодуль.РассылкаОтчетов_NM.Модуль(314)}: Поле объекта не обнаружено (мНазваниеОтчета)

    Не подскажете, что может быть не так?

    Конфигурация УТ 10.3.50.1

    Reply
  8. Nicholas

    (7) Есть подозрение, что что-то не переносится при объединении конфигураций, но чтобы разобраться желательно посмотреть вашу базу. Можете выслать DT или CF?

    Reply
  9. skaut

    (8) При сравнении конфигурации в справочнике РассылкаОтчетов учетная запись почему-то срока, период тоже строка, пользователь, поэтому после загрузки подтянули туда правильные типы значений.

    В остальной все идентично вашей конфигурации.

    Ошибка происходит в процедуре УстановитьНачальныеНастройки в модуле РассылкаОтчетов_NM.

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

    В вашей конфигурации кроме общего модуля, справочника и регламентного задания больше же нет никаких изменений?

    Reply
  10. esamvel

    Здраствуйте.Скажите пожалуйста если я вам отправлю cf вы не настроите рассылку правильно?а то вроде все правильно делаем но отчеты не отправляются

    Reply
  11. Nicholas

    (10) Да, присылайте, разберусь.

    Reply
  12. Nicholas

    (1) Исправлено в версии 1.3

    Reply
  13. Nicholas

    Дополнил описание процесса установки, обновил файл конфигурации.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *