Как создать внешнюю обработку для рассылки
alt 728

Данная страница предназначена для разработчиков внешних обработок


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

Основой механизма служат методы в модуле обработки:

  • функция «СведенияОВнешнейОбработке» — обязательная часть функционала БСП для использования в механизме дополнительных отчетов и обработок.
  • функция «ЗапускПоРасписанию»(ПараметрыРассылки) — основной скрипт для обработки события по расписанию рассылки.

Имя метода «ЗапускПоРасписанию» может быть иным. Если вы сменили имя метода, то это надо отразить в поле «ИмяМетодаВнешнейОбработки» в соответствующем элементе справочника «Рассылки», который будет использовать эту обработку.

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

 

Основные задачи метода «ЗапускПоРасписанию»:

  • получить в виде параметров информацию о событиях изменений документов и параметры, заданные в элементе справочника «Рассылки»;
  • принять решение: нужно ли вообще сейчас делать рассылку;
  • если используется механизм регистрации событий изменений документов, то отобрать нужные (например, отобрать на основе параметра «Разделитель» из расписания запуска рассылки);
  • сформировать и отослать нужные сообщения;
  • вернуть через параметры таблицу соответствия обработанных событий по изменению документа и указать ссылки на сформированные почтовые сообщения.

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

Параметры метода «ЗапускПоРасписанию»

В единственный параметр метода передается структура со следующими свойствами.

Имя свойства

Тип

Назначение

Рассылка

Ссылка справочника Рассылки

Рассылка, которая определила необходимость запуска обработки

Разделитель

Ссылка какого справочника

Параметр расписания, которое вызвало запуск сейчас запуск рассылки

ИдентификаторЗапуска

Уникальный идентификатор

Случайное значение. Используется в логах для фиксации событий

ДатаВремяГенерации

Дата время

Текущая дата и время сервера при запуске этой рассылки

УчетнаяЗаписьОтправителя

Ссылка справочника УчетныеЗаписиЭлектроннойПочты

Можно указать от кого будет отправка сообщений и через какой почтовый сервер

УчетнаяЗаписьТелеграмБота

Ссылка справочника Телеграм_УчетныеЗаписиБотов

Информация подключения к серверам Телеграм

ШаблонСообщения

Ссылка справочника ШаблоныСообщений

Можно использовать для составления сообщений

ЗаписыватьУдачныеПопыткиВЖурналРегистрации

Булево

На ваше усмотрение

ЗаписыватьНеУдачныеПопыткиВЖурналРегистрации

Булево

На ваше усмотрение

ЗапретПовторныхУведомлений

Булево

На ваше усмотрение

ФиксированныеПараметры

Структура

Имена свойств соответствуют именам факсированных параметров из справочника Рассылки, значения свойств - их значения

ПолучателиПисьма

Таблица значений

Выгрузка табличной части ПолучателиПисьма этого элемента рассылки. Если вы хотите использовать фиксированный список получателей электронных писем

ПолучателиТелеграм

Таблица значений

Выгрузка табличной части ПолучателиТелеграм этого элемента рассылки. Если вы хотите использовать фиксированный список получателей в Телеграм

ВидыКонтактнойИнформации

Таблица значений

Выгрузка табличной части ВидыКонтактнойИнформации. Соответствия имен полей и вида контактной информации. Может быть использована разработчиком, например, для настройки какой именно вид контактной информации контрагента надо использовать именно для этой рассылки

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

Структура

Данные из механизма Дополнительных настроек, если он используется в этом внедрении для справочника Рассылки

Документы

Таблица значений {Документ,ДатаИзменения,УниверсальнаяДатаИзменения,Обработан,Сообщение}

Передается информация о событиях изменений документов из регистра Рассылки_ПоследниеИзмененияДокументов.Рассылка обязана заполнить флаг Обработан. Заполнение поля Сообщение по результатам рассылки - необязательно

Примеры использования метода «ЗапускПоРасписанию»

Дадим для примера пару типовых случаев:

  • По всем созданным документам «Приходные накладные» и отправить ответственному представителю компании сообщение по электронной почте с указанием данных этой накладной;
  • Раз в сутки проверить итоги продаж по магазинам и отправить директору сети сводку по оборотам продаж и выручки;

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

Во втором случае механизм регистрации изменений документов не нужен. Мы сделаем выборку всех документов за период, скомпонуем информацию в текст сообщения и отправим по фиксированному списку получателей, заданных в элементе справочника «Рассылки».

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

Примечание.

Пожалуйста оцените пользу статьи для вас

Если у вас есть пожелания или вы не согласны с тем, что написано в статье, напишите нам в Телеграм