19.03.2012, 16:40 | #1 |
Участник
|
Дублирование действий бизнес процесса
Господа, добрый день.
Есть такая проблема. Есть сущность, каждый час процесс обновляет поле дата, и апдейтит сущность. В тоже время есть бизнесс процесс - который ловит айдейт, но только одного булевского поля, и если оно равно "да" создает другую сущность. Такая проблема. Когда каждый час процесс обновляет поле даты, он не трогает булевское поле, но бизнес процесс тем не менее подхватывает обновление и создает сущность. Как можно обойти ? Код привожу ниже X++: IQueryable<new_etap> Etaps = (from P in orgContext.CreateQuery<new_etap>() where P.statecode == 0 select new new_etap { Id = P.Id }); foreach (new_etap Etap in Etaps) { Etap.new_nachalo_prognoz = DateTime.Now(); orgContext.UpdateObject(Etap); orgContext.SaveChanges(); } |
|
19.03.2012, 17:14 | #2 |
Участник
|
Как я понял Вы используете XrmClasses
Посмотрите они точно обновляют только new_nachalo_prognoz попробуйте изменить это на Entity. Думаю что проблема именоо с XrmClasses |
|
19.03.2012, 17:32 | #3 |
Участник
|
Да, обновляю только это поле.
Я извиняюсь, но не знаком с Entity. Могли бы подсказать ? Спасибо |
|
19.03.2012, 17:41 | #4 |
Участник
|
// инициализируем объект
Entity ent = new Entite(new_etap.EntityLogicalName); // Задаём ему ID ent.Id = "Подставте Сюда GUID // Заполняетм только ОДНО поле ent["new_nachalo_prognoz"] = new DateTime.Now; Обновляем service.Update(ent); Код набивал без среды. ДУмаю не все точно с регистром совпадает. Но думаю будет понятно |
|
|
За это сообщение автора поблагодарили: 2rik (1). |
19.03.2012, 18:01 | #5 |
Участник
|
Благодарю !)
Так все работает без проблем ) Супер |
|
|
|