У системы нет сейчас логики по регистрации обращений на основе ящика, указанного в поле "Скрытая копия" в письме. 

 

Идея - реализовать БП, который будет смотреть на какой почтовый ящик пришло письмо и создавать обращения и который будет создавать обращение с определенной категорией (как обычно в зависимости от ящика, в которое упало письмо).

 

Само письмо я вижу справа в коммуникационной панели в определенном ящике. Но не понятно как искать эту связь. Как мне понять читая активность что это письмо пришло на такой-то ящик?

 

Кто-нибудь сталкивался с такой проблемой и решением?

Нравится

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

У нас в зависимости от ящика вычисляется SLA. Вот часть скрипта, в котором определяем все адреса:

 

	var activityId = Get<Guid>("UsrActivityId");
	var userConnection = Get<UserConnection>("UserConnection");
	var activityInfoQuery = new EntitySchemaQuery(userConnection.EntitySchemaManager, "Activity");
	activityInfoQuery.AddColumn("Recepient");
	activityInfoQuery.AddColumn("CopyRecepient");
	activityInfoQuery.AddColumn("BlindCopyRecepient");
	var activity = activityInfoQuery.GetEntity(userConnection, activityId);
	if (activity == null) {
		return true;
	}
	string recepientEmail = activity.GetTypedColumnValue<string>("Recepient");
	string ccEmail = activity.GetTypedColumnValue<string>("CopyRecepient");
	string bccEmail = activity.GetTypedColumnValue<string>("BlindCopyRecepient");
 
	if (string.IsNullOrEmpty(recepientEmail) && string.IsNullOrEmpty(ccEmail) && string.IsNullOrEmpty(bccEmail)) {
		return true;
	}
	var emails = recepientEmail + ";" + ccEmail + ";" + bccEmail;
	var emailsArr = emails.Split(';');
	var mailBoxes = new object[emailsArr.Length];
	for (int i = 0; i < mailBoxes.Length; i++) {
		if (!string.IsNullOrEmpty(emailsArr[i])) {
			mailBoxes[i] = Terrasoft.Configuration.ActivityUtils.ExtractEmailAddress(emailsArr[i]);
		}
	}





 

Судя по по бизнес процессу "Регистрация обращения по входящему письму" (IncidentRegistrationFromEmailProcess), то обращения регистрироваться должны.

Есть только ограничения по регистрации обращений из "автоматических писем".

Новак Руслан,

вот только обращения не регистрируются. Поддержка подтвердила что такой логики нет 

Владимир Соколов,

подскажи, пожалуйста, меня интересует есть ли возможность настроить регистрацию в БП или надо обязательно лезть в код) 

Миронова Татьяна,

 

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

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



Но там всё довольно завёрнуто, потому мы заново определяем SLA после того, как определено по умолчанию коробочными методами.



Это сделано в БП, но всё равно без кода в нём не обойтись, чтобы распарсить адреса

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

Добрый день, коллеги.

Была простая задача - отправить автоматическое сообщение с шаблоном письма в  зависимости от стадии. Для стадии 1 свой шаблон, для стадии 2 свой шаблон.

Задача простая , решил ее созданием двух   простых БП где стартовый сигнал изменение записи на определенную стадию. БП работает быстро и четко.

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

Как  я вижу альтернативное  решение.

Создается БП ,  в нем два стартовых сигнала на изменение записи (стадия 1, стадия 2) От них идет поток в исключающий шлюз ИЛИ. Далее процесс ветвится на два потока ,  условия перехода по потоку что идентификатор записи равен занчению из справочника (стадия 1, стадия 2) . И на каждом потоке выполняется задача по отправке БП. 

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

Нравится

4 комментария
Лучший ответ

Марк нестеров,

Нет, для этого можно дополнить существующий справочник стадий обращения. (Или создать новый, если вдруг надо отправлять не только исполнителю, но и кому-то ещё). И в нём добавить поле "Шаблон". И дальше уже в БП определять, по какому шаблону на данной стадии отправлять сообщение.



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

