Аддоны
19
Июл
16

MS CRM accelerators: Business Productivity Workflow Tools

Акселератор Business Productivity Workflow Tools предоставляет дополнительные шага в workflow, что дает больше гибкости с точки зрения процессов, которыми разработчики могут управлять через workflow. Новые действия обеспечивают дополнительные возможности по обработке строк, математические функции и созданию HTML-гиперссылок.

Установка:

  1. Качаем Business Productivity Workflow Tools Accelerator;
  2. Запустите BusProd_Workflow_Tools_RTW.exe и выполните установку;
  3. В открывшейся в браузере странице перейдите по ссылке Source Code (в верхнем меню), затем жмите Custom Workflow Assembly;
  4. Откроется папка содержащая исходники программы. А в подпапке \bin\Debug лежит готовая сборка, которую нужно зарегистрировать как плагины. Скопируйте MSA_BusProd_Workflow.dll, лежащей в папке \bin\Debug, в папку C:\Program Files\Microsoft Dynamics CRM\Server\bin\assembly;



  1. Скачайте и запустите Plugin Registration Tool;
  2. Подключитесь к CRM серверу, введя соответствующие параметры;
  3. Далее жмите Register — Register New Assembly;
  4. В открывшемся окне регистрации в верхнем поле введите путь к MSA_BusProd_Workflow.dll, которую Вы скопировали в папку \Microsoft Dynamics CRM\bin\assembly (т.е. по дефолту полный путь будет C:\Program Files\Microsoft Dynamics CRM\Server\bin\assembly\microsoft.crm.sdk.dll);
  5. Во второй области отметьте галкой подтянувшийся плагин, а в третей отметьте в качестве места расположения DisK. Нажмите Register Selected Plugins;


На этом все 🙂 Можете смотреть дополнительные шаги в бизнес-процессах.

