AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 17.02.2009, 10:14   #1  
deniska is offline
deniska
Участник
 
17 / 10 (1) +
Регистрация: 16.02.2009
Проблема с CallerIdValue
Добрый день. Изучаю CRM 4.0. Взял пример автонумерации поля из книги. Подключил microsoft.crm.platform.callout.base.dll и microsoft.crm.sdk.dll. Возникла проблема с CallerId() и CallerIdValue.
Код:
             // Standard CRM Service Setup
             CrmService service = new CrmService();

             // We need a user that has global read access to the lead record so that we 
             // have the absolute maximum lead number. If all roles have global read privileges to 
             // the read value of the Lead, then this wouldn't be necessary.
             // For production, access this guid in a config file.
             Guid callerid = new Guid("A3222222-EEEE-AAAA-5555-000000000000");

            // Impersonate our global read user
              service.CallerIdValue = new CallerId();
              service.CallerIdValue.CallerGuid = callerid;
Возникают такие ошибки:
Error 1 CRM.Callout.CrmSdk.CrmService' does not contain a definition for 'CallerIdValue' and no extension method 'CallerIdValue' accepting a first argument of type 'Crm.Callout.CrmSdk.CrmService' could be found (are you missing a using directive or an assembly reference?)

Error 2 The type or namespace name 'CallerId' could not be found (are you missing a using directive or an assembly reference?)

Подскажите в чем проблема?
Старый 17.02.2009, 10:31   #2  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
!
Цитата:
Сообщение от deniska Посмотреть сообщение
Добрый день. Изучаю CRM 4.0. Взял пример автонумерации поля из книги. Подключил microsoft.crm.platform.callout.base.dll и microsoft.crm.sdk.dll. Возникла проблема с CallerId() и CallerIdValue.
Код:
             // Standard CRM Service Setup
             CrmService service = new CrmService();

             // We need a user that has global read access to the lead record so that we 
             // have the absolute maximum lead number. If all roles have global read privileges to 
             // the read value of the Lead, then this wouldn't be necessary.
             // For production, access this guid in a config file.
             Guid callerid = new Guid("A3222222-EEEE-AAAA-5555-000000000000");

            // Impersonate our global read user
              service.CallerIdValue = new CallerId();
              service.CallerIdValue.CallerGuid = callerid;
Возникают такие ошибки:
Error 1 CRM.Callout.CrmSdk.CrmService' does not contain a definition for 'CallerIdValue' and no extension method 'CallerIdValue' accepting a first argument of type 'Crm.Callout.CrmSdk.CrmService' could be found (are you missing a using directive or an assembly reference?)

Error 2 The type or namespace name 'CallerId' could not be found (are you missing a using directive or an assembly reference?)

Подскажите в чем проблема?
Калауты (и сборку с ними) сразу отбросьте, потому что они были в тройке и тпереь остальись только для поддержания старого функционала после апгрейдов.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 17.02.2009, 13:26   #3  
deniska is offline
deniska
Участник
 
17 / 10 (1) +
Регистрация: 16.02.2009
Проблема с CallerIdValue и CallerId. Есть пример в SDK 4.
Код:
public void SendEmail(Guid campaignActivityID)
{
   CrmService service = new CrmService();
   service.Credentials = 
      System.Net.CredentialCache.DefaultCredentials;

   service.CallerIdValue = new CallerId();
   // Replace the GUID with the GUID of your Microsoft Dynamics CRM
   // Administrator.
   service.CallerIdValue.CallerGuid =
      new Guid("FD80F8E8-C852-DA11-B1FB-0007E94D105B");

   SendEmailRequest req = new SendEmailRequest();
   req.EmailId = campaignActivityID;
   req.TrackingToken = "";
   req.IssueSend = true;

   try 
   {
      SendEmailResponse res =
         (SendEmailResponse)service.Execute(req);
   }
   catch (System.Web.Services.Protocols.SoapException er)
   {
      //Process any error messages here.
   }
}
и на строчке service.CallerIdValue = new CallerId(); возникают выше описанные проблемы.
Старый 17.02.2009, 14:14   #4  
Гуревич Денис is offline
Гуревич Денис
Участник
Лучший по профессии 2009
 
228 / 67 (3) ++++
Регистрация: 04.08.2008
Адрес: Москва
Похоже, в документации баг. Перенесли из SDK 3.0, забыли исправить.
Никакого CallerIdValue у CrmService в 4-ке нету.
Старый 17.02.2009, 17:41   #5  
Likefire is offline
Likefire
Заноза в заднице
Аватар для Likefire
MCBMSS
Лучший по профессии 2009
 
547 / 50 (3) ++++
Регистрация: 22.10.2007
Адрес: Москва
Записей в блоге: 1
Цитата:
Сообщение от Гуревич Денис Посмотреть сообщение
Похоже, в документации баг. Перенесли из SDK 3.0, забыли исправить.
Никакого CallerIdValue у CrmService в 4-ке нету.
Совершенно верно. Не далее чем сегодня рубился в теме: как вызвать службу от имени другого пользователя, не зная его пароля (не используя credentials). Багу в хэлпе к sdk 4.0 тоже обнаружил.
На самом деле нужно делать вот так:
Код:
CrmAuthenticationToken realToken = newCrmAuthenticationToken();
realToken.OrganizationName = GetCorrectOrganization();
realToken.CallerId = newGuid("2DA10BEB-9121-DD11-91D2-00155D70A555");
 
CrmService realService = newCrmService();
realService.Url = GetCorrectUrl("", 1);
realService.Credentials = new System.Net.NetworkCredential(GetDefaultUser(), GetUserPassword(), GetDomainName());
realService.CrmAuthenticationTokenValue = realToken;

Если раньше было свойство сервиса, то в четверке - айдишник вызывающего - свойство токена.
__________________
Лень мудрого человека - это необходимое средство нейтрализации кипучей активности руководящих им дураков!
За это сообщение автора поблагодарили: griefon (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Проблема с идентификацией офлайнового клиента на сервере. Что делать? Sinya Dynamics CRM: Администрирование 29 19.03.2009 12:49
Странная проблема с вводом дат William Orbit Dynamics CRM: Администрирование 10 26.02.2009 10:34
Проблема при создании мероприятия ShurikEv Dynamics CRM: Функционал 2 03.11.2008 18:26
Мир CRM: Проблема при переназначении объекта. Blog bot Dynamics CRM: Blogs 1 20.10.2008 09:28
Проблема с отправкой почты из CRM Zus Dynamics CRM: Администрирование 1 03.04.2007 07:37

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 02:08.