Можно в справочнике стадий добавить поле - ссылку на шаблон

И в БП вычитывать шаблон из этого справочника для текущей стадии, чтобы по нему отправить сообщение.

Добрый день.

Спаси за совет.

Но я не совсем понял . Вы имеет ввиду справочник  правила уведомления контакта ? 

Где задаются правила какой шаблон в зависимости от стадии обращения отправлять ?

 

Если вы это имелии виду , то мне не совсем подходит . 

Так как уведомления я должен отправить исполнителю. 

 

Марк нестеров,

Нет, для этого можно дополнить существующий справочник стадий обращения. (Или создать новый, если вдруг надо отправлять не только исполнителю, но и кому-то ещё). И в нём добавить поле "Шаблон". И дальше уже в БП определять, по какому шаблону на данной стадии отправлять сообщение.



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

А можно просто в кейсе добавить шаг "отправить Email". и для каждой стадии прописать свой шаблон. Отправку сделать автоматически и сразу же при переходе на стадию.

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

Добрый день! Возникла след. особенность: при осуществлении переписки между клиентом и пользователем в Creatio - у клиента не группируются письма по общей Теме в его почтовом клиенте. 

 

То есть в outlook сделана группировка и она работает, кроме входящих писем с Creatio. Каждое входящее письмо из Creatio приходит в отдельной группировке. 

 

Может быть кто-нибудь знает как Creatio влияет на эти письма, что они не группируются в outlook ?

Нравится

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

Татьяна, добрый день!



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

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

Привет всем! У меня цель аналогична в посте https://community.terrasoft.ru/questions/kak-massovo-sdelat-pisma-obrab…

 

Действовала по инструкции, создала БП по изменению признака "Нуждается в обработке" == False в активностях.

 

После выполнения процесса в активностях поле изменилось, но вот в коммуникационной панели письма не ушли из "Необработанных".

 

Сможете помочь? Или обраться в службу тех поддержки?

Нравится

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

Добрый день . 

Есть стандартный БП Запуск процесса Отправка email сообщения группе о назначении обращения. Работает отлично. Но начиная с версии 7.17 можно отправлять вложения в  ходе БП.

Кто подскажет как модернизировать стандартный БП, что бы вложения отправлялись ? 

 

UserConnection userConnection = UserConnection;

if (userConnection.CurrentUser.ConnectionType == UserType.SSP) {

    userConnection = userConnection.AppConnection.SystemUserConnection;

}

var senderEmail = Terrasoft.Core.Configuration.SysSettings.GetValue(userConnection, 

    "SupportServiceEmail", string.Empty);

