Поділитися через


Приклади Dataverse low-code плагінів (попередній перегляд)

[Цей розділ є документацією для попередньої версії, і його буде змінено.]

Мета цих прикладів плагінів – допомогти вам розпочати роботу, інтегрувавши їх у свої програми. Ви зрозумієте, що процес створення включає створення Microsoft Dataverse користувацьких API, підкріплених Power Fx виразами, які можуть ініціювати внутрішні або зовнішні дії Dataverse.

Важливо

  • Це функція попереднього перегляду.
  • Підготовчі функції призначені для невиробничого використання і можуть бути обмежені. Ці функції доступні до офіційного випуску, щоб клієнти могли ознайомитися з ними заздалегідь і залишити відгуки.

Передумова

Щоб використовувати один із прикладів плагінів для події даних, Dataverse у середовищі має бути встановлено програму-корисну можливість. Додаткові відомості: Передумови для створення low-code плагіна

Примітка

Шаблони листів доступні лише для певних таблиць. Додаткові відомості. Створення шаблонів для електронної пошти

Повертає невід’ємне значення

У цьому прикладі функція Abs() повертає невід’ємне значення свого аргументу. Якщо число від’ємне,повертає Abs позитивний еквівалент.

  1. Dataverse Відтворіть програму «Корисна можливість» на панелі команд виберіть «Нова дія > Миттєвий плагін».

  2. Укажіть коротке ім’я, наприклад назву формули та опис.

  3. Створіть Out параметр для перевірки очікуваної поведінки, яка має сенс, наприклад рядок За бажанням використовуйте вхідні параметри, щоб спростити тестування, що має сенс у формулі.

  4. У редакторі формул оберніть Out параметр фігурними дужками:

    {Out: "" }
    
  5. Введіть вираз, який перевіряє формулу:

    • Переконайтеся, що intellisense приймає формулу (текст стає світло-синім).
    • Реалізуйте вираз, який надає вихідні дані, наприклад, для перевірки результату.
    {Out: "Abs(-5) = 5: " & Text( Abs(-5) = 5 )  }
    
  6. Натисніть кнопку Далі, а потім натисніть кнопку Зберегти.

  7. Виберіть Тест, щоб перевірити формулу. Використовуйте параметр output для перевірки результату.

Перевірка введення та користувацькі помилки

Пошук повторів

Реалізуйте перевірку вводу на стороні сервера, наприклад виявлення повторюваних помилок, які надсилають настроюване повідомлення про помилку.

  1. Dataverse Відтворіть програму «Корисна можливість» на панелі команд виберіть « Нова дія > Автоматизований плагін».
  2. У полі Ім’я введіть прапорець Дублювати.
  3. У полі Таблиця виберіть Контакт.
  4. Для параметра Запустити цей плагін, коли є рядок, виберіть Створено.
  5. У полі Формула введіть таку формулу:
 If( !IsBlank(LookUp([@Contacts],'Last Name'=ThisRecord.'Last Name' && 'First Name'=ThisRecord.'First Name')),
    Error("You have existing contacts with the same first name and last name")
)
  1. Виберіть Зберегти.

Перевірте плагін

  1. Щоб протестувати плагін, створіть програму canvas за допомогою таблиці контактів, виконавши наведені нижче дії. ...
  2. Створіть рядок контактів.
  3. Створіть ще один контакт з таким самим ім’ям, як і в попередньому кроці.
  4. З’явиться повідомлення із зазначенням знайдених повторюваних записів. Виберіть Ігнорувати та збережіть у запиті повідомлення про помилку.

Відображається таке спеціальне повідомлення про помилку: У вас є два контакти з однаковими першим і прізвище.

Перевірка даних

