Расширенная функциональность
15
Янв
0

Dynamics 365 или найди 10 отличий… Функционал

Действия

Социальная панель

Ранее Действия, выводимые в Социальной панели, сортировались по дате последнего обновления, теперь же Вы можете указать поле (одну из дат), по которому необходимо сортировать. Делается это в окне свойств Социальной панели.

Помимо этого, сам контрол Социальной панели обзавелся стрелкой, по нажатию на которую Вы сможете изменить порядок сортировки.


Представление свертки

Представление свертки это новое поведение отношения, которое позволяет Действиям с дочернего объекта отображаться в представлении связанных Действий головного объекта.

  • Для примера, создайте кастомный объект Велосипед, который имеет отношение N:1 с объектом Контакт.
  • Установите для данной связи Представление свертки в Каскад для всех.
  • Создайте для Контакта дочернюю запись Велосипед, а для нее создайте новую Задачу.
  • Откройте для Контакта Представление связанных Действий. Вы увидите новый список рядом с фильтром Срок. С помощью него Вы сможете выбирать какие действия отображать: только те, что напрямую связаны с текущем Контактом или все действия, в том числе связанные с дочерними записями.

Представление свертки может быть установлено как Каскад для всех только при соблюдении следующих условий:

  • Между основным и связанным объектом должна быть связь кастомная связь 1:N или N:1. Свойство не может быть задано ни для какой системной связи.
  • Основной объект для отношения должен быть Организацией, Контактом или Возможной сделкой (надеюсь это ограничение уберут позже).
  • У связанного объекта должна быть включена настройка Действия.


Представления

Редактируемый грид

Наверное, наиболее ожидаемая функция CRM (так и будем продолжать называть систему «CRM» :), начиная с первой версии. MS частично ее запилила в предыдущих версиях системы, но только для редактирования некоторых полей Продуктов для Возможной сделки и других аналогичных объектов.

Что же нам предлагается теперь:

  • Редактирование записей в гриде на уровне объекта или вложенного Представления
  • Доступно для веб- и мобильных клиентов
  • Навигация при помощи клавиатуру и мыши
  • Группировка, сортировка и фильтрация записей
  • Перемещение и изменение размеров столбцов
  • Разбивка на страницы
  • Фильтрация лукапов
  • Вычисляемые поля и поля свертки
  • Иерархическое представление
  • Включение или отключение ячеек на основе Ролей безопасности
  • Поддержка всех типов полей кроме следующих:
    • Состояние/Статус
    • Лукап типа Клиент
    • Композитные поля
    • Partylist
    • Лукап на связанных объектах
  • Редактируемые сабгриды не поддерживаются для Продуктов для Возможных сделок, Предложений.
  • Грид учитывает поля только для чтения и безопасности на уровне полей
  • Поддерживают бизнес-правила и скрипты формы
  • Автоматическое/ручное сохранение
  • Диаграммы

По сути, Редактируемые гриды обладают всем функционалом обычных Представлений + свои дополнительные функции.

Редактируемый грид можно использовать в следующих местах:

  • На основном Представлении
  • Вложенном Представлении (сабгриде)
  • Вложенные Представления на мобильных клиентах (телефонах и планшетах)

Редактируемый грид можно добавить для объектов, удовлетворяющих следующим условиям:

  • Все настраиваемые объекты
  • Не дочерние объекты
  • Объекты с обновленным интерфейсом

Настройка основного Представления

Настройка для основного Представления происходит раздельно… Сначала настроим основное Представление:

  • Перейдите к настройкам нужного объекта – вкладка Элементы управления.
    Здесь в списке Вы увидите контрол Представления только для чтения, который будет по умолчанию использоваться в веб- и мобильных клиентах.
  • Нажмите Добавить элемент управления и выберите Редактируемая сетка (З.Ы. наблюдательный читатель заметит там возможность добавления еще двух контролов – их мы рассмотрим чуть ниже). Выберите для сетки где она будет отображаться: веб, телефон или планшет.
    Примечание: как понятно из этой настройки – Вы сможете настроить отдельные редактируемые гриды для каждого устройства – со своим поведением.
  • После добавления контрола Вы можете опционально его настроить. Для этого Вам будет доступно три опции. Две из них (настройку подсеток и группировку по умолчанию) мы рассмотрим чуть позже, а пока остановимся на фильтрации лукапов, выведенных в Представлении. Чтобы добавить фильтрацию щелкните Добавить подстановку – откроется диалоговое окно. Выберите в нем нужное Представление, лукап из него и задайте для него Представление по умолчанию и параметры фильтрации.


