Подскажите пожалуйста кто может помочь в написании бизнес процесса?
1.Бизнес процесс должен запускаться в определенное время каждый день.
2.Он должен читать данные из определенных столбцов.
3.Он должен сравнивать значения из одного столбца и на основании сравнения подставлять почту ( если в столбце написана транспортная компания dpd то он будет подставлять почту это транспортной компании).
4.Процесс должен выполняться если заполнены определенные столбцы.
5. На основании полученных данных он должен отправлять письмо с данному в нужную транспортную компанию.
5.После выполнения процесса он должен вставлять ссылку на данное письмо в определенный столбец.
6.Он должен отправлять только те значения которые не были отправлены(не должен отправлять повторно одно и тоже)
3.Он должен сравнивать значения из одного столбца и на основании сравнения подставлять почту ( если в столбце написана транспортная компания dpd то он будет подставлять почту это транспортной компании).
var esq =new EntitySchemaQuery(userConn.EntitySchemaManager, "Схема из которой берем значения");
esq.Filters.Add(esq.CreateFilterWithParameters(FilterComparisonType.Equal, primaryColumn, primaryValue));//условия фильтрации
esq.AddAllSchemaColumns();//читаем все колонки, либо по необходимости только опеределенные через esq.AddColumn("Название колонки");var collection = esq.GetEntityCollection(userConn);foreach(var entity in collection){//пункт 4, делаем проверку на заполненность нужных полей//далее пункт 3 сравненияif(entity.GetTypedColumnValue<тип>("Нужная колонка")=="Нужному значению")//привести к одному типу в сравнении{//подставить почту//сформировать ссылку//записать ссылку в нужный столбец}}//пункт 6 отдельным процессом или подпроцессом в рамках этого процесса или же кодом сразу же отправку
3.Он должен сравнивать значения из одного столбца и на основании сравнения подставлять почту ( если в столбце написана транспортная компания dpd то он будет подставлять почту это транспортной компании).
var esq =new EntitySchemaQuery(userConn.EntitySchemaManager, "Схема из которой берем значения");
esq.Filters.Add(esq.CreateFilterWithParameters(FilterComparisonType.Equal, primaryColumn, primaryValue));//условия фильтрации
esq.AddAllSchemaColumns();//читаем все колонки, либо по необходимости только опеределенные через esq.AddColumn("Название колонки");var collection = esq.GetEntityCollection(userConn);foreach(var entity in collection){//пункт 4, делаем проверку на заполненность нужных полей//далее пункт 3 сравненияif(entity.GetTypedColumnValue<тип>("Нужная колонка")=="Нужному значению")//привести к одному типу в сравнении{//подставить почту//сформировать ссылку//записать ссылку в нужный столбец}}//пункт 6 отдельным процессом или подпроцессом в рамках этого процесса или же кодом сразу же отправку
Можно сделать без скриптов сравнение, если сравнивать записи по одной (примерная схема процесса приведена ниже)
Немного сложнее с отправкой e-mail, так как стандартный метод "отправить e-mail", к сожалению, не создаёт записи в Creatio, и нечего привязать в поле в качестве ссылки.
Потому здесь лучше использовать создание активности, а потом её отправка скриптом.
Если нужно больше помощи, обращайтесь лично, сделаем и объясним