|
![]() |
#1 |
Участник
|
Тут оказывается вот в чём проблема.В карточке ПРЕДЛОЖЕНИЕ есть поле Потенциальный клиент, в котором мы можем указывать либо Бизнес-партнёра(account), либо Контакт(Contact).
А у меня есть такой код: 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 = EntityName.account.ToString(); toparty.partyid.Value = quo.customerid.Value; mail.to = new activityparty[] { toparty }; Здесь формируется поле карточки ЭЛЕКТРОННОГО ПИСЬМА "Кому". Надо бы сделать так,чтоб он заполнялось в зависимости от выбранного Потенциального клиента(то есть бизнес-партнёр или контакт). Не могу сообразить,как это сделать. |
|
![]() |
#2 |
Kostya Afendikov
|
Цитата:
Сообщение от moskalevas
![]() Тут оказывается вот в чём проблема.В карточке ПРЕДЛОЖЕНИЕ есть поле Потенциальный клиент, в котором мы можем указывать либо Бизнес-партнёра(account), либо Контакт(Contact).
А у меня есть такой код: 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 = EntityName.account.ToString(); toparty.partyid.Value = quo.customerid.Value; mail.to = new activityparty[] { toparty }; Здесь формируется поле карточки ЭЛЕКТРОННОГО ПИСЬМА "Кому". Надо бы сделать так,чтоб он заполнялось в зависимости от выбранного Потенциального клиента(то есть бизнес-партнёр или контакт). Не могу сообразить,как это сделать. new ColumnSet(new string[] { "customerid" })); activityparty toparty = new activityparty(); toparty.partyid = new Lookup(); toparty.partyid.type = EntityName.<account OR contact>.ToString(); toparty.partyid.Value = quo.customerid.Value; в SDK смотрите примеры |
|
![]() |
#3 |
Чайный пьяница
|
Попробуйте так - вместо строки
toparty.partyid.type = EntityName.account.ToString(); напишите toparty.partyid.type = quo.customerid.type;
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
![]() |
#4 |
Участник
|
Спасибо!Воспользовался вашим советом.Теперь в зависимости от потенциального клиента(бизнес-партнёр или контакт) соответсвенно заполняется поле КОМУ карточки электронного письма.В карточке же Бизнес-партнёр есть поле Основной контакт(не всегда заполнено).Хотелось бы чтоб в создаваемое письмо в поле КОМУ передовался ещё этот параметр(основной контакт).
|
|
![]() |
#5 |
Чайный пьяница
|
Цитата:
Сообщение от moskalevas
![]() Спасибо!Воспользовался вашим советом.Теперь в зависимости от потенциального клиента(бизнес-партнёр или контакт) соответсвенно заполняется поле КОМУ карточки электронного письма.В карточке же Бизнес-партнёр есть поле Основной контакт(не всегда заполнено).Хотелось бы чтоб в создаваемое письмо в поле КОМУ передовался ещё этот параметр(основной контакт).
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
![]() |
#6 |
Участник
|
Цитата:
Сообщение от a33ik
![]() Следовательно без ещё одного запроса к вебсервису не обойдёшься. Вам необходимо проанализировать, что поле customerid заполнено бизнес-партнёром, далее получить его идентификатор, далее - при помощи Retrieve метода получить поля данного бизнес-партнёра, проанализировать, что поле контакта заполнено и уже после этого добавлять в поле To письма.
![]() Может подскажите?или хотя бы ссылочку какую-нибудь подкините |
|
![]() |
#7 |
Чайный пьяница
|
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
![]() |
#8 |
Участник
|
Так и не хочет работать.
Вот какой последний рабочий вариант заполнения поля 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. Но это не очень красиво и муторно. |
|
Теги |
c#, custom workflow action, plugin, workflow, reporting services, report |
|
|