Попробуйте инновационную платформу для разработки и запуска бизнес-приложений Comindware Business Application Platform

Запросить демонстрацию

Настройка периодических напоминаний об открытых задачах

Comindware Business Application Platform поддерживает в базовой конфигурации отправку системных уведомлений (См. Настройка системных уведомлений ) пользователю по поставленной задаче или процессного уведомления (См. Настройка процессных уведомлений ) с информацией из бизнес-процесса.

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

Для данной настройки создайте 2 бизнес-процесса:

  • Поиск сотрудников для отправки напоминания
  • Оправка ежедневного напоминания

Первый процесс будет запускаться по таймеру ежедневно, например, в 7:00 и искать сотрудников, у которых есть открытые задачи в этот момент времени, и по каждому запускать параллельно в цикле подпроцесс «Отправка ежедневного напоминания», который в свою очередь будет формировать и отправлять перечень открытых задач сотрудника на эл. почту в виде таблицы.

 

Настройка процесса «Поиск сотрудников для отправки напоминания»

1. Создайте Шаблон процесса.

Создание шаблона процесса

2. В связанном с процессом шаблоне записи создайте атрибут:

  • Сотрудники (Sotrudniki) – вычисляемый атрибут типа Пользователь. Вставьте выражение:
 

@prefix cmw: <http://comindware.com/logics#>.

@prefix container: <http://comindware.com/ontology/container#>.

@prefix account: <http://comindware.com/ontology/account#>.

@prefix taskStatus: <http://comindware.com/ontology/taskStatus#>.

 

{

           ?class cmw:className "Account".

           ?value a ?class.

           ?value account:active true.

           not {?value cmw:isDisabled true.}.

           or {?tasks cmw:assignee ?value.}

           or {?tasks cmw:possibleAssignee ?value.}.

           ?tasks cmw:taskStatus taskStatus:inProgress.

}

3. Нарисуйте схему процесса по типу:

Типовая схема процесса

4. Настройте стартовое событие-таймер.

Настройка таймера

Примечание : если нужно, предусмотрите также простое стартовое событие для запуска процесса вручную без необходимости ожидания нового рабочего дня.

5. Настройте запуск повторно-используемого подпроцесса.

Данный шаг рекомендуется делать после настройки процесса «Отправка ежедневного напоминания».

Натройка подпроцесса

Вставьте следующее выражение:

 

from a in db-> Poiskisotrudnikovdlyaotpravkinapominaniya where a->id==$id select a->Sotrudniki

 

Настройка процесса «Отправка ежедневного напоминания»

1. Создайте Шаблон процесса.

Создание шаблона процесса

2. В связанном с процессом шаблоне записи создайте атрибуты:

  • Сотрудник (Sotrudnik) – атрибут типа Пользователь, кому будет отправляться напоминание;
  • Тело письма (body) – вычисляемый текстовый атрибут типа HTML с таблицей задач. Вставьте следующее выражение:
 

@prefix cmw: <http://comindware.com/logics#>.

@prefix string: <http://www.w3.org/2000/10/swap/string#>.

@prefix cmwstring: <http://comindware.com/logics/string#>.

@prefix object: <http://comindware.com/ontology/object#>.

@prefix configuration: <http://comindware.com/ontology/configuration#>.

@prefix taskStatus: <http://comindware.com/ontology/taskStatus#>.

 

{

           ?confid a configuration:Configuration.

           ?confid configuration:baseUri ?baseUri.

           ("Poiskisotrudnikovdlyaotpravkinapominaniya" "Sotrudnik") object:findProperty ?Sotrudnik.

 

           ?item ?Sotrudnik ?SotrudnikVal.

                      

    #First table

    ("<p style='font-size: 100%' >Перечень задач на исполнение</p>" "<table border='1' style='width: 60%; border-collapse: collapse; border: 1px solid black' ><tbody> <tr><td style='padding: 2px; width: 200px; border: 1px solid black'>Задача</td> <td style='width: 200px; padding: 2px; border: 1px solid black'>Срок</td></tr>") string:concatenation ?firstHeaderRow.

 

    from {

                       ?tasks a cmw:UserTask.

                       or {?tasks cmw:assignee ?SotrudnikVal.}

                       or {?tasks cmw:possibleAssignee ?SotrudnikVal.}.

                       ?tasks cmw:taskStatus taskStatus:inProgress.

                       ?tasks cmw:title ?title.

                       ?tasks cmw:id ?id.

        ("{0}" ?title) string:format ?titleVal.

        ("{0}" ?id) string:format ?idVal.

                      

                       or {?tasks cmw:dueDate ?dueDate.}

                       or {"" -> ?dueDate.}.

                      

        ("{0}" ?dueDate) string:format ?dueDateVal.

                      

        ("<tr><td class='A' style='padding: 2px; border: 1px solid black; '><a href='" ?baseUri "#task/" ?idVal "'>" ?titleVal "</a></td><td align='right' style='padding: 2px; border: 1px solid black; text-align: right'>" ?dueDateVal "</td></tr>") string:concatenation ?firstRow.

    } select ?firstRow -> ?firstFactrow.

    (" " ?firstFactrow) cmwstring:join ?firstFact.

    (?firstHeaderRow ?firstFact "</tbody></table> <br/>") string:concatenation ?first.

    ?first  -> ?value.

}

  • Кому (to) – вычисляемый текстовый атрибут с адресом эл. почты сотрудника. Вставьте следующее выражение:
 

$SotrudnikRef->cmw.account.mbox

3. Нарисуйте схему процесса по типу:

Типовая схема процесса

4. Настройте параметры отправки напоминания (См. Настройка События-отправка сообщения).

В выбранный шаблон сообщения настройте передачу значений соответствующих атрибутов шаблона записи.

5. Опубликуйте оба процесса и протестируйте

Перед началом тестирования проверьте работоспособность канала связи (См. Канал электронной почты) и правильность настройки исходящего пути передачи данных (См. Путь передачи электронной почты).

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

Вложения
У этой статьи нет вложений.
Обратная связь
Security Code
Статьи по теме
Настройка экспорта атрибутов разных типов
Просмотрено 36 раз с Fri, Jul 3, 2020

Проверка и публикация схемы процесса
Просмотрено 65 раз с Thu, Mar 12, 2020

Расширения Comindware - Примеры использования
Просмотрено 43 раз с Mon, Aug 3, 2020

Введение в управление кейсами
Просмотрено 66 раз с Thu, Mar 12, 2020

Вычисление гиперссылки на запись
Просмотрено 90 раз с Tue, Jun 16, 2020

Настройка атрибута с цветом
Просмотрено 67 раз с Thu, Jun 25, 2020

Работа со списком в пользовательском интерфейсе
Просмотрено 66 раз с Wed, Mar 11, 2020

Подпроцессы
Просмотрено 87 раз с Fri, Mar 13, 2020

Методы RESTful Web APIs
Просмотрено 123 раз с Fri, Jul 10, 2020

Простой шаблон экспорта
Просмотрено 102 раз с Fri, Mar 13, 2020


Исследования осуществляются <br>ООО «Колловэар» при грантовой <br>поддержке Фонда «Сколково»
Comindware