Відображення певних типів помилок за допомогою зчислення ErrorKind .

  1. Створіть новий автоматизований плагін.

  2. Укажіть такі значення:

    • Ім’я: Перевірка введення
    • Опис: Перевіряє дійсну дату і видає помилку, якщо вона недійсна
    • Таблиця: Призначення
    • Запустіть цей плагін, якщо рядок такий: Оновлено
  3. Введіть формулу нижче:

    If(ThisRecord.'Due Date' < Now(), 
     Error({ Kind: ErrorKind.Validation , Message: "The due date cannot be in the past" })
    );
    
  4. У розділі Додаткові параметри встановіть для параметра Коли має виконуватися значення Попередня операція; це правило потрібно запустити перед збереженням даних, щоб запобігти неприпустимим даним.

  5. Виберіть Зберегти.

Перейдіть до функції Error(), щоб дізнатися більше про користувацькі помилки.

Надсилання електронного листа на основі події даних

Необхідні компоненти:

Приклад шаблону листа

Ось приклад шаблону листа, який ви можете створити для події даних на основі SenMail:

  • Тип шаблону: Глобальний
  • Ім’я: Замовити Дякую
  • Опис: Використовуйте цей шаблон, щоб подякувати клієнту за те, що він зробив у вас замовлення.
  • Тема: Thank you for your order <orderconfirmation-{!salesorder:Order Number; }>
  • Основна частина: Використовуйте цей код.
   Hello {!Sales Order:First Name;},
   Order Type: {! Sales Order: Order Type;},
   Location Type: {! Sales Order: Location Type;},
   Address1: {! Sales Order: Address 1;},
   Address2: {! Sales Order: Address 2;},
   Preferred Service Start Date 1: {! Sales Order: Preferred Service Start Date;},
   Next Step- We take upto 48 hrs to schedule an in-person and will notify you as soon as we have a In-person Technician allocated at your site. For any questions, please contact us at 1-800-CON-SOLAR
   Yours Sincerely, 
   Contoso Sales 

Створення автоматизованого плагіна

  1. Dataverse Відтворіть програму «Корисна можливість», а потім виберіть « +Новий плагін» у розділі «Автоматизовані плагіни».
  2. Введіть перелічені нижче дані.
    • Ім’я: SendEmailUponCreate

    • Таблиця: виберіть логічне ім’я таблиці замовлень на продаж – Замовлення на продаж. Ця подія базується на таблиці замовлень на продаж.

    • Запустіть цей плагін з рядком is: Created

    • Формула: вставте наведений нижче код у поле Формула . Для отримання додаткової інформації зверніться до функції SendEmailFromTemplate до SendEmailFromTemplate Action.

      XSendEmailFromTemplate(
          LookUp('Email Templates',StartsWith(title,"Order Thank You")).'Email Template',
      ThisRecord,
      LookUp(Users,'Primary Email'="sampleemail@sample.com"),[ThisRecord.Email]
      )
      
  3. Виберіть Advanced Post-operation (Розширена > післяопераційна робота).
  4. Виберіть Зберегти.

З’явиться повідомлення з підтвердженням Плагін успішно збережено .

Надсилання сповіщень у додатку на основі дії з миттєвим запуском

Сповіщення в додатку дають змогу виробникам налаштовувати контекстні, дієві сповіщення для користувачів у програмах, керованих моделлю.

Створіть low-code плагін, який надсилатиме сповіщення в додатку

  1. Відтворіть програму-корисник, Dataverse а потім виберіть +Новий плагін у розділі Плагіни миттєвого друку.
  2. Введіть наступну інформацію, натисніть кнопку Далі:
    • Ім’я: NotifyTechnican1
    • Опис: Цей миттєвий плагін сповіщає користувача програми.
  3. На сторінці Визначення створіть вхідні параметри з такими типами даних:
    • Ідентифікатор замовлення: Рядок
    • Технічний фахівецьЕлектронна пошта: Рядок
  4. Формула. Вставте наведений нижче код у поле Формула . Щоб дізнатися більше про цю функцію, перейдіть до розділу SendAppNotification Action.
     XSendAppNotification(
         "New service",
         LookUp(Users,'Primary Email'=TechnicianEmail),
         "You have a new solar panel installation scheduled on "& LookUp('Scheduling Results','OrderId'=OrderID).'ServiceDate'&" in "& LookUp('Service Orders','Order Number'=OrderID).City &". Contact the coordinator with any questions.",
     [
         XCreateSidePaneActionForEntity(
                 "View order",
             OrderID,
             "Sales Order",
             "cr8b8_serviceorder1",
             LookUp('Service Orders','Order Number'=OrderID).'Service Order'
             )
         ]
     )
    
  5. Виберіть Далі.
  6. На сторінці Підсумок виберіть Зберегти.

