Добрый день!

На данный момент реализуем БП, который самостоятельно поздравляет сотрудника компании с днём рождения посредством e-mail, а так же поздравляет человека, который проработал в компании 5, 10, 15, 20 и т.д. лет.

Нам известно, что ВРМ анализирует даты в детали «Знаменательные события» и передаёт оповещение о ней в боковую панель.

Как можно сделать аналогичный механизм внутри БП?

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

Получается, нам нужно провести сравнение дат внутри БП, чтобы человеку, который родился 01.03.1990 пришло поздравление 01.03.2018

Нравится

1 комментарий

Кирилл, здравствуйте!

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

Для таких целей в БП целесообразней использовать элемент Задание - сценарий. Примеры работы с объектами в скрипте можно найти на Академии, нужный Вам объект - ContactAnniversary .

В рамках же скрипта можно выполнять и отправку письма для коллекции контактов, пример отправки по созданному id активности письма можно найти в базовом процессе "Отправка email сообщения контакту обращения" пакета Case.

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

Показать все комментарии

Добрый день!

Подскажите, как отключить уведомления о знаменательных событиях для всех пользователей bpm online SE 7.10 . Нигде в документации и в сообществе не нашел информации, как это сделать.

Нравится

3 комментария

Зайдите в конфигуратор, найдите БП с названием 'Generateanniversaryremindings’. Его надо отредактировать, добавив ему тэг ‘Business process’. После этого сохраняете, публикуете и выставляете версию как актуальную. После этого процесс будет виден в списке Process Library и его можно будет деактивировать. После всех манипуляций рекомендуется очистить кэш браузера.

Спасибо, помогло!

you are welcome

Показать все комментарии

Добрый день! Появилась такая задача: нужно при создании знаменательного события на детали контакта или контрагента создавать автоматически задачу по данному событию. в Террасофте реализован данный функционал, но он предусматривает только кнопку "Создать задачу", при нажатии на которую открывается окно c некоторой уже записанной информацией. На сколько я понимаю, надо добраться до кнопки "Создать задачу" из карточки создания "Знаменательного события". Подскажите у кого какие есть мысли по этому поводу. Может уже кто сталкивался с подобной задачей. Заранее спасибо!!

Нравится

2 комментария

Если задача должна автоматически, то можно на событие BeforePost для контакта ds_ContactAnniversary, для контрагента ds_AccountAnniversary

var TaskDataset = Services.GetNewItemByUSI('ds_Task');
TaskDataset.Append();
TaskDataset('ContactID') = Dataset('ContactID'); //для контакта
TaskDataset('AccountID') = Dataset('AccountID'); //для контрагента
TaskDataset('Title') = 'тра-ля-ля';
//ну и так далее (все необходимые поля)
TaskDataset.Post();

"Сазанов Александр Владимирович" написал:

Если задача должна автоматически, то можно на событие BeforePost для контакта ds_ContactAnniversary, для контрагента ds_AccountAnniversary

var TaskDataset = Services.GetNewItemByUSI('ds_Task');

TaskDataset.Append();

TaskDataset('ContactID') = Dataset('ContactID'); //для контакта

TaskDataset('AccountID') = Dataset('AccountID'); //для контрагента

TaskDataset('Title') = 'тра-ля-ля';

//ну и так далее (все необходимые поля)

TaskDataset.Post();

Большое спасибо за ответ! Вы мне очень помогли!)

Показать все комментарии

