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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.11.2009, 09:22   #20  
Tarasov E is offline
Tarasov E
Участник
Аватар для Tarasov E
 
100 / 11 (1) +
Регистрация: 01.09.2009
Доброе утро! Стал проверять передались ли параметры из CRM. Добавил код создания файла, и чтобы туда загонялся переданный параметр:
Код:
namespace BP_CRMScaner
{
    [CrmWorkflowActivity("Выполнить сканирование1", "Сканирование WEB-ресурсов")]
    public class Activity1 : SequenceActivity
    {
        protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext)
        {
            //получение контекста
            IContextService contextService = (IContextService)executionContext.GetService(typeof(IContextService));
            IWorkflowContext workflowContext = contextService.Context;
            //Зачем нужна эта строка?
            ICrmService service = contextService.Context.CreateCrmService(false);
            //Получаем идентификатор записи, породившей запуск бизнес-процесса
            Guid _entityid = workflowContext.PrimaryEntityId;
            string _entitytype = workflowContext.PrimaryEntityName;
            //указываем, какие атрибуты надо получить из CRM
            //ColumnSet cols = new ColumnSet();
            //cols.AddColumns(new string[] {"new_url"});
            //Указываем ID записи, у которой надо получить атрибуты
            TargetRetrieveDynamic targetRetrieve = new TargetRetrieveDynamic();
            targetRetrieve.EntityName = _entitytype;
            targetRetrieve.EntityId = _entityid;
            //устанавливаем свойства метода RetrieveResponse
            RetrieveRequest retrieve = new RetrieveRequest();
            retrieve.Target = targetRetrieve;//из какой записи берем
            retrieve.ColumnSet = new AllColumns();//что берем
            retrieve.ReturnDynamicEntities = true;//о_О

            RetrieveResponse retrieved = (RetrieveResponse)service.Execute(retrieve);
            //Получили саму запись
            DynamicEntity retrievedEntity = (DynamicEntity)retrieved.BusinessEntity;
            //Получили необходимые атрибуты записи
            string url = retrievedEntity.Properties.Contains("new_url") ? (string)retrievedEntity["new_url"] : string.Empty;
            
 StreamWriter Sw = new StreamWriter("\\\\Uch5\\SHARE\\1.txt");
            Sw.WriteLine(url);
            Sw.Close();
        
            //Здесь выполняется пользовательская логика
            
            return base.Execute(executionContext);
        }
Никакого файла на диске я не получил. Или так делать нельзя?

Последний раз редактировалось Tarasov E; 02.11.2009 в 10:04.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Бизнес-процесс висит в состоянии ожидания Evgenia_f Dynamics CRM: Функционал 70 21.12.2009 18:53
Странности бизнес-процесса на изменение атрибутов записи SLK Dynamics CRM: Функционал 6 19.05.2009 08:14
Событие "Назначение записи" для бизнес-процесса Lazarus Dynamics CRM: Функционал 1 22.01.2009 19:54
Работает неопубликованный бизнес-процесс sergeyjb Dynamics CRM: Разработка 1 22.12.2008 09:16
Бизнес-процесс и список ожидания Evgenia_f Dynamics CRM: Разработка 16 07.10.2008 16:22

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 20:08.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.