Подсистема алертов (уведомлений, отчетов) или "ползи, улитка, по склону Фудзи"

02.12.11

Разработка - Работа с интерфейсом

Универсальная подсистема для платформ 8.1 и 8.2, предназначенная для быстрого формирования и отправки алертов (уведомлений, отчетов) пользователям:
- удобное представление результатов запросов в виде таблиц
- простой механизм генерации отчетов на данных из внешних источников
- назначение постоянных и интерактивных получателей
- проверки и отчеты на основе регламентных заданий, интерактивных действий пользователей

Скачать файлы

Наименование Файл Версия Размер
ПодсистемаАлертов_81.cf
.cf 24,08Kb
108
.cf 24,08Kb 108 Скачать
ПодсистемаАлертов_82.cf
.cf 25,45Kb
98
.cf 25,45Kb 98 Скачать
"Кто владеет информацией тот, владеет миром" - не обязательно быть Ротшильдом, чтобы постичь эту несложную сентенцию.  

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

На самом деле, при небольшой помощи программиста, 1С может работать очень полезно: рассылать отчеты, предупреждать, информировать, контролировать, и так далее и так далее.

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

 

Физика её проста:

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

2. Именуем задачу и заносим в справочник.

3. Назначаем получателей алерта (уведомления, отчета).

4. Пишем запрос к данным, выводим результат в электронное письмо.

5. Определяем время выполнения задачи - по расписанию или при интерактивном действии. Если по расписанию - то настраиваем регламентное задание. Если при интерактивном действии - нужную подписку на события.

6. Радуемся наступившей Гармонии вместе с пользователем алерта (кадровиком, бухгалтером, сисадмином, директором, оператором, менеджером, с самим собой - бывает и такое).

 

Всего в моей организации в двух системах (БП и ЗУП) настроено около 60 различных алертов - и это не предел, я думаю. Системы взаимодействуют с внешними источниками (различные БД, СКУД), и контролировать это взаимодействие подчас не простая задача.

Основная причина автоматизации: неоднократное возникновение ошибок из-за человеческого фактора (забыл уведомить, сдать, отправить), оперативный и регламентный контроль данных, потребность в актуальных уведомлениях и отчетах.

Базовый подход: высокая ценность информации. При неудачном проектировании алерта рассылка может превратиться в никому не нужный спам. Так же актуальность алертов может снижаться в течение времени или при реорганизации процессов - за этим так же необходимо следить.

 

Состав подсистемы:

        - Конфигурации.ПодсистемаАлертов
        - Подсистемы.паПодсистемаАлертов
        - Интерфейсы.паПодсистемаАлертов
        - Роли.паНастройкаПодсистемыАлертов
        - ОбщиеМодули.паУниверсальныеМеханизмыСервис
        - ОбщиеМодули.паУправлениеАлертами
        - ОбщиеМодули.паФормированиеАлертов
        - РегламентныеЗадания.паОтправкаАлертов
        - РегламентныеЗадания.паКонтрольРегламентныхЗаданий
        - Константы.паУчетнаяЗаписьПоУмолчанию
        - Константы.паИндивидуальнаяРассылкаАлертов
        - Справочники.паБазыДляСинхронизации
        - Справочники.паТипыАлертов
        - РегистрыСведений.паНазначениеАлертов

 

Модуль паУниверсальныеМеханизмыСервис

Содержит вспомогательные процедуры и функции. В т.ч. процедуры, описывающие подключение к внешним базам через ADODB с  выгрузкой результата запроса в таблицу значений с типизированными полями (эту таблицу можно сразу отправить пользователю или использовать в запросе 1С как виртуальную таблицу). Так же в этом модуле находится простая процедура, конвертирующая ТабДок любой сложности в html-код (например, таким образом можно настроить рассылку расчетных листков по почте, в теле письма) - увы, только в клиентском контексте.

Модуль паУправлениеАлертами

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

Модуль паФормированиеАлертов

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

Регламентное задание паОтправкаАлертов

Основное регламентное задание, рассылающее сформированные письма по расписанию (например, раз в 5 минут).

 

Константа паУчетнаяЗаписьПоУмолчанию (при некоторых условиях требует типизации!)

Перед использованием подсистемы необходимо типизировать эту константу как Справочник.УчетныеЗаписиЭлектроннойПочты и указать учетную запись по-умолчанию. А можно просто явно передавать через параметр любую существующую учетную запись.
       

Константа паИндивидуальнаяРассылкаАлертов

