Взять значение поля объекта при удалении

Здравствуйте!

Возник вопрос по BPM Online:

Мне нужно брать определенные значения полей объекта при удалении записи, на событии [Deleting] (перед удалением записи) объекта прописываю так:

Guid DirectionId = Entity.GetTypedColumnValueGuid>("DirectionId");

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

Пробовал еще так:

var IdGuidUId = new Guid("59fbe2a2-8df3-4deb-941d-f378fff55c6e");
var IdGuidColumnName = Entity.Schema.Columns.FindByUId(IdGuidUId).Name;
var IdGuidobj = Entity.GetColumnValue(IdGuidColumnName);
string DirectionId = Convert.ToString(IdGuidobj);

Результат тот же.

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

Нравится

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

Вопрос все еще актуален!

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

Разобрался. Если кому то понадобиться , то решение такое: согласно базовому объекту, там есть проверка на то что загружена колонка или нет. Вероятнее все при удалении через Entity доступно только Entity.PrimaryColumnValue. Остальное все еще можно вытащить запросом из базы данных , поскольку сама запись еще не удалена.

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