|
![]() |
#1 |
Чайный пьяница
|
Код обращения к вебсервису CRM оборачиваете конструкцией
try { //обращение к вебсервису } catch(SoapException sexc) { throw new Exception(sexc.Detail.InnerText); }
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
![]() |
#2 |
Участник
|
![]()
Коллеги, я знаю два способа обновить кастомный атрибут какой-то стандартной сущности через плагин, зарегистрированный на Post Stage:
1) TargetUpdate DynamicEntityА есть ли еще какие-нибудь способы? P.S. утомился каждый раз писать страницу кода для первого и задолбался для второго.
__________________
CRM programmer |
|
![]() |
#3 |
Чайный пьяница
|
Цитата:
Сообщение от SVK
![]() Коллеги, я знаю два способа обновить кастомный атрибут какой-то стандартной сущности через плагин, зарегистрированный на Post Stage:
1) TargetUpdate DynamicEntityА есть ли еще какие-нибудь способы? P.S. утомился каждый раз писать страницу кода для первого и задолбался для второго. По поводу Update - зачем пользоваться TargetUpdate? Update метод может обрабатывать и DynamicEntity...
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
За это сообщение автора поблагодарили: SVK (1). |
![]() |
#4 |
Участник
|
Добрый день!
Программка заработала.Только не получается сделать проверку.Необходимо,если в карточке account поле primarycontactid пусто,то в карточке электронного письма заполнять поле to бизнес-партнёром,если же не пусто, то ещё заплнять поле cc(копия) основным контактом.Написал следующую проверку,но запуская бизнес процесс на выполнение в состоянии пишется ожидание и всё. quote quo = (quote)crmservice.Retrieve(EntityName.quote.ToString(), workflowContext.PrimaryEntityId, new ColumnSet(new string[] { "customerid" })); Guid quoid = quo.customerid.Value; account acc = (account)crmservice.Retrieve(EntityName.account.ToString(), quoid, new ColumnSet(new string[] { "primarycontactid" })); activityparty toparty = new activityparty(); toparty.partyid = new Lookup(); toparty.partyid.type = quo.customerid.type; toparty.partyid.Value = quo.customerid.Value; mail.to = new activityparty[] { toparty }; if (acc.primarycontactid.IsNull == false) { activityparty toparty1 = new activityparty(); toparty1.partyid = new Lookup(); toparty1.partyid.type = EntityName.contact.ToString(); toparty1.partyid.Value = acc.primarycontactid.Value; mail.cc = new activityparty[] { toparty1 }; } else { mail.cc = new activityparty[] { toparty }; } Для варианта,когда у бизнес-партнёра заполнено поле "основной контакт" - работает. |
|
![]() |
#5 |
Чайный пьяница
|
Цитата:
Сообщение от moskalevas
![]() Добрый день!
Программка заработала.Только не получается сделать проверку.Необходимо,если в карточке account поле primarycontactid пусто,то в карточке электронного письма заполнять поле to бизнес-партнёром,если же не пусто, то ещё заплнять поле cc(копия) основным контактом.Написал следующую проверку,но запуская бизнес процесс на выполнение в состоянии пишется ожидание и всё. quote quo = (quote)crmservice.Retrieve(EntityName.quote.ToString(), workflowContext.PrimaryEntityId, new ColumnSet(new string[] { "customerid" })); Guid quoid = quo.customerid.Value; account acc = (account)crmservice.Retrieve(EntityName.account.ToString(), quoid, new ColumnSet(new string[] { "primarycontactid" })); activityparty toparty = new activityparty(); toparty.partyid = new Lookup(); toparty.partyid.type = quo.customerid.type; toparty.partyid.Value = quo.customerid.Value; mail.to = new activityparty[] { toparty }; if (acc.primarycontactid.IsNull == false) { activityparty toparty1 = new activityparty(); toparty1.partyid = new Lookup(); toparty1.partyid.type = EntityName.contact.ToString(); toparty1.partyid.Value = acc.primarycontactid.Value; mail.cc = new activityparty[] { toparty1 }; } else { mail.cc = new activityparty[] { toparty }; } Для варианта,когда у бизнес-партнёра заполнено поле "основной контакт" - работает. Код: if (acc.primarycontactid.IsNull == false) Код: if (acc.primarycontactid != null)
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
![]() |
#6 |
Участник
|
Я имел ввиду xml обновление, не фетч, конечно.
А вот за Update - спасибо!
__________________
CRM programmer |
|
Теги |
c#, custom workflow action, plugin, workflow, reporting services, report |
|
|