Из-за отсутствия унифицированного механизма отправки почты в конфигурациях 1С, рассылка может происходить по схеме "1 письмо - 1 получатель" (БП) или "1 письмо - много получателей" (УТ, ЗУП). 


Справочник паБазыДляСинхронизации

Справочник может пригодиться для хранения строк подключения к внешним источникам данных.


Справочник паТипыАлертов

Содержит наименование типа алерта и признак отправки (общий).
 

Регистр сведений паНазначениеАлертов (измерение Сотрудник требует типизации!)

Описывает адресатов для каждого типа алертов и признак отправки (частный). Поле Сотрудник перед использованием подсистемы необходимо типизировать в составной тип: Справочник.ФизическиеЛица, строка. Строка может понадобиться при назначении алертов на группы рассылок. Так же нуждается в доработке получение почтового адреса физлица в том случае, если он не хранится в регистре КонтактнаяИнформация (см. функцию паУправлениеАлертами.ПолучитьАдресатов)

 

В качестве бонуса-примера предлагаю ознакомиться с реламентным заданием паКонтрольРегламентныхЗаданий. Если Вам доводилось забывать ставить обратно галочку "Использование регламентных заданий" в консоли после утреннего бэкапа или удаления помеченных объектов - и затем выслушивать от пользователей "У меня не обновилось!", "Мне не пришло письмо!" - такое задание не будет лишним. Так же регламентные задания имеют свойство иногда ломаться (например, после обновления на новый релиз или при изменении свойств внешнего источника), что не всегда удается своевременно обнаружить.

 

Итак, краткая инструкция:

1. Типизируем измерение регистра и константу.

2. Создаем предопределенный ТипАлерта.

3. Назначаем алерт пользователю (или не назначаем, если пользователи интерактивные).

4. Создаем регламентное задание или подписку на события.

5. Создаем процедуру с запросом и формированием алерта (уведомления, отчета, таблицы) в модуле паФормированиеАлертов, вызываем её из п.4.

 

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

На все вопросы, связанные с подсистемой и настройкой 1С буду рад ответить.
  

См. также

Богатый редактор картинок, хранимых в базе, с возможностью РИСОВАНИЯ. Редактор внешних файлов картинок. Объект, расширяющий возможности работы с картинками из встроенного языка (Три в одном) + Обработка «Стандартизация картинок»

Работа с интерфейсом Рабочее место Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Обработка предназначена для редактирования картинок в режиме «Предприятие», с возможностью РИСОВАТЬ на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Также обработка может быть использована из встроенного языка как объект для редактирования картинок. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Данная обработка будет особенно полезна тем, кто вносит картинки в базу (изображения номенклатуры, фотографии физических лиц и т.п.). Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6000 руб.

16.01.2015    61793    43    59    

80

[Расширения] Динамическое управление видимостью и доступностью элементов форм (УФ) (8.3.6+)

Работа с интерфейсом Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Механизм «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8». Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.

5000 руб.

14.01.2016    54401    16    21    

42

Управление дашбордами

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

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

2400 руб.

29.06.2020    16695    21    4    

35

Новогоднее оформление для 1С

Работа с интерфейсом Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    10735    750    elcoan    45    

106

Конструктор HTML, CSS и javascript

Инструментарий разработчика Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

2 стартмани

10.04.2023    9610    151    acces969    31    

118

Модель состояния для MVC

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.

1 стартмани

05.07.2022    3665    kalyaka    2    

27

Табло очереди заказов на экран телевизора

WEB-интеграция Работа с интерфейсом Платформа 1С v8.3 1С:Розница 2 Платные (руб)

Связка из веб-приложения и расширения для 1С: Розница 2.3.

3600 руб.

29.04.2022    12079    1    5    

10
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
0. Odin-s 57 01.01.70 03:00 Сейчас в теме
Универсальная подсистема для платформ 8.1 и 8.2, предназначенная для быстрого формирования и отправки алертов (уведомлений, отчетов) пользователям:
- удобное представление результатов запросов в виде таблиц
- простой механизм генерации отчетов на данных из внешних источников
- назначение постоянных и интерактивных получателей
- проверки и отчеты на основе регламентных заданий, интерактивных действий пользователей

Перейти к публикации