if (userConnection.GetIsFeatureEnabled("EmailMessageMultiLanguage") || userConnection.GetIsFeatureEnabled("EmailMessageMultiLanguageV2")) {

    var caseRecordId = (StartSignal1.RecordId != Guid.Empty)

        ? StartSignal1.RecordId 

        : StartSignal2.RecordId;

    var esq = new EntitySchemaQuery(userConnection.EntitySchemaManager, "Case");

    esq.AddColumn("Group");

    var caseEntity = esq.GetEntity(userConnection, caseRecordId);

    if (caseEntity != null) {

        var adminUnitEsq = new EntitySchemaQuery(userConnection.EntitySchemaManager, "SysAdminUnit");

        adminUnitEsq.UseAdminRights = false;

        var emailColumnName = adminUnitEsq.AddColumn("Contact.Email").Name;

        var groupId = caseEntity.GetTypedColumnValue("GroupId");

        adminUnitEsq.Filters.Add(adminUnitEsq.CreateFilterWithParameters(FilterComparisonType.Equal, "[SysUserInRole:SysUser].SysRole", groupId));

        var collection = adminUnitEsq.GetEntityCollection(userConnection);

        var result = string.Join(";", collection.Select(e => e.GetTypedColumnValue(emailColumnName)));

        if (!string.IsNullOrWhiteSpace(result)) {

            var emailTemplateSender = new Terrasoft.Configuration.EmailWithMacrosManager(userConnection);

            var emailTemplateId = Terrasoft.Configuration.CaseConsts.GroupTemplateId;

            if (userConnection.GetIsFeatureEnabled("EmailMessageMultiLanguageV2")) {

                emailTemplateSender.SendEmailFromTo(caseRecordId, emailTemplateId, senderEmail, result);

                return true;

            } else {

                var emailTemplateStore = new Terrasoft.Configuration.EmailTemplateStore(userConnection);

                var emailTemplateLanguageHelper = new Terrasoft.Configuration.EmailTemplateLanguageHelper(caseRecordId, userConnection);

                var languageId = emailTemplateLanguageHelper.GetLanguageId(emailTemplateId);

                var templateEntity = emailTemplateStore.GetTemplate(emailTemplateId, languageId);

                emailTemplateSender.SendEmailFromTo(caseRecordId, templateEntity.PrimaryColumnValue, senderEmail, result);

            }

        }

    }

} else {

    Guid sendEmailToCaseGroup = new Guid("C68F5A4E-AD06-4C83-88C4-040D2480FACB");

    var manager = userConnection.ProcessSchemaManager;

    var processSchema = manager.GetInstanceByUId(sendEmailToCaseGroup);

    if (ProcessSchemaManager.GetCanUseFlowEngine(userConnection, processSchema)) {

        var flowEngine = new FlowEngine(userConnection);

        Dictionary parameter = new Dictionary();

        parameter.Add("CaseRecordId", CaseRecordId.ToString());

        flowEngine.RunProcess(processSchema, parameter);

    } else {

        var moduleProcess = processSchema.CreateProcess(userConnection);

        if (processSchema.Parameters.ExistsByName("CaseRecordId")) {

            moduleProcess.SetPropertyValue("CaseRecordId", CaseRecordId);

        }

        moduleProcess.Execute(userConnection);

    }

}

return true;

Прикрепленные файлы

Нравится

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

Добрый день.

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

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

Добрый день!

Есть БП который обращается к веб сервису и получает коллекцию данных стандартными мададами  коллекцию не обработать и не записать в деталь.

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

К сожалению С# не знаю.