Здравствуйте. Однажды я уже писала о знаменательных событиях в Террасофт (https://community.terrasoft.ua/forum/topic/5574).
Самое интересное, что на тот момент я была уверена , и сотрудники техподдержки видимо тоже, что нормальных напоминаний без доработок в нашей версии 3.3 получить нельзя.
Я решила отложить эту задачу, и просто не занималась этим вопросом больше чем полгода.
А потом случайно в системных настройках увидела переменную CheckAnniversaryForDays.
В комментарии к ней написано - " Проверяется наличие знаменательных событий за указанное количество дней. Если установлено значение 0, проверка не будет осуществлена".
В этом поле по умолчанию стояло значение именно 0.
Очень интресная переменная.
Я поискала ее использование в скриптах. И, о чудо: нашла две функции, CheckAnniversary и SetNewRemindingByAnniversary в скрипте scr_Main. Получается, что если переменная CheckAnniversaryForDays не равна 0, то при открытии Террасофт пользователю по его контактам должно приходить напоминание по знаменательным событиям его контакта!
После этого я радостно изменила 0 в переменной на 2. Но при тесте напоминания не пришли.
Я внимательно пречитала скрипт и исправла проверку условия CheckAnniversaryForDays == DayDateDiff на CheckAnniversaryForDays >= DayDateDiff. Напоминания стали приходить!
Правда, не правильно. Если сегодня 07.09.2011, то напоминания о дне рождения с датой 09.09.1960 не приходят, а о событии 09.09.2011 и о событии 05.09.2011 приходят.
Поэтому изменить скрипт пришлось еще раз:

if (AnniversaryDate>=SystemDate) {
if (CheckAnniversaryForDays >= DayDateDiff) {
SetNewRemindingByAnniversary(AnnyversaryDataset);
}
}
 if (AnniversaryDate var i=0;
DayDateDiff = -DayDateDiff ;
while (DayDateDiff0){
 DayDateDiff = DayDateDiff +365;
 i=i+1;
 if (i==4){
DayDateDiff = DayDateDiff+1;
 i=0;
}
}
if (CheckAnniversaryForDays >= DayDateDiff) {
SetNewRemindingByAnniversary(AnnyversaryDataset);
}
}  

Вот в таком написании напоминания приходят! и по событию 09.09.1960 ! и по 09.09.2011. И не приходят по событию 05.09.2011.

Надеюсь, что это поможет всем тем, кто ее не разобрался с этой проблемой сам.

Нравится

0 комментариев
Показать все комментарии

Всем добрый день.
Возможно, что эта тема не нова, и я повторюсь, но написать все же хочется.
Поделитесь, пожалуйста, опытом - как Вы используете деталь Знаменательные события в Контактах и Контрагентах?

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

Как это получается? Вы можете написать, например, что День рождения у Вашего клиента 01.11.1980г и еще добросовестно заполнить эту деталь у 5000 Ваших клиентов. Но с этой информацией ничего не произойдет далее, и Вы каждый день будете просматривать список Ваших клиентов, выискивая у кого же в ближайшем будущем День рождения.
Нет, Вы, конечно, можете поставить себе отдельно вручную задачу в расписание. Такая функция есть. Заметьте, что это 5000 задач, поставленных вручную.
Задача, правда, возникнет автоматически 01.11.2010, а не 01.11.2011. И если ответственный не Вы, то придется поменять ответственного в самой задаче. Но это уже детали, ведь Вы достигли цели.
Хорошо еще то, что мы в своей базе дописали себе возможность ставить циклические задачи, т.е. я создавая задачу укажу, что повторять эту задачу надо раз в год 50 лет подряд.

Но возможно кто-то из Вас когда-либо пользовался Outlook. Тогда вы знаете, что там тоже есть знаменательные события и расписание с задачами. Если не знаете, я Вам расскажу как это работает: просто заполнив поле День рождения контакта Вы сразу получите в своем расписании циклическое событие! Одно заполненное поле!

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

Чего бы хотелось ? Хотелось бы, чтобы напоминания (задачи) формировались ответственному автоматически после установки знаменательного события на детали.
Может быть, кто-то уже реализовывал это у себя в базе?

Нравится

5 комментариев

Виктория, здесь один из вариантов решения.

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

Федор Владимирович, это решение появится в следующей версии, 3.4.0. В конфигурацию Terrasoft будет добавлен так называемый Job-менеджер, с помощью которого можно будет запланировать на сервере создания напоминаний по знаменательным событиям, а также любые другие действия, которые должны периодически выполняться. На данный момент эта функциональность реализована в TS XRM Bank 3.3.2, а в версии 3.4.0 будет добавлена и в остальные продукты Terrasoft.

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

"Тихенко Виктория" написал:Возможно, это можно включить в какое-то бесплатное обновление

Ну самостоятельно часть функционала для себя завсегда руками в виде сервисов из конфигурации можно перенести:wink:

Показать все комментарии