1. Raminus 02.12.11 09:07 Сейчас в теме
2. Kom-off 02.12.11 09:10 Сейчас в теме
За цитату из БГ, однозначно, плюс.
3. itar59 87 02.12.11 10:59 Сейчас в теме
а какие перспективы развития идеи!!!!
14. Odin-s 57 15.12.11 20:31 Сейчас в теме
4. necropunk 9 05.12.11 15:25 Сейчас в теме
Вещь однозначно полезная. Плюс автору. Сам нечто похожее писал в свое время, будет время - посмотрю обязательно поподробнее.
5. Boroda 90 05.12.11 21:54 Сейчас в теме
Круто! Надо будет обязательно посмотреть и использовать! Спасибо и за обработки, и за идею.
6. Lacrimosa0000 99 06.12.11 15:40 Сейчас в теме
Сама думала о реализации подобного функционала. Интересно будет посмотреть наработки автора.
7. mvmaxim 31 07.12.11 21:45 Сейчас в теме
Да, неплохо! Сама идея не нова, я и раньше нечто подобное видел, и сам делал, но продуманный подход к реализации заслуживает уважения!
Есть необходимость реализовать подобную систему без использования электронной почты, т.е. чтобы все взаимодействие происходило только внутри 1С. Пока получаются только кривоватые заплатки, законченной идеи как оформить в подсистему пока нет. Может кто-нибудь уже делал что-то такое (использование задач не совсем удовлетворяет потребности)?
8. _ink_ 08.12.11 14:33 Сейчас в теме
Задумка очень интересная и нужная, но в своей фирме заметил, что чем больше всяких окошек, алертов, и прочих напоминалок выскакивает, тем быстрее пользователи привыкают закрывать их не читая. Поэтому к информации, рассылаемой нужно очень обдуманно относиться и не слать всё подряд.
10. mvmaxim 31 10.12.11 09:22 Сейчас в теме
(8) - это лечится легко - хранится история алертов, либо они все дублируются на e-mail руководителя, и если сотрудник не выполнил задание в срок, а напоминание ему об этом было, с него удерживается штраф. У нас на предприятии так людей учили регулярно проверять свою электронную почту.
Как бы все-таки все свинтить только в 1С...
15. Odin-s 57 15.12.11 20:40 Сейчас в теме
(8) _ink_, Верно. Оптимальные формы алертов: 1. исключение/ошибка (т.е. уведомление о внештатной ситуации), 2. предупреждение о завершении какого-то срочного процесса, требующее реакции пользователя и 3. регулярная отчетность, которую можно подготовить без участия пользователя. Такие алерты не глядя не закроешь :)
9. babylon_5 55 09.12.11 13:19 Сейчас в теме
Идея действительно классная. Буду тестить.
11. Makushimo 160 10.12.11 12:51 Сейчас в теме
Шикарная идея
однозначно использую
спасибо.
12. V_V_V 15.12.11 17:29 Сейчас в теме
Идея хорошая.
Версия 8.2 установилась в режиме совместимости с 8.1. Это только у меня так или так и должно быть?
16. Odin-s 57 15.12.11 20:45 Сейчас в теме
(12) V_V_V, я сейчас перечитал описание своей публикации и понял, что немного переборщил - система не является полностью универсальной, т.к. требует наличие типовой конфигурации для реализации всего замысла. Т.е. как самостоятельная конфигурация ценности не представляет - поэтому не важно, в каком режиме она устанавливается :)
Кстати, мне дали разумный совет интегрировать эту подсистему с БСП - вот это, как раз, будет универсальным решением (по крайней мере, я на это надеюсь - вопрос с возможностью интеграции ещё не изучал).
13. V_V_V 15.12.11 17:53 Сейчас в теме
Прочитал "Так же в этом модуле находится простая процедура, конвертирующая ТабДок любой сложности в html-код". В Модуле паУниверсальныеМеханизмыСервис ничего подобного не нашел, но в Модуле паУправлениеАлертами есть ВернутьТекстАлертаВHTML - это оно?
17. Odin-s 57 15.12.11 20:47 Сейчас в теме
(13) V_V_V, да, это оно. Первая функция, с которой всё началось :)
18. DMSDeveloper 146 21.12.11 10:18 Сейчас в теме
Разработка как раз в тему. Нужно что то подобное. только задача несколько другая. Нужно получать каждый день данные из центра, парсить их и рассылать ответственным.

А в самой подсистеме данные созданных алертов не хранятся?
Если нет, то стоит подумать над такой возможностью. ИМХО.
19. Saili 20.01.12 10:48 Сейчас в теме
Спасибо. Интересная разработка и полезная. С хорошими перспективами развития. Очень в тему.
Что-то такое действительно нужно.
20. scape 282 22.02.12 10:13 Сейчас в теме
А по русски нельзя было назвать, система уведомлений например. Совсем сбрендили уже с английскими словами уродцами )-:
Оставьте свое сообщение