А теперь подробнее о самих шагах:

  • Record Functions: Retrieve the record ID (Guid) – возвращает гуид объекта над которым сейчас трудится бизнес-процесс;
  • Email Functions – генерирует ссылки (например, для отправки их по почте). Причем ссылки дружественного вида, т.е. в виде текста с гиперссылкой (не http://yandex.ru , а Поисковая система). Ссылки могу быть:
    • CRM’мные – ссылки на объекты CRM системы;
    • Общие – т.е. обычные ссылки на веб-страницы;
    • E-mail – ссылки на электронную почту;
  • String Functions: Concat – объединяет две строчки в одну;
  • Math Functions: Calculate – производит математические операции на двумя строчками:
    • Сложение (используется символ “+” );
    • Вычитание (используется символ “-”);
    • Умножение (используется символ “*”);
    • Деление (используется символ “/”);
    • Модуль (используется слово “MOD”);

Как использовать? Очень просто 🙂

  • Вставляете нужный Вам шаг (из дополнительных) в бизнес-процесс;
  • Задаете подходящее имя для этого шага (например, Считаем налог);
  • Задаете параметры этого шага;
  • Далее при работе с каким либо другим шагом, названия шагов этих дополнительных функций появится в списке Динамических (в настройках этих самых шагов). И соответственно результаты работы этих дополнительных шагов могут быть вставлены в поля на форме.



ЗЫ: Текущая версия работает только в локальной инсталляции Microsoft Dynamics CRM 4.0!

ЗЫ2: видео-инструкции по использованию новых шагов бизнес-процессов:

Комментарии (16)
  • Дмитрий 19.07.2009

    Спасибо большое за статью. Поставил плагин. Но функционал, который создает ссылку на CRM-обьект создает не ссылку, ведущую в «никуда».
    Делаю так: создаю ссылку на обьект Заказ, в динамическом поле выбираю поле Заказ, подписываю ссылку словом: ссылка на заказ. Далее создаю емейл и вставляю в тело письма, созданную ранее ссылку на заказ. Запускаю процесс. Но ссылка в письме при нажатии имеет примерно такой вид: Канал%20передачі%20даних%20м.Житомир%20-%20м.Кијв
    , тоесть словами написано значение того поля на которое я создавал ссылку а не ссылка по которой можно открыть карточку заказа. Помогите, почему так?

  • slivka_83 19.07.2009

    Добрый день 🙂

    При создании ссылки Вам необходимо прописать такой URL:
    http://servername/organization/SFA/salesorder/edit.aspx?id={0}

    Вместо id должен обязательно быть ноль 🙂 про то как образовывать другие адреса смотрите тут http://mmcrm.ru/?p=140

  • Дмитрий 19.07.2009

    Спасибо большое, все получилось 🙂

  • Дмитрий 19.07.2009

    Но продолжил дальше пользоваться и столкнулся с такой проблемой. У меня бизнес-процесс создан для объекта Заказ. Если в рамках этого процесса создаю с помощью данного плагина ссылку на Заказ, то следуя вашим советам все ок. Но когда далее создаю ссылку на созданную в рамках этого бизнес-процесса Задачу, то во-первых: выбираю в динамическом поле Просмотреть: объект ту Задачу на которую нужна ссылка, потом прописиваю ссылку на Задачу, сохраняю, если потом захожу в свойства этого шага, то в поле Просмотреть: остается объект Заказ, то есть объект Задача не сохраняется. Я бы не обратил на это внимание, если бы процесс работал. Запускаю его, ссылка создается, но при нажатии на нее появляется служебная ошибка майкрософт, о том что запись не доступна или у вас нет прав для ее просмотра.

    Что я делаю не так?

  • slivka_83 19.07.2009

    Если я не ошибаюсь, то ссылка создается только на ту запись в отношении которой работает бизнес-процесс (точнее пропичывается ее гуид)! т.е. в Вашем случаи в отношении заказа 🙂 Вобщем в итоге получается ссылка на задачу в качестве гуида у которой указан гуид заказа, а т.к. такой задачи нет, то формачка и сваливается с ошибкой! Можете нажать Ctrl + N чтобы отобраить адресную строку, в ней найдете гуид и сравните его с гуидом Заказа для которого у Вас срабатывает бизнес-процес!

  • Дмитрий 19.07.2009

    Жаль что так, ну и на том спасибо 🙂 очень полезная штука

  • Datfi 19.07.2009

    А можно таким же образом запихать ссылку на отчет?

  • slivka_83 19.07.2009

    Не совсем понимаю задачу? в бизнес-процессе нельзя содать отчет 🙂 Опишите более подробно что требуется 🙂

  • Datfi 19.07.2009

    Требуется вот что. Имеется отчет. Например Заказ. (стандартный отчет CRM)
    В создаваемом email передать строку содержащую ссылку на отчет по конкретному заказу.

  • slivka_83 19.07.2009

    Ну надо сделать примерно так:
    1.Создать отчет (или доработать существющий) который будет в условии where отбирать нужную запись Заказа (по гуиду, который поступает в качестве параметра).
    2. Опубликовать отчет (возможно его придется публиковать не в CRM, а в RS менеджере).
    3. Сформировать ссылку на отчет (этот акселератор может формировать гуид записи) и в этой ссылке передать ему параметр (гуид) через адресную строку.

    Вот пример передачи отчету параметров: http://mmcrm.ru/?p=638

  • Datfi 19.07.2009

    Круто! Получилось! Спасибо!

  • Дмитрий 19.07.2009

    А каким образом делать ссылку на пользовательскую сущность? они все почему то называются userdefined в адресной строке. И когда делаю ссылку на такой объект, потом при ссылке на него вылетает ошибка.

  • slivka_83 19.07.2009

    а какая ссылка у Вас получается при ощибке?

  • slivka_83 19.07.2009

    Нда… что-то не то 🙂
    Ладно давайте так:
    1. Откройте какую-нибудь запись кастомной сущности и скопируйте ссылку (и щапостите сюда).
    2. Ппишлит также ссылку сформированную бизнес-процессом!

  • костя 19.07.2009

    выдает ошибку при попытке зарегистрировать акселератор, в чем может быть проблема?

*

code