09.06.2008, 14:35 | #1 |
Moderator
|
Изменение полей типа State или Status
Доброго времени суток коллеги. Ситуация следующая: не удается программно изменить значения полей типа State и Status.
Используется TargetUpdateDynamic. SetStateXResponse использовать неудобно, так как работа ведется с объектом DynamicEntity, а с ним, к сожалению, SetState работать не умеет. С другими полями проблем не возникает. Никаких ошибок сервер не выдает. Используется CRM 3.0
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
09.06.2008, 15:45 | #2 |
CRM
|
Делал так
X++: SetStateCampaignActivityRequest State = new SetStateCampaignActivityRequest();
State.CampaignActivityState = state;
State.CampaignActivityStatus = status;
State.EntityId = ent.activityid.Value;
SetStateCampaignActivityResponse stateSet = (SetStateCampaignActivityResponse)service.Execute(State); Цитата:
Сообщение от Артем Enot Грунин
Callout - расширения бизнес логикой платформы и с формой никак не связаны! Cрабатывать они должны всегда, например, при выходе из автономного режима.
Проблема может быть в том, что вы используете не те ф-ции. Формально событие изменения записи, смены состояния и переназначения - это разные события! Если вы просто подменяете GUID в коде, что вы и делаете, то событие будет UpDate!!! Чтобы сработало Assign надо использовать соответствующую ф-цию. Что-то вроде AccountTargetAssign, наверно - под рукой сейчас нет SDK.
__________________
MS CRM 3.0/4.0 Sharepoint 2003, MOSS 2007/2010 |
|
|
За это сообщение автора поблагодарили: Артем Enot Грунин (1). |
09.06.2008, 20:04 | #3 |
Moderator
|
Видимо мне пора обновить работе SDK. В рабочей версии написано, что данной ф-ции применительно к DynamicEntity нет. Что ж, спасибо за новость, однако вопрос был в другом: возможно ли изменить эти значения через Update или Create? Формально есть State - такой же атрибут записи, как и все остальные. Есть соответствующие ему тип Property, но отчего-то подменить его не удается. Я объясню зачем мне это: сейчас разрабатывается интеграция с другой системой. В ней отключение записи - простое изменение, и получая сообщение из этой системы мне совершенно не хочется анализировать значения атрибутов и кроме вызова основной ф-ции вызывать еще и SetState. Других коллаутов или бизнес-процессов на это событие не повешано, так что простая замена значений даже предпочтительнее вызова специализированных методов.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
10.06.2008, 06:30 | #4 |
CRM
|
Мне не удавалось это сделать простым Update, вот тут я впервые привлек Request/Response - методы.
Может у кого что и вышло, но не у меня
__________________
MS CRM 3.0/4.0 Sharepoint 2003, MOSS 2007/2010 |
|