Вот пример ответа от веб сервиса.

 {

    "status": "Success",

    "customerActions": [

        {

            "ids": {

                "mindboxId": 

            },

            "actionTemplate": {

                "systemName": "IzmenenieStatusaPozicijZakaza",

                "name": "Изменение статуса позиций заказа в операции Возврат."

            },

            "dateTimeUtc": "2021-03-22T12:07:43.503Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "Administrator"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": -3.00,

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-22T12:00:52.853Z",

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 274870086

            },

            "actionTemplate": {

                "systemName": "SoxranenieZakazaVOperaciiProcessingCheka",

                "name": "Сохранение заказа в операции Процессинг чека авторизованного клиента (арбитраж на кассе)."

            },

            "dateTimeUtc": "2021-03-22T12:00:52.853Z",

            "pointOfContact": {

                "ids": {

                    "externalId": ""

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": 7.00,

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-22T12:00:52.853Z",

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 274848361

            },

            "actionTemplate": {

                "systemName": "SoxranenieZakazaVOperaciiProcessingCheka",

                "name": "Сохранение заказа в операции Процессинг чека авторизованного клиента (арбитраж на кассе)."

            },

            "dateTimeUtc": "2021-03-22T10:58:17.39Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "2277"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": 2.00,

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-22T10:58:17.39Z",

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 274845374

            },

            "actionTemplate": {

                "systemName": "SoxranenieZakazaVOperaciiProcessingCheka",

                "name": "Сохранение заказа в операции Процессинг чека авторизованного клиента (арбитраж на кассе)."

            },

            "dateTimeUtc": "2021-03-22T10:49:39.917Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "2277"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": 3.00,

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-22T10:49:39.917Z",

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 274776624

            },

            "actionTemplate": {

                "systemName": "SoxranenieZakazaVOperaciiProcessingCheka",

                "name": "Сохранение заказа в операции Процессинг чека авторизованного клиента (арбитраж на кассе)."

            },

            "dateTimeUtc": "2021-03-22T08:41:07.283Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "2277"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": 24.00,

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-22T08:41:07.283Z",

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 274722801

            },

            "actionTemplate": {

                "systemName": "SoxranenieZakazaVOperaciiProcessingCheka",

                "name": "Сохранение заказа в операции Процессинг чека авторизованного клиента (арбитраж на кассе)."

            },

            "dateTimeUtc": "2021-03-22T08:36:37.907Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "2277"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": 11.00,

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-22T08:36:37.907Z",

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                },

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": -24.00,

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-22T08:36:37.907Z",

                    "balanceChangeKind": {

                        "systemName": "RetailOrderPayment"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 274722578

            },

            "actionTemplate": {

                "systemName": "RetailOrderCancelled",

                "name": "Отмена заказа"

            },

            "dateTimeUtc": "2021-03-22T08:36:36.953Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "2277"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": -12.00,

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-22T08:36:36.953Z",

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 274721724

            },

            "actionTemplate": {

                "systemName": "SoxranenieZakazaVOperaciiProcessingCheka",

                "name": "Сохранение заказа в операции Процессинг чека авторизованного клиента (арбитраж на кассе)."

            },

            "dateTimeUtc": "2021-03-22T08:36:33.87Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "2277"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": 12.00,

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-22T08:36:36.953Z",

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 274651119

            },

            "actionTemplate": {

                "systemName": "SoxranenieZakazaVOperaciiProcessingCheka",

                "name": "Сохранение заказа в операции Процессинг чека авторизованного клиента (арбитраж на кассе)."

            },

            "dateTimeUtc": "2021-03-22T08:33:26.85Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "2277"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": 12.00,

                    "isAvailable": false,

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 274478987

            },

            "actionTemplate": {

                "systemName": "SoxranenieZakazaVOperaciiProcessingCheka",

                "name": "Сохранение заказа в операции Процессинг чека авторизованного клиента (арбитраж на кассе)."

            },

            "dateTimeUtc": "2021-03-22T08:31:41.013Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "2277"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": 12.00,

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-22T08:31:41.013Z",

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 274418137

            },

            "actionTemplate": {

                "systemName": "SoxranenieZakazaVOperaciiProcessingCheka",

                "name": "Сохранение заказа в операции Процессинг чека авторизованного клиента (арбитраж на кассе)."

            },

            "dateTimeUtc": "2021-03-22T08:22:29.52Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "2277"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": 12.00,

                    "isAvailable": false,

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 274414067

            },

            "actionTemplate": {

                "systemName": "SoxranenieZakazaVOperaciiProcessingCheka",

                "name": "Сохранение заказа в операции Процессинг чека авторизованного клиента (арбитраж на кассе)."

            },

            "dateTimeUtc": "2021-03-22T08:19:07.17Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "2277"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": 12.00,

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-22T08:19:07.17Z",

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 268222090

            },

            "actionTemplate": {

                "systemName": "UserBalanceChangedFromAdminSite",

                "name": "Корректировка баланса"

            },

            "dateTimeUtc": "2021-03-19T11:15:08.413Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "Administrator"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": -2.00,

                    "comment": "тестовые",

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-19T11:15:08.413Z",

                    "balanceChangeKind": {

                        "systemName": "Custom"

                    }

                }

            ]

        },

        {

            "ids": {

                "mindboxId": 264964916

            },

            "actionTemplate": {

                "systemName": "RetailOrderDelivered",

                "name": "Доставка заказа"

            },

            "dateTimeUtc": "2021-03-18T14:54:04Z",

            "pointOfContact": {

                "ids": {

                    "externalId": "2277"

                }

            },

            "customer": {

                "ids": {

                    "mindboxId": 2882934

                }

            },

            "customerBalanceChanges": [

                {

                    "balanceType": {

                        "ids": {

                            "systemName": "OsnovnojSchet"

                        },

                        "name": "Основной счет"

                    },

                    "changeAmount": 2.00,

                    "isAvailable": true,

                    "availableFromDateTimeUtc": "2021-03-18T14:54:04Z",

                    "balanceChangeKind": {

                        "systemName": "RetailOrderBonus"

                    }

                }

            ]

        }

    ]

}

 