Настройка Сабгрида

Чтобы сделать редактируемым сабгрид выведенный на форму, необходимо в свойствах каждого конкретного сабгрида перейти на вкладку Элементы управления и выбрать или создать новый шаблон редактируемого грида. Также укажите на каких устройствах будет доступен именно этот редактируемый сабгрид.


Использование

Перейдите к Представлению объекта. Щелкните по нужной ячейке – внешний вид контрола изменится, позволяя Вам внести изменения.


На что стоит обратить внимание:

  • При изменении данных в таком представлении внизу слева будет выводится сообщение о наличии несохраненных данных.
  • Если ввести в лукап текстовое значение, то система выделит в списке записей для быстрого выбора совпадающие значения.
  • Вы можете перемещаться по строкам и ячейкам с помощью стрелок и клавиши Tab.
  • Сохранение происходит при наступлении одного из следующих событий:
    • Изменилась выборка записей.
    • Пользователь явно инициировал сохранение по кнопке на гриде.
    • Пользователь изменил сортировку, применил фильтр или группировку или перешел на другую страницу.

    Некоторые важные моменты:

    • Если пользователь последовательно отредактировал множество ячеек в одной и той же записи, событие OnSave произойдет только один раз.
    • Редактируемый грид и основная форма имеют разные кнопки сохранения. Щелчок одной из них не инициирует сохранение в другом компоненте.
    • Грид не производит сохранение при выполнении навигации за пределами контекста грида. Т.е. если Вы, например, покинули форму с помощью панели навигации или по щелчку на лукапе, то имеющиеся изменения в гриде не сохранятся.
    • Нажатие кнопки Обновить на гриде отменяет любые несохраненные изменения и событие OnSave не произойдет.
    • У грида нет функции периодического автоматического сохранения (как у формы).
    • Для грида не работают правила обнаружения дубликатов.

Если Вам не нужен редактируемый грид Вы всего можете вернутся к обычному с помощью кнопки «Показать как» на командной панели.

Скрипты и события

После добавления сетки к объекту в его настройках появится вкладка События, на которой Вы можете привязать к событиям происходящим с сеткой JS-скрипты.
Редактируемый грид поддерживает следующие разработческие события (с примерами мы познакомимся в посте о разработке):

  • OnRecordSelect – происходит при выборе одной строки в сетке. Событие произойдет, если пользователь выберет различные ячейки в одной и той же строке или выберет несколько строк.
  • OnChange – происходит, когда в ячейке изменено значение и ячейка теряет фокус. Это событие также может инициироваться, когда значение атрибута обновлено с помощью метода setValue.
  • OnSave – происходит до отправки информации на сервер (в какие моменты это происходит читайте выше в разделе Использование).


Группировка

Еще одним приятным функционалом редактируемых гридов является возможность группировки данных в Представлении. Для этих целей над Представлением имеется поле, в котором Вы можете выбрать какое-либо поле объекта, по которому система сгруппирует данные.

Группировка сохранится пока не будет очищен кэш браузера.

Если Вам не нужна группировка, Вы отключить этот функционал в свойствах Редактируемого грида.


Порядок столбцов

Представление редактируемых гридов можно оперативно «кастомизировать» перетаскивая их мышкой.

Как и в случае с группировкой, эти изменения будут сохранены до очистки кэша браузера.


Примечания

  • Редактируемый грид не учитывает настройки полей на форме в части их видимости и доступность для редактирования. Чтобы как-либо ограничить редактирование полей используете скрипты (один такой пример рассмотрим в эпизоде для разработчиков) или бизнес-правила.
  • Если развернуть сабгрид на полный экран, то данный вид трактуется как полноценное Представление и если для него настроен Редактируемый грид, то пользователь сможет изменить в нем данные.
  • Редактируемый грид не поддерживает создание новых записей.

