« Назад к Разработка в...

Настройка системы напоминаний в Adempiere

Введение

В Adempiere можно настроить рассылку напоминаний пользователям о любых событиях системы.

Общий алгоритм работы:

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

2. Указываем текст сообщения-напоминания.

3. Настраиваем правила сравнения текущих параметров системы с заданными параметрами. Текущие параметры системы определяются SQL-запросом к системе, сравнение с заданными параметрами можно указывать в группе операторов WHERE SQL-запроса.

4. Указываем пользователей – адресатов, кто будет получать данное сообщение системы.

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

Рассмотрим это более подробно.

Настройка системы напоминаний.

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

1. Сначала с помощью SQL-менеджера (например, PL/SQL Developer) напишем и отладим запрос к базе данных, который будет отображать список фамилий наших клиентов, до дней рождения которых осталось меньше 7 дней.

SELECT AD_User.Name, C_BPartner.Name, AD_User.Birthday,
31*(MONTHS_BETWEEN (CURRENT_DATE, AD_User.Birthday)-
12*(EXTRACT (YEAR FROM CURRENT_DATE)-EXTRACT (YEAR FROM AD_User.Birthday)-1)) FROM AD_User, C_BPartner
WHERE AD_User.C_BPartner_Id = C_BPartner.C_BPartner_Id
AND (31*(MONTHS_BETWEEN (CURRENT_DATE, AD_User.Birthday)-
12*(EXTRACT (YEAR FROM CURRENT_DATE)-EXTRACT (YEAR FROM AD_User.Birthday)-1)))<=7

2. Зайдём в систему Adempiere с ролю администратора владельца, например Demo_Admin и откроем окно Тревога в меню «Анализ эффективности бизнеса -> Настройка анализа эффективности бизнеса». Заполним название тревоги/напоминания и текст сообщения тревоги пользователю, как показано на рисунке

3. В поле Процессор тревоги правой кнопкой мыши вызовем функцию «Рассмотреть».

4. В открывшемся окне Процессора тревоги заполним поле Название. А в поле Планирование правой кнопкой мыши вызовем функцию «Рассмотреть».

5. В окне Планирование укажем название и другие поля:

- Тип расписания – Частота;

- Тип частоты – День;

- Частота – 1;

- Поставим галочки на днях недели с Пн по Пт;

- Назначенный час: 10;

- Назначенные минуты: 00;

как показано на рисунке.

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

Сохраняем документ Планирование и возвращаемся в документ Процессор тревоги

6. В документе «Процессор тревоги» обновляем поле «Планирование» и указываем в нём только что созданный планировщик. Сохраняем Процессор тревоги и возвращаемся в документ «Тревога».

7. В документе Тревога обновляем поле Процессор тревоги и указываем в нём только что созданный процессор тревоги. Сохраняем документ «Тревога» и переключаемся на его вкладку «Правило тревоги».

Указываем название правила, а в полях SELECT, FROM, WHERE указываем текст из соответствующей группы нашего запроса из п.1, как показано на рисунке.

Сохраняем документ и переключаемся на вкладку Получатель тревоги

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

9. Перезагружаем сервер приложения (без этого не работает).

10. Теперь, ежедневно 10 утра наш секретарь будет получать сообщение вида:

До дня рождения клиента осталось меньше 7 дней!
#1: ------------------
NAME = Петров Иван Васильевич NAME = ОАО "Универсал" BIRTHDAY = 1960-04-16

0 Вложения
24792 Просмотров
Среднее (0 Голоса)
Комментарии