Разработка
19
Сен
2

CRM 2011 Developers Toolkit

Developers Toolkit это набор инструментов встроенных (бесшовно) в Visual Studio 2010 предназначенных для быстрой разработки компонентов под CRM 2011.
Укрупненно, функционал Developers Toolkit включает в себя следующее:

  • Набор шаблонов решений и проектов Visual Studio для плагинов, кстомных Бизнес-процессов и Веб-ресурсов;
  • Автоматическая генерация кода и регистрация для плагинов;
  • Инструмент CRM Explorer который позволяет Вам взаимодействовать с Вашим экземпляром CRM;
  • Конфигурация CRM 2011 прямо из Visual Studio;
  • Упаковка компонентов, созданных в Visual Studio и развертывание их в CRM;
  • Возможность экспортировать управляемое или неуправляемое Решение CRM как часть компиляции. Таким образом, Вы могли бы написать скрипт для автоматической ежедневной компиляции.

Рассмотрим некоторые типичные сценарии работы с Developers Toolkit…

Для этого нам понадобятся:

Установка

CRM 2011 Developers Toolkit поставляется как часть CRM SDK (версии >5.05) в sdk\tools\developertoolkit. Для установки запустите CrmDeveloperTools_Installer.msi и нажмите несколько раз Next 🙂


Новое решение CRM

  • В Visual Studio 2010 перейдите File — New – Project;
  • В окне New Project перейдите: Visual C# — Dynamics CRM и выберете «New Visual Studio Solution Template for Dynamics CRM 2011». Этот шаблон содержит сразу все типы необходимых проектов для разработки CRM решений. Но Вы также может выбрать шаблон отдельного проекта: плагина, Бизнес-процесса или пакета;
  • Введите информацию для подключения к Вашему серверу CRM;
  • По умолчанию шаблон решения для CRM создаст для Вас проект Silverlight и сопутствующий Веб-проект.
    Примечание: Вам может и понадобиться проект Silverlight для Вашего решении, но в любом случаем проект Silverlight должен быть создан, чтобы сделать мастер закончил свою работу. Вы сможете позже удалить проекты Silverlight из решения и добавить в него другие проекты.

Если все пойдет хорошо, то мастер создаст решение, состоящее из следующих проектов:

Проект Роль в решении
CrmPackage Манифест проекта, который содержит все компоненты, которые будут развернуты в CRM и их настройки развертывания.
Примечание: этот проект ни в коем случае нельзя удалять.
Plugins Проект Plugins содержит базовый класс под названием Plugin. Он упростит Вам ввод «скелета» для нового плагина. Все классы плагина, сгенерированные через пункт Create Plug-in в CRM Explorer, будут «производными» из этого класса.
SilverlightApplication Демонстрационный проект Silverlight, который может использоваться в качестве начальной точки для разработки Вашего Веб-ресурса Silverlight.
SilverlightApplication.Web Сопутствующий Веб-проект, которые размещают вышеупомянутый проект Silverlight и может использоваться для его тестирования.
Workflow Проект Workflow поможет Вам разработать свои кастомные Бизнес-процессы CRM.
Примечание: CRM Microsoft Dynamics Online в настоящий момент не поддерживает кастомные Бизнес-процессы.



Использование «CRM Explorer»

CRM Explorer очень полезное окно, которое разработано, чтобы помочь Вам просматривать любые настраиваемые компоненты CRM. CRM Explorer представляет собой древовидный список, по которому Вы можете перемещаться, чтобы просмотреть компоненты Вашего решения.
В дополнение к функциям навигации CRM Explorer позволяет Вам открывать компонент решения CRM в браузере Visual Studio. Для этого достаточно дважды щелкнуть по соответствующему компоненту.


Другая замечательная особенность, предлагаемая CRM Explorer – Вы можете выполнять определенные задачи с помощью контекстного меню вывзываемого при щелкаете правой кнопкой по определенному элементу. Вот список наиболее типичных этих задач:

  • 1. Генерация CRM Service Proxy Classes:
    • В отношении: Entities;
    • Команда: Generate Wrapper;
    • Описание: Выполняет запуск CrmSvcUtil.exe для генерации прокси-классов строгих типов. Если у Вас будет только один проект плагина, то этот класс будет автоматически добавлен к этому проекту. Иначе появится диалоговое окно Generate Entity Wrappers, которое позволит Вам выбирать в какой проект будут добавлены созданные классы.


  • Создание плагина для объекта:
    • В отношении: какого-либо объекта;
    • Команда: Create Plugin;
    • Описание: Открывает диалоговое окно создания плагина. После задания параметров в этом диалоговом окне, будет сгенерирован новый класс плагина, на основе базового класса плагина.


  • Добавление компонентов Веб-ресурсов из CRM в пакет проекта:
    • В отношении: Веб-ресурса(ов);
    • Команда: Add to packaging project;
    • Описание: добавляет выбранный Веб-ресурс из организации CRM в проект CrmPackage.


  • Добавление, редактирования, удаление плагинов:
    • В отношении: какого-либо плагина;
    • Команды: Add Plugin, Edit Plugin, Delete Plugin;
    • Описание: добавление, удаление или редактирование плагина.

    Примечание: контекстное меню появится только если развернутая сборка входит в текущее решение VS.


  • Добавление, редактирования, удаление шагов плагина:
    • В отношении: какого-либо шага плагина;
    • Команды: Add Step, Edit Step, Delete Step;
    • Описание: добавление, удаление или редактирование шагов плагина.

    Примечание: контекстное меню появится только если развернутая сборка входит в текущее решение VS.


Использование проекта CrmPackage в Solution Explorer

Проект CrmPackage специально спроектированный шаблон Visual Studio для чтобы управления всеми компонентами решения CRM в одном месте:

  • Веб-ресурсы CRM имею определенные атрибуты метаданных, которые управляют тем, как к этим Веб-ресурсам можно получить доступ и как они управляться в CRM системе. Чтобы изменить атрибуты метаданных Веб-ресурса, достаточно выделить его в Solution Explorer и открыть окно Properties.
  • Веб-ресурс Silverlight – это специальный тип Веб-ресурса, который добавлен к проекту CrmPackage через узел Reference. Чтобы изменить атрибуты метаданных Веб-ресурса Silverlight, Вы должны развернуть узел Reference и выделить нужный элемент. После этого можете менять его метаданные в окне Properties.

Примечание: вышеупомянутые два подхода особенно полезны, если у Вас есть какие-либо файлы исходного кода, которые в настоящий момент еще не управляются CRM сервером, но которые Вы хотите опубликовать на CRM сервере. Тогда Вы можете использовать команду Add Existing Items, чтобы добавить их к проекту CrmPackage. После чего сможете задать необходимые атрибуты метаданных прежде развернуть их на CRM сервере.


Публикация изменений на сервере CRM

После того, как Вы закончили работу над своем решении для CRM, можно опубликовать на CRM сервере. Для этого нужно щелкнуть правой кнопкой по проекту CrmPackage — Deploy и все изменения, после того, как все проекты будут успешно скомпилированы, будут опубликованы на CRM сервере.


Комментарии (2)
  • Dmitry 19.09.2011

    привет!

    интересно, а после создание решения в VS и привязки его к решению CRM можно ли как-нибудь эту привязку изменить,
    например;
    решение VS привязано к решению 1 в орг 1
    как его перепривязать к решению 2 например в орг 2
    в настройках я не нашел где можно изменить параметры

  • slivka_83 19.09.2011

    Добрый день!

    К сожалению я плотно с этой тулзой не работаю, поэтому тонких подробностей не знаю 🙂

*

code