Не срабатывают бизнесс процессы при програмном создании записей

Добрый вечер!

столкунлся со след проблемой

я создаю новые записи в бизнес процессе след образом.

var schema = _connection.EntitySchemaManager.FindInstanceByUId(entityToMapId);
var newEntity = schema.CreateEntity(_connection);
newEntity.SetDefColumnValues();
 
newEntity.SetColumnValue(columnSchema, creatioValue);
 
newEntity.Save();

при этом я так же подписался на сигнал создания записей для той же схемы таким образом

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

но этот сигнал не срабатывает при программном добавлении записей. что необходимо еще выполнить чтоб бизнесс процессы срабатывали должным образом?

Нравится

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

Добрый вечер.

 

Попробуйте вместо FindInstanceByUId использовать метод GetInstanceByName, как в примере ниже:

EntitySchema contactSchema = UserConnection.EntitySchemaManager.GetInstanceByName("Contact");
Entity contactEntity = contactSchema.CreateEntity(UserConnection);
contactEntity.SetDefColumnValues();
contactEntity.SetColumnValue("Name", "User01");
contactEntity.Save();

Напишите, если проблему удастся решить таким образом.

Добрый вечер.

 

Попробуйте вместо FindInstanceByUId использовать метод GetInstanceByName, как в примере ниже:

EntitySchema contactSchema = UserConnection.EntitySchemaManager.GetInstanceByName("Contact");
Entity contactEntity = contactSchema.CreateEntity(UserConnection);
contactEntity.SetDefColumnValues();
contactEntity.SetColumnValue("Name", "User01");
contactEntity.Save();

Напишите, если проблему удастся решить таким образом.

Спасибо за ответ! да, такой вариант сработал. в данный момент я выполняю такой код

 

var tempSchema = connection.EntitySchemaManager.FindInstanceByUId(entityId);
var schema = connection.EntitySchemaManager.GetInstanceByName(tempSchema.Name);

так как у меня хранится только гуид обьекта. есть лучше решение в данной ситуации?

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