Нравится

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

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

Зверев Александр,

 

Не работает данный подход процесс не передает данный в подпроцесс

 

Возможно, неправильно настроили параметр из коллекции в свойстве подпроцесса, проверьте.

Сейчас сервис выдает ошибку

Newtonsoft.Json.JsonException: Path returned multiple tokens.

   at Newtonsoft.Json.Linq.JToken.SelectToken(String path, Boolean errorWhenNoMatch)

   at Terrasoft.Services.Runtime.JsonResponseBodyParser.FillServiceParameterValues(IEnumerable`1 parameters, JToken responseToken, Dictionary`2 parameterValues)

   at Terrasoft.Services.Runtime.JsonResponseBodyParser.FillComplexArray(ServiceParameter parameter, JArray jsonArray)

   at Terrasoft.Services.Runtime.JsonResponseBodyParser.FillArrayValues(JToken token, ServiceParameter parameter, Type valueType)

   at Terrasoft.Services.Runtime.JsonResponseBodyParser.FillServiceParameterValues(IEnumerable`1 parameters, JToken responseToken, Dictionary`2 parameterValues)

   at Terrasoft.Services.Runtime.JsonResponseBodyParser.Parse(String body, Dictionary`2 dataAdapters)

   at Terrasoft.Services.Runtime.ServiceClientResponse.FillInBodyParameters(Dictionary`2 parameterValues)

   at Terrasoft.Services.Runtime.ServiceClientResponse.ParseResponse()

   at Terrasoft.Services.Runtime.ServiceClientResponse.get_ParameterValues()

   at Terrasoft.Services.WebServiceUserTaskImplementation.FillResponseParameters(IServiceClientResponse response, ProcessWebService userTask, IProcessParametersMetaInfo schema)

   at Terrasoft.Services.WebServiceUserTaskImplementation.Execute(ProcessWebService userTask, ProcessExecutingContext context)

   at Terrasoft.Core.Process.ProcessActivity.ExecuteElement(ProcessExecutingContext context)

   at Terrasoft.Core.Process.ProcessActivity.ExecuteItem(ProcessExecutingContext context)

   at Terrasoft.Core.Process.ProcessFlowElement.Execute(ProcessExecutingContext context)

Может  ктото может написать сценарий за оплату ?

А как Вы указали параметр для передачи в подпроцесс? Может, там что не так? И какие настройки получились у веб-сервиса?

дела в том что продлема в ответдела в том что продлема в ответи Bpm не может прочитать массив где есть вложенные колекции а внутри них есть еще вложенные колекции.

А когда их вынисиш в отдельную колекцию то bpm выдает ошибку и Bpm не может прочитать массив где есть вложенные колекции а внутри них есть еще вложенные пораметры

Александр Королев,

Александр Королев,

Как можно обработать такой массив в БП  я получаю его в ответе от веб сервиса 