Кастомизация Представлений

Тоже одна из самых давно ожидаемых функций – возможность разукрашивать Представления. Некоторые умельцы, не дождавшись поддерживаемого функционала, изобрели ряд методов достигнуть желаемого не поддерживаемым способом. И тут на сцену выходит MS. Но нет 🙂 MS не такой добрый 🙂 все сразу вы не получите. Сначала – только возможность добавлять иконки для пиклистов в Представлении 🙂

Для этого:

  • Создайте на каждое значение пиклиста, выведенного в Представление, Веб-ресурс с картинкой 16х16.
  • Создайте JS Веб-ресурс с таким кодом:
    function displayIconTooltip(rowData, userLCID) {
        var str = JSON.parse(rowData);
        var col_data = str.gendercode_Value;
        var imgName = "";
        var tooltip = "";
    
        switch (col_data) {
            case 1:
                imgName = "new_Male16.png";
                tooltip = "Male";
                break;
            case 2:
                imgName = "new_Female16.png";
                tooltip = "Female";
                break;
            default:
                imgName = "new_MaleOrFemale";
                tooltip = "Unknown";
                break;
        }
        var resultarray = [imgName, tooltip];
        return resultarray;
    }
    

    Данная функция принимает два значения от Представления (по каждой строке): значения строки (конкурентного столбца) и язык пользователя. А возвращает массив: имя Веб-ресурса и текст всплывающей подсказки. А где-то в середине 🙂 происходит определение того, какой Веб-ресурс вернуть в зависимости от значения писклиста 🙂
    Здесь Вам нужно заменить на свои значения:

    • Имя поля.
    • Коды значений.
    • Названия Веб-ресурсов с картинками.
    • Подсказки.
  • Откройте на редактирование нужное Представление. Выделите столбец с пиклистом и откройте его свойства. В новом поле Веб-ресурс укажите ранее созданный JS Веб-ресурс, а в поле Функция, название.


Примечание: этот функционал работает только с обычными Представлениями (не редактируемыми).

Потоки процесса

Модернизированный проектировщик

Инструмент для проектирования Потока претерпел кардинальные изменения и теперь гораздо более интуитивно понятен. Изменился он не только для Потоков, но и Бизнес-правил, а также используется в новом функционале Поток задач (см. далее). И во всех имеет похожий функционал и принцип действия. При этом по большому счету изменения коснулись только визуальной части, плюс добавился ряд бонусов:

  • Сверху расположена Командная панель, которая позволяет Вам добавлять элементы (шаги, условия действия) в Поток.
  • В центральной области располагается Дизайнер потока – визуальное отображение Потока, с помощью которого Вы можете его редактировать (выделять, менять свойства, перетаскивать элементы и т.д.). Основным элементами, отображаемыми в редакторе, являются Этапы. Щелчок Деталям Этапа покажет его Шаги.
  • Сдвоенная панель Компонентов и Свойств располагается справа.
    • На вкладке Компонентов расположены элементы Потока, которые (по факту эта панель дублирует возможности Командной панели) которые Вы можете добавить в Поток с помощью перетаскивания.
    • А вкладка Свойств меняет свой состав и отображает свойства выделенного в данный момент элемента в редакторе.

Вот, пожалуй, и все что нужно знать…


А поподробнее мы остановимся на функциональных новшествах:

Снапшот

Снапшот это «снимок» текущего состояния редактора Потока. Никакой функциональной нагрузки CRM он не несет. Единственное возможное его применение – документирование Ваших настроек.

Делается Снапшот по кнопке на панели инструментов.

Копи/Паст

Одной из самых полезный новых возможность, на мой взгляд, является возможность перетаскивать существующие элементы на новое место (или с помощью кнопок копирования и вставки на панели инструментов). Это то, чего очень не хватает редактору Бизнес-процессов. Надеюсь и его проапгрейдят до этого уровня.

Проверить

Новая кнопка Проверить на Командной панели выполняет проверку корректности текущей схемы. И если что не так – выдает сообщение.

Параллельные Потоки

