|
20.10.2009, 14:58 | #1 |
Участник
|
Так и не хочет работать.
Вот какой последний рабочий вариант заполнения поля To: quote quo = (quote)crmservice.Retrieve(EntityName.quote.ToString(), workflowContext.PrimaryEntityId, new ColumnSet(new string[] { "customerid" })); 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 }; Help, please! Возникла бредовая идея создать поле в карточки предложения основной контакт. Туда с помощью яваскрипта и SOAP запроса передать значение с карточки контакта. И уже прям с карточки предложения выхватывать его и передавать в поле To. Но это не очень красиво и муторно. |
|
20.10.2009, 15:04 | #2 |
Чайный пьяница
|
Цитата:
Сообщение от moskalevas
Так и не хочет работать.
Вот какой последний рабочий вариант заполнения поля To: quote quo = (quote)crmservice.Retrieve(EntityName.quote.ToString(), workflowContext.PrimaryEntityId, new ColumnSet(new string[] { "customerid" })); 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 }; Help, please! Возникла бредовая идея создать поле в карточки предложения основной контакт. Туда с помощью яваскрипта и SOAP запроса передать значение с карточки контакта. И уже прям с карточки предложения выхватывать его и передавать в поле To. Но это не очень красиво и муторно.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
20.10.2009, 16:37 | #3 |
Участник
|
Пытался просто в поле To записать бизнес-партнёра,основной контакт(выбирал бизнес-партнёра.у которого поле основного контакта не пусто)
quote quo = (quote)crmservice.Retrieve(EntityName.quote.ToString(), workflowContext.PrimaryEntityId, new ColumnSet(new string[] { "customerid" })); account acc = (account)crmservice.Retrieve(EntityName.account.ToString(), workflowContext.PrimaryEntityId, 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; activityparty toparty1 = new activityparty(); toparty1.partyid = new Lookup(); toparty1.partyid.type = EntityName.account.ToString(); toparty1.partyid.Value = acc.primarycontactid.Value; mail.to = new activityparty[] { toparty, toparty1 }; |
|
20.10.2009, 16:49 | #4 |
Чайный пьяница
|
Обращаю Ваше пристальное внимание на следующие две строчки:
toparty1.partyid.type = EntityName.account.ToString(); toparty1.partyid.Value = acc.primarycontactid.Value; Просто немного внимательности и всё бы заработало.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
21.10.2009, 11:46 | #5 |
Участник
|
Товарищи!Так и застрял на этой маленькой проблеме.
Немного подправил код,получил следующее: 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; activityparty toparty1 = new activityparty(); toparty1.partyid = new Lookup(); toparty1.partyid.type = acc.primarycontactid.type; toparty1.partyid.Value = acc.primarycontactid.Value; mail.to = new activityparty[] { toparty, toparty1 }; Почему не хочет отрабатывать,не пойму... |
|
21.10.2009, 11:51 | #6 |
Чайный пьяница
|
А какая ошибка? Приведите Detail.InnerText генерируемого исключения.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
21.10.2009, 11:56 | #7 |
Участник
|
А как получить Detail.InnerText исключения?
В логах асинхронного сервиса пишет: [2009-10-21 11:33:11.2] Process:CrmAsyncService |Organization:e26d7e2d-33b0-417e-8875-7e0c045fda3e |Thread: 10 |Category: Platform.Workflow |User: 00000000-0000-0000-0000-000000000000 |Level: Error | WorkflowHost.OnWorkflowTerminated >Workflow terminated: {5E625FCB-13BE-DE11-8F8D-003048743D04} - at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall) at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at Microsoft.Crm.SdkTypeProxy.CrmService.Create(BusinessEntity entity) at Microsoft.Crm.Asynchronous.SdkTypeProxyCrmServiceWrapper.Create(BusinessEntity entity) at E_mailFromQuote.SendReport.Execute(ActivityExecutionContext executionContext) at System.Workflow.ComponentModel.ActivityExecutor`1.Execute(T activity, ActivityExecutionContext executionContext) at System.Workflow.ComponentModel.CompositeActivityExecutor`1.Execute(T activity, ActivityExecutionContext executionContext) at System.Workflow.ComponentModel.ActivityExecutor`1.Execute(Activity activity, ActivityExecutionContext executionContext) at System.Workflow.ComponentModel.ActivityExecutorOperation.Run(IWorkflowCoreRuntime workflowCoreRuntime) at System.Workflow.Runtime.Scheduler.Run() Состояние бизнес-процесса:ожидание |
|
Теги |
c#, custom workflow action, plugin, workflow, reporting services, report |
|
|