"DateTime": [

                        {

                            "typeCode": "Message",

                            "value": "2021-03-26T13:00:07+0100"

                        },

                        {

                            "typeCode": "Transaction",

                            "value": "2021-03-25T13:46:29+0100"

                        }

Нужно только значение 

 {

                            "typeCode": "Transaction",

                            "value": "2021-03-25T13:46:29+0100"

                        }

Можно опять же вызовом подпроцесса, а в нём проверять: если код не тот, то ничего не делать.

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

Добрый день!

Меня интересует интеграция телефонии vonage с Creatio.  Есть ли какое-то готовое решение, модуль? 

 

Можно ли использовать встроенные Webitel коннектор?

 

Заранее спасибо!

Нравится

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

Татьяна, стандартной интеграции или дополнения для работы с телефонией Vonage в настоящий момент нет. Зарегистрировал пожелание. Вопрос по возможности работы с ней через Webitel лучше задать на их сайте.

Зверев Александр,

Александр поддержка вебитэл ответила, что "

Мы не можем интегрировать телефонию Vonage с Creatio через коннектор
так как Vonage не предоставляет SIP-линию для настроек »."

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

 

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

Значит, нет готового решения. Не нашёл ни тут в маркете, ни на сайте Vonage.

Общая статья о том, как система работает с телефонией, есть тут.

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

Добрый день!

Возник вопрос по использованию Advanced excel reports for Creatio

А именно правильно указывать формат колонки для числовых значений

Вот что говорит руководство

Изображение удалено.

Системная настройка выглядит так:

Изображение удалено.

Настройки отчета

Изображение удалено.

Результат:

Изображение удалено.

Что я делаю не так?)

Нравится

4 комментария
Лучший ответ

Добрый день.

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

Например, у меня в отчете есть поле с типом 'Дата/время'. По умолчанию оно будет выводиться в том формате, который указан в системной настройке 'Формат колонки с типом "Дата-время"' - 'dd.MM.yyyy HH:mm', но также я могу установить для этой колонки в конкретном отчете формат колонки в виде 'dd.MM.yyyy'.

А, например, для дробного поля Вы можете указать формат '0.000', тогда, как в системной настройке у Вас указан формат '0.00'. И таким образом, в этом отчете для этого дробного поля будет выводиться не 2, а 3 знака после запятой.

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

Добрый день.

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

Например, у меня в отчете есть поле с типом 'Дата/время'. По умолчанию оно будет выводиться в том формате, который указан в системной настройке 'Формат колонки с типом "Дата-время"' - 'dd.MM.yyyy HH:mm', но также я могу установить для этой колонки в конкретном отчете формат колонки в виде 'dd.MM.yyyy'.

А, например, для дробного поля Вы можете указать формат '0.000', тогда, как в системной настройке у Вас указан формат '0.00'. И таким образом, в этом отчете для этого дробного поля будет выводиться не 2, а 3 знака после запятой.

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

Спасибо, попробую.

Еще вопрос, очень часто при формировании отчета все зависает и бывает, что завершается ошибкой (скрин) , может тоже какие нибудь настройки не такие?

Алексей, добрый день!

 

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

Лазоренко Ирина,

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

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

Добрый день.

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

 

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

 

Прошу помочь с созданием процесса

Нравится

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

Обратите внимание на уже реализованный и доступный в маркете пример процесса «Уведомление о сроке реакции по обращению».

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

Другой вариант реализации — ежедневный (или чаще) запуск по таймеру процесса, который ищет подходящие записи и отправляет нужные письма. Примером может послужить процесс «Напоминание о дне рождения клиента».

спасибо, посмотрю

 

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

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

задача: создать разные шаблоны для разных групп ответственных

Нравится

4 комментария
Лучший ответ

К с,

Извините, не показалось у меня уведомление о сообщении.



Скрины прилагаю, но, возможно, у нас сложнее условия. Но кратко - вычисляем SLA по разным условиям, из него по параметрам определяем шаблон.

Сам механизм посылки писем взят из Creatio service (это не элемент Send email, а скрипт - он более гибкий).



 

Мы делали свой бизнес-процесс, в котором выбирали шаблон по нужным условиям. Соответственно, стандартный процесс делали неактивным.

Владимир Соколов,

спасибо!

 

К с,

можете скрин показать?

К с,

Извините, не показалось у меня уведомление о сообщении.



Скрины прилагаю, но, возможно, у нас сложнее условия. Но кратко - вычисляем SLA по разным условиям, из него по параметрам определяем шаблон.

Сам механизм посылки писем взят из Creatio service (это не элемент Send email, а скрипт - он более гибкий).



 

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