Ранее при смене Потока на любой другой означало, что предыдущий прекращал свое существование со всеми накопленными данными. Теперь же Вы можете переключатся между Потоками и при «возвращении» старого Потока вернется и его последние состояние. А в самом диалоге переключения Вы сможете видеть дату/время когда и кем каждый Поток был запущен.


Завершить

Это кнопочка, которая появляется на последней стадии Потока. При ее нажатии Поток переводится в одноименную стадию. Завершенный Поток можно повторно активировать по кнопке на Командной панели.


Отказ от Потока

Это новая возможность, которая позволяет как бы остановить или «заморозить» текущий Поток на любом Этапе. Отказ от Потока происходит по кнопке на Командной панели.
После этого контрол Потока изменит свой цвет на серый. После этого кнопка остановки заменится кнопкой возобновления Потока.


Архив Потоков

Архив Потоков это список отображаются завершенные или остановленные Потоки. Посмотреть архив Вы сможете, открыв диалог переключения Потоков. При этом Вы можете переключаться на архивные Потоки, также, как и на активные.


Время в Потоке

В 365 у потока процессов появилась функция таймера, которая показывает сколько всего времени Вы провели на всех предыдущих Этапах (включая текущий).

Вызов Бизнес-процесса

Как понятно из названия, теперь в Потоках можно вызывать Бизнес-процессы. Сделать это можно до начала Шага или после окончания. Вызываемый БП, должен быть связан с объектом, для которого настроен Поток и должен быть активным. Плюс он должен будет быть отмечен как доступный для ручного вызова.


Безопасность

Потоки обзавелись собственной вкладкой на форме настройки Ролей безопасности. Здесь Вы можете определить для каждой Роли доступ к каждому Потоку процессов. Это значительное улучшение, которое позволит Вам управлять доступностью того или иного Пока для каждого пользователя.

Новый Поток появится на этой вкладки после первой активации и будет удален оттуда только после удаления самого Потока.


З.Ы. По факту, каждый экземпляр Потока, что Вы добавляете к записи, становится отдельной строкой в таблице БД. Поэтому доступ к нему управляется также как и к любой другой записи CRM.

З.Ы.2. Также учтите, что доступ к потокам не управляет доступностью тех или иных полей, задействованных в нем.

Уведомления

Microsoft добавила возможность вывода уведомлений на уровне поля в CRM 2013. В 365 эта функциональность получила возможность обратного взаимодействия.

К API был добавлен новый метод addNotification, который может:

  • Выведите уведомление об ошибке или рекомендации (ранее можно было выводить только сообщение об ошибке).
  • Выводить в уведомлении две кнопки:
    • Применить – чтобы выполнить какое-либо действие
    • Отклонить – чтобы закрыть уведомление

Следующий пример кода выведет на экран уведомление с рекомендацией очистить поле Название, если в нем будут числа. Если пользователь нажмет Применить, то код удалит числа из Названия и уберет уведомление. Если пользователь нажмет Отклонить, то уведомление будет просто закрыто.

function addNotification() {
    var myControl = Xrm.Page.getControl('name');
    var accountName = Xrm.Page.data.entity.attributes.get('name');
    var accountNameValue = accountName.getValue();
    if (accountName.getValue() == null) {
        return;
    }
    // Ищем числа
    var r = /\d+/;
    var s = accountNameValue.match(r);
    // Если числа найдены выводим уведомление
    if (s != null) {
        var actionCollection = {
            message: 'Удалить числа из названия?',
            actions: null
        };
        actionCollection.actions = [function () {
            //remove the numbers  
            accountName.setValue(accountNameValue.replace(/[0-9]/g, ''));
            myControl.clearNotification('my_unique_id');
        }];
        myControl.addNotification({
            messages: ['Числа в названии Организации'],
            notificationLevel: 'RECOMMENDATION',
            uniqueId: 'my_unique_id',
            actions: [actionCollection]
        });
    }
}

Метод addNotification принимает следущие параметры:

  • Сообщение
  • Уровень уведомления: рекомендация или ошибка
  • Уникальный идентификатор
  • Выполняемое действие и описание действия, которое будет выводится пользователю