Як викликати миттєву дію сповіщення в додатку

  1. Виберіть програму для роботи з полотном, а потім натисніть «Редагувати » на панелі команд (або створіть нову).
  2. Виберіть екран на лівій панелі навігації або створіть новий.
  3. У меню «Вставити » додайте кнопку на сторінку за допомогою функції «Текстове сповіщення».
  4. Натисніть кнопку та введіть у рядок формул fx наступне, де DataCardValue17 — це стовпець, який містить ідентифікатор замовлення, а DataCardValue15 — це стовпець, який містить адресу електронної пошти технічного спеціаліста. У цьому прикладі використовується програма з полотном під назвою Service Order App.
    Environment.cr8b8_Notifytechnician1({
           OrderID: DataCardValue17.Text,
       TechnicianEmail: DataCardValue15.Text 
    });
    
        Notify("The technician was notified!", NotificationType.Success, 2000);
    
    
    Додано кнопку з Power Fx формулою для надсилання сповіщення техніку
  5. Збережіть і опублікуйте зміни.

Коли в додатку вибрано дію «Сповістити техніка», сповіщення в програмі надсилається технічному спеціалісту, якому призначено замовлення на обслуговування. Якщо виконати дію зі сповіщенням, інформація про замовлення послуги відкриється на бічній панелі.

Сповіщення надсилається технічному спеціалісту, який отримує в додатку

Зразок миттєвого плагіна з роз’ємом MSN Weather

Цей додаток повертає поточну погоду для певного місця за допомогою з’єднувача MSN Weather.

Необхідні компоненти:

  1. Створення довідника підключення для MSN Погоди, якщо воно ще недоступне в середовищі: Створіть посилання на підключення в програмі на панелі посилань на підключення праворуч

  2. Копіювати фрагмент: Скопіювати фрагмент дії з панелі підключень

  3. Завершіть редагування формули за допомогою intellisense і за потреби використовуйте властивості відповіді з’єднувача: Завершіть визначення плагіна в редакторі

  4. Зберегти

  5. Перевірте плагін

Підказка

Використовуйте функцію With(), щоб отримати всю відповідь однієї дії, якщо ви хочете отримати доступ до різних властивостей, які може мати відповідь. У наведеному нижче прикладі є вхідний параметр Location (рядок) і вихідний параметр Out (рядок).

With({ /* Capture current weather response from connector */
c: new_MsnWeather.CurrentWeather( Location, "Imperial" ).responses.weather.current
},{ /* Return concatenated weather details */
Out: "Current temp: " & c.temp & " degrees. Feels like " & c.feels & " degrees. Wind speed is " & c.windSpd & " mph."
})

Рекомендації

Обробка помилок нескінченного циклу в автоматизованих low-code плагінах

Не пишіть інструкцію латки в автоматичному плагіні після події «Оновлення», коли патч відбувається в тій самій таблиці, що й плагін. Це призводить до нескінченних циклів і збоїв у виконанні плагінів.

Проблемний візерунок: використання Patch() формули ініціює чергове оновлення. "Проблемна формула в автоматизованих плагінах"

Рекомендований візерунок: використовуйте формулу, Set() щоб уникнути цієї проблеми. "Рекомендована формула в автоматизованих плагінах"

Див. також

Low-code плагіни Power Fx (попередній перегляд)