Релевантный поиск

Релевантный поиск – новый вид поиска для CRM – подвид Глобального поиска, который по своему внешнему виду и концепции использования напоминает поисковые системы вроде Яндекса и Гугла.

Релевантный поиск не доступен на локальном развёртывании, поскольку работает не самостоятельно, а с использованием Azure Search. С помощью Релевантного поиска Вы можете производить более интуитивный семантический поиск: поиск возвращает результаты соответствующие критериям поиска в любых словах, в любых словоформах по любым настроенным полям искомых объектов. И выводит их в порядке от наиболее релевантных к менее (без всякой группировки по объектам).

Релевантный поиск доступен как в веб-интерфейсе, таки на мобильных клиентах.

Настройка

  • Поставьте в Системных параметрах настройках галку Релевантный поиск. Это установит Релевантный поиск как вид поиск по умолчанию для Глобального поиска. При этом каждый пользователь сможет задать дефолтный для себя поиск.
  • Перейдите к настройкам объектов и выделите строку со списком всех объектов – нажмите кнопку Настроить поиск по релевантности. Выберите объекты, которые будут участвовать в поиске. У каждого объекта, добавляемого для поиска, должна стоять галка «Можно включать с синхронизацию со внешним индексом поиска» в управляемых свойствах.
  • Релевантный поиск ищет среди те же полей что и Быстрый поиск, поэтому если их необходимо изменить, откройте Представление Быстрого поиска.

Т.к. поиск по факту производит Azure Search, то при изменении данных (настроенных для поиска) происходит их синхронизация между D365 и Azure Search по безопасному каналу. Эта передача может занять до 15 минут, соответственно в результатах поиска Вы можете видеть не актуальные данные. Также при включении функционала первоначальная синхронизация может занять продолжительное время.


Использование

Как я уже сказал Релевантный поиск – подвид Глобального поиска – и там же находится.

Откройте Глобальный поиск – рядом со строкой поиска будет ниспадающий список, с помощью которого Вы сможете выбрать вид поиска (по объектам или релевантный).
Чтобы выполнить поиск просто ведите искомое значение.

Также Вы можете также использовать специальный синтаксис, чтобы более ювелирно управлять критериями поиска (как и положено полноценным поисковым системам):

  • Например, введите «С Новым годом», чтобы поиск производился по любому из введенных слов (т.е. искомый результат должен включать в себя хотя бы одно этих слов).
  • + – например, «С+Новым+годом» – система будет искать результаты, которые содержат все сова. При этом сами слова не должны стоять рядом как в искомом запросе (но чем они ближе друг к другу, тем выше релевантность).
  • | – например, «Иран|Ирак» – будет искать результаты, которые содержат любое из перечисленных слов.
  • « » – если задать фразу в кавычках, то будет искать точно ее совпадение.
  • () – используется для группировки искомых значений. Например, «Добро пожаловать в (Питер|Сочи)», будет искать «Добро пожаловать в Питер» или «Добро пожаловать в Сочи)» или оба.

С другими возможностями синтаксиса Вы можете ознакомится здесь: Simple-query-syntax-in-Azure-Search


Слева от результатов поиска выводится большая панель, с помощью которой Вы сможете дополнительно фильтровать результаты поиска. По умолчанию имеется 4 глобальных фильтра: по объектам (при этом появляется возможность искать по связанным Действиям и Примечаниям, в том числе и прикрепленным документам), по Ответственному, по дате создания и изменения. Эти поля используются поскольку они есть во всех объектах.

Если Вы выберите фильтрацию по какому-либо объекту, то могут появится дополнительные фильтры, соответствующие этому объекту (например, для Возможных сделок это Предполагаемая дата закрытия). Дополнительные фильтры для каждого из объектов определяются в личных настройках – пункт Аспекты и фильтры. В диалоге Вам необходимо выбрать объект и поля (до 4-х), по которым появятся дополнительные фильтры. Список полей для выбора аналогичен искомым полям.


А самой мощной возможностью является, пожалуй, поиск в тексте документа, который хранится в Примечаниях и вложениях Электропочты и Встреч. Поддерживаются несколько форматов: Microsoft Office (документы Word, презентации PowerPoint, и т.д.), PDFs, EML, HTML/XML, ZIP и формат RTF.

Дополнительно:

  • Релевантный поиск отлично ищет по названиям пиклистов и отображаемым в лукапах значениях.
  • Поиск производится также по расшаренным на Вас записям (а не только тем, которыми Вы владеете).

Порталы

CRM обзавелся собственными встроенными внешними web-порталами (только для онлайн). Порталы — это внешние сайты, которые тесно интегрированы уже из коробки с CRM. Порталы предназначены для внешней не-CRM аудитории. CRM в данном случае будет выступать своего рода CMS-системой (докатились :).

Возможности портала позволяют клиентам, партнерам и сотрудникам организации доступ к информации, получить помощь или выполнять какие-либо задачи.

Устанавливаются порталы из центра администрирования Office 365. Там на вкладке Приложения выделите Portal Add-On и нажмите установить. После установки выделите эту же строчку и нажмите кнопку Настроить. В окне настройка задайте название Вашего портала и прочие параметры.

Таким образом Вы установите «пустой» портал. Но MS дополнительно выпустил четыре преднастроенных решения, для определенного круга задач:

  • Customer Service Portal
  • Community Portal
  • Partner Portal
  • Employee Self Service Portal

Данные решения устанавливаются также через центр администрирования, со вкладки Экземпляры.
После настройки Ваш портал будет доступен по адресу <portalName>.microsoftcrmportals.com. При этом Вы можете разместить портал в Вашем собственном домене. Например, myaccount.company.com.

В CRM после установки в CRM появится отдельная область, через которую Вы сможете администрировать и настраивать свои порталы. Настройка имеет довольно дольшие возможности, от брендинга до создания структуры и наполнения.

С D365 «бесплатно» поставляется один портал, но вы можете купить больше за дополнительную плату.

Более подробно о настройке порталов читайте в: https://www.microsoft.com/en-us/dynamics/crm-setup-and-administration/configure-a-dynamics-365-portal.aspx



План обучения

Функционал Плана обучения введенный с прошлым сервис паком обзавелся своим собственным инструментом для настройки. Теперь Вы сможете не только просматривать стандартные обучалки, но и создавать свои.

Напомню, что План обучения представляет собой боковую панель, содержащую как классические учебные материалы (и ссылки на них), так и интерактивный обучающий инструмент в виде всплывающих подсказок над элементами формы, который дает пояснения по ним.

Включение

  • В системных параметрах на вкладке Общие поставьте галку для Enable Learning Path Authoring.
  • Откройте центр администрирования Office 365 и перейдите к списку Групп безопасности. Там будет служебная группа Learning Path Authors. Добавьте в нее пользователей, которые должны будут редактировать Планы обучения.
    Спрашиваете при чем ту Группы безопасности Office 365? Судя по всему, редактор Плана обучения это отдельный сайт (вне CRM), который будет использоваться на множестве продукторв, а не только в CRM. Поэтому и доступ к нему осуществляется централизовано из Office 365.
  • Если Пользователь не является сисадмином в CRM, добавьте ему привилегию Разработка схемы обучения в настройках Роли безопасности.



Настройка

Открыть редактор Вы можете двумя путями:

  • В области Помощь на Панели навигации появится отельная ссылка – Content Library
  • Открыть боковую панель Плана обучения и нажать на кнопку вверху слева (в виде кнжек)

Откроется отдельный сайт. По внешниму виду и функционалу это не CRM. В галвном окне будет представлени список настроенных боковых панелей и обучающих интеграцивных инструкций. План обучения может быть настроен для отображения в завсисимости от Ролей безопасности, клиентского приложения и форм-фактор. Созданные Планы обсучения могут быть опубликован сразу для нескольких организаций в развертывании.

В редакторе не так много кнопок, как кажется на первый взгляд, поэтому «методом тыка» разберетесь 🙂 Более подробно про настройку читайте в: https://www.microsoft.com/en-us/dynamics/crm-customer-center/create-your-own-guided-help-learning-path-for-your-customers.aspx



Комментарии (0)

*

code