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


Использование малокодовых подключаемых модулей Dataverse (предварительная версия)

[Данный раздел посвящен предварительному выпуску и может быть изменен.]

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

Внимание!

  • Это предварительная версия функции.
  • Предварительные версии функций не предназначены для использования в производственной среде, а их функциональность может быть ограничена. Они доступны перед официальным выпуском, чтобы клиенты могли досрочно получить доступ и предоставить отзывы.

Традиционно подключаемые модули создавались как пользовательские классы, скомпилированные в сборку .NET Framework, которые затем загружались и регистрировались в Dataverse. Однако с появлением малокодовых подключаемых модулей пользователи могут создавать эти обработчики событий с использованием минимального кода или вообще без него, а также без необходимости ручной регистрации.

Малокодовые подключаемые модули хранятся в базе данных Dataverse и могут быть легко интегрированы в Power Apps и Power Automate. Поведение бизнес-процесса определяется с помощью языка выражений Power Fx и для него может быть установлена прямая связь с бизнес-данными Dataverse и внешними источниками данных через соединители Power Platform. С помощью малокодовых подключаемых модулей создатели могут быстро создавать сложные бизнес-процессы с минимальными знаниями в области написания кода. Это способствует созданию более оптимизированной и эффективной архитектуры данных.

Преимущества логики на стороне сервера

Определение бизнес-логики на стороне сервера дает несколько преимуществ, в том числе следующие:

  • Повышенная безопасность. Поскольку серверная логика выполняется на сервере, она может помочь предотвратить несанкционированный доступ к конфиденциальным данным или процессам.
  • Повышенная производительность. При выполнении бизнес-логики на сервере, можно уменьшить объем данных, которые необходимо передавать между клиентом и сервером, что приводит к сокращению времени обработки.
  • Надежность и стабильность. Логика на стороне сервера гарантирует, что бизнес-правила последовательно применяются ко всем клиентам, снижая риск ошибок или несоответствий.
  • Более простой процесс обслуживания и обновления. Централизация бизнес-логики на сервере позволяет облегчить обслуживание и обновление, поскольку изменения можно вносить в одном месте, а не обновлять несколько клиентов.
  • Масштабируемость. Логику на стороне сервера легче масштабировать, чем логику на стороне клиента, что позволяет повысить производительность и обрабатывать большие рабочие нагрузки.

Малокодовые подключаемые модули

В Dataverse поддерживаются два типа малокодовых подключаемых модулей:

Type Триггер Поддерживает параметры Поддерживаемая область
Мгновенные Запускается вручную Да Глобальные и таблица
Автоматизированный Событие таблицы в Dataverse Нет Таблицу

Все малокодовые подключаемые модули имеют следующие общие свойства:

Свойство Description
Показать имя Понятное для человека имя подключаемого модуля. Невозможно изменить после создания.
Полное имя Внутреннее имя подключаемого модуля. Он используется платформой для идентификации компонента в операциях кода и базы данных. Невозможно изменить после создания.
Description Используется для предоставления дополнительного контекста для подключаемого модуля (назначение, поведение или другие важные сведения).
Решение Используется для группировки компонентов и экспорта в другие среды. Подробнее о решениях.
Выражение Это пользовательская функция, которую можно использовать для выполнения действий или вычислений, определенных с помощью языка выражений Power Fx. Power Fx — это язык формул, используемый в приложениях на основе холста в Power Apps и теперь может использоваться и в малокодовых подключаемых модулях. См. поддерживаемые функции для получения более подробной информации.

Мгновенный малокодовый подключаемый модуль — это логика пользовательского кода, которая запускается вручную пользователем. Могут использоваться пользовательские входные и выходные параметры.

Уникальные свойства:

Свойство Description
Область действия Используется для привязки подключаемого модуля к определенной таблице. Для него можно задать значение "таблица" (отображается как сущность) или "глобальный", где область таблицы (сущности) означает, что подключаемый модуль запускается в контексте конкретной записи таблицы, а глобальная область означает, что операция не связана с таблицей (подробнее).
Параметры Параметры позволяют передавать информацию между подключаемым модулем и контекстом, который его запускает, упрощая процесс создания бизнес-логики, которая может быть повторно использоваться в различных ситуациях.

Входные параметры используются для предоставления данных в подключаемый модуль и позволяют вам управлять поведением функции, передавая различные значения, указанные вами в формуле Power Fx.

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

Поддерживаемые типы данных:
  • Логический
  • String
  • Акции в свободном обращении
  • Decimal
  • Дата/время
  • Целое

Дополнительная информация о том, как выполнить интеграцию из приложения на основе холста или в облачном потоке Power Automate: Интеграция малокодового подключаемого модуля

Разрешения в отношении подключаемых модулей

Время разработки

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

Время выполнения

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

Подключения

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

Предварительные условия для создания малокодового подключаемого модуля

  • Роль безопасности системного администратора или настройщика системы в среде Power Platform.
  • Доступ к приложению ускорителя Dataverse.

Совет

С 1 октября 2023 г. во всех новых средах автоматически устанавливается приложение ускорителя Dataverse. Если у вас уже установлен ускоритель Dataverse, вы можете обновить вручную ускоритель Dataverse.

Обновление ускорителя Dataverse

  1. Следуйте инструкциям, чтобы просмотреть лицензированные приложения в вашей среде.
  2. Если Dataverse Accelerator уже установлен и доступно обновление, это указано в таблице рядом с элементом.
  3. Выберите Dataverse Accelerator, затем выберите Обновить на панели команд.

Совет

Включите автоматическое обновление приложений для издателя Microsoft - Power CAT, чтобы автоматически получать обновления, когда они доступны (не обязательно для новых сред, созданные после 1 октября 2023 г.).

Заметка

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

Создание мгновенного малокодового подключаемого модуля

  1. Запустите приложение ускорителя Dataverse.
  2. Выберите карточку Создание мгновенного подключаемого модуля. Карточка создания мгновенного подключаемого модуля
  3. Укажите Отображаемое имя.
  4. Определите параметры (необязательно):
    • Выберите Новый входной параметр или Новый выходной параметр, затем введите подпись и тип данных.
    • При необходимости добавьте дополнительные входные и выходные параметры.
  5. Введите выражение Power Fx в редакторе Выражение.
    • Ссылайтесь на входные параметры в формуле по имени подписи.
    • Ссылки на выходные параметры должны быть указаны внутри фигурных скобок, например { Out: "Return value" }.
    • Ссылайтесь на таблицы Dataverse , используя функции сбора данных, такие как фильтр() и поиск().
    • Если для области задана сущность, используйте ThisRecord для получения доступа к значениям столбца в строке таблицы, связанной с выполнением подключаемого модуля, например ThisRecord.'Account Name'.

    Совет

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

  6. При необходимости разверните Дополнительные параметры, чтобы изменить решение, область или описание.
  7. Выберите Сохранить.
  8. Протестируйте свой мгновенный малокодовый подключаемый модуль.

Пример: Вычислите сумму двух целых чисел.

  • Создайте два входных параметра X и Y (оба с типом "целое число") и один выходной параметр, Z (типа строки).
  • Используйте следующую формулу: {Z: X + Y }

Пример мгновенного подключаемого модуля в приложении ускорителя Dataverse

Создание автоматизированного малокодового подключаемого модуля

  1. Запустите приложение ускорителя Dataverse.
  2. Выберите карточку Создание автоматического подключаемого модуля. Карточка создания автоматического подключаемого модуля
  3. Укажите следующие значения:
    • Имя: введите имя для мгновенного подключаемого модуля, например Проверка входных данных.
    • Таблица : выберите таблицу, с которой нужно связать подключаемый модуль, например Организация.
    • Запускать этот подключаемый модуль, когда строка. Укажите событие данных, которое вызывает подключаемый модуль.
  4. Введите выражение Power Fx в редакторе Выражение.
    • Ссылайтесь на таблицы Dataverse , используя функции сбора данных, такие как фильтр() и поиск().
    • Используйте ThisRecord для получения доступа к значениям столбца в строке таблицы, связанной с выполнением подключаемого модуля, например ThisRecord.'Account Name'.
  5. При необходимости разверните Дополнительные параметры, чтобы изменить стадию (время запуска) и решение, в котором сохраняется подключаемый модуль.
  6. Выберите Сохранить.
  7. Протестируйте свой автоматический малокодовый подключаемый модуль.

Использование соединителей Power Platform в малокодовых подключаемых модулях

Соединители Power Platform можно использовать в малокодовых подключаемых модулях для простой интеграции данных и функций из систем за пределами Dataverse, таких как SQL Server, Salesforce и SharePoint, без необходимости написания сложных кодов или пользовательской разработки.

Предварительные условия для использования соединителей в малокодовых подключаемых модулях

Использование действий соединителя в малокодовых подключаемых модулях

Вы можете легко использовать соединители и пользовательские соединители из формулы Power Fx малокодового подключаемого модуля.

  1. Создайте подключение к нужному соединителю.
  2. Добавьте ссылку на подключение к подключению в среде Dataverse.
  3. В редакторе выражений Power Fx малокодового подключаемого модуля введите имя ссылки на подключение (внутреннее имя с префиксом и нижним подчеркиванием, например new_connectorName, а не отображаемое имя).
  4. Intellisense показывает доступные действия. Выберите нужное действие, а затем введите необходимые параметры.

Прежде чем использовать соединитель в малокодовом подключаемом модуле, просмотрите документацию соединителя, чтобы убедиться, что вы правильно передаете входные и выходные параметры.

Дополнительные сведения: пример

Заметка

  • Не все действия соединителя поддерживаются в настоящее время.
  • Не используйте соединитель Dataverse для подключения к таблицам Dataverse из выражения подключаемого модуля. Вместо этого используйте собственные функции Power Fx для взаимодействия с коллекциями: фильтр, поиск, подстановка, исправление, сбор и установить, где столбцы рассматриваются как глобальные переменные.

Тестирование малокодового подключаемого модуля

Тестирование мгновенных подключаемых модулей

  1. На Главном экране выберите мгновенный подключаемый модуль из списка, затем выберите Тестирование на панели команд. Вы также можете перейти к этому экрану из редактора мгновенного подключаемого модуля на панели команд после его сохранения. Выберите «Тестирование» для малокодового подключаемого модуля

  2. Укажите значения для входных параметров, определенных в малокодовом подключаемом модуле, а затем выберите Выполнить. Выберите «Выполнить для тестирования малокодового подключаемого модуля

Проверьте полученный ответ.

Совет

Используйте выходные параметры для проверки того, соответствуют ли поведение и результаты тому, что вы ожидаете. В противном случае вы увидите только результат тестирования: успех или неудача.

Тестирование автоматических подключаемых модулей

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

Совет

Во время стадии предварительной версии вы можете вызвать связанное событие данных с помощью редактора таблиц в Power Apps:

  1. Войдите в Power Apps, перейдите в Таблицы и выберите таблицу Подключаемый модуль.
  2. На панели команд выберите Изменить.
  3. Создавайте, обновляйте или удаляйте строки непосредственно из этого представления. Либо откройте строку в форме по умолчанию, выбрав ее, а затем выберите Редактировать строку с помощью формы на панели команд.

Интеграция малокодового подключаемого модуля

Вызов мгновенного подключаемого модуля из приложения на основе холста или с пользовательской страницы

  1. В приложении Ускоритель Dataverse:
    1. Выберите мгновенный подключаемый модуль в списке.
    2. Выберите Скопировать фрагмент кода на панели команд. Вызов малокодового подключаемого модуля экземпляра
    3. Вставьте и сохраните скопированную формулу в текстовом редакторе или блокноте (куда вы сможете легко вернуться).
  2. В Power Apps:
    1. Создавайте или редактируйте приложение на основе холста (или пользовательскую страницу) в Power Apps Studio.
    2. На левой панели навигации на вкладке Источники данных выберите + Новый источник данных и выполните поисковый запрос Среда из соединителя Dataverse.
    3. Вставьте в холст следующие компоненты:
    • Добавьте элементы управления вводом, соответствующие типу данных каждого параметра, например Ввод текста для текста или числе, переключатель для логического значения.
    • Если область подключаемого модуля привязана к таблице, добавьте поле со списком, связанное с той же таблицей, чтобы можно было выбрать входные данные.
    • Добавьте кнопку, чтобы вызвать подключаемый модуль.
  3. Вставьте формулу подключаемого модуля, которую вы скопировали в свойство OnSelect кнопки.
  4. Сопоставьте каждый входной параметр Value для ссылки на соответствующие элементы управления вводом:
    • Если бы формула была Environment.new_CalculateSum({ X: Value, Y: Value });, ее можно переписать так: Environment.new_CalculateSum({ X: TextInput1.Text, Y: TextInput2.Text });
    • Если формула была связанной, замените Environment на отображаемое имя таблицы для доступа к подключаемому модулю.
  5. Если выходной параметр определен для малокодового подключаемого модуля:
    1. Зафиксируйте ответ в формуле Set() или UpdateContext(): Set( ActionResult, Environments.CalculateSum({ X: TextInput1.Text, Y: TextInput2.Text }) );. Отобразите переменную в подписи. Вы также можете использовать формулу Notify() для отображения данных в уведомлении.
  6. Запустите приложение и выберите команду на панели команд, чтобы выполнить малокодовый подключаемый модуль.

Подробнее о том, как можно вызвать действия Dataverse непосредственно из Power Fx в приложениях на основе холста.

Вызов мгновенного подключаемого модуля из облачного потока Power Automate

  1. В облачный поток добавьте новое действие из соединителя Microsoft Dataverse.
  2. Выберите действие под названием Выполнить несвязанное действие или Выполнить связанное действие.
  3. Выберите свой подключаемый модуль (он имеет уникальное имя с префиксом).
  4. Укажите значения для всех входных параметров (если они есть).

Вызов мгновенного подключаемого модуля из веб-API Dataverse

Выполните действия для разделов Несвязанное действие или Функция, привязанная к таблице в разделе Вызов пользовательских API из документации по веб-API (в зависимости от соответствующей области подключаемого модуля).

Справка по малокодовым подключаемым модулям

Если у вас возникли проблемы при создании или выполнении малокодового подключаемого модуля, ознакомьтесь с этими советами по поводу возможных распространенных проблем: Советы по малокодовым подключаемым модулям Microsoft Dataverse и известным проблемам

Получение справки и поддержки

Чтобы решить проблемы с установкой решения Accelerator в Dataverse или проблемы с малокодовыми подключаемыми модулями, не описанные в статье Советы по малокодовым подключаемым модулям Microsoft Dataverse и известным проблемам, например при получении недокументированных ошибок, воспользуйтесь справкой и или обратитесь в службу поддержки и укажите следующую информацию:

  • Тип проблемы: Web API и SDK Dataverse
  • Подтип проблемы: набор Accelerator для Dataverse

Примеры малокодовых подключаемых модулей, которые вы можете создавать

Несколько примеров создания малокодового подключаемого модуля см. в разделе Пример малокодового подключаемого модуля Dataverse (предварительная версия)

Ограничения

  • Объект языка среды необходимо прочитать, чтобы получить доступ к новым подключаемым модулям внутри существующих приложений на основе холста. Для любых подключаемых модулей, созданных после того, как вы добавили источник данных таблицы среды в существующее приложение на основе холста, вам нужно удалить и прочитать объект языка среды Power Fx. Затем обновленный список подключаемых модулей отобразится как действия.

  • Для Intellisense требуются явная нотация в автоматических подключаемых модулях, если вы хотите ссылаться на какие-либо таблицы в формуле. Используйте следующий синтаксис устранения неоднозначности, например [@Accounts], используя квадратные скобки и символ @ (не Accounts).

  • Поддержка вложенности. Подключаемые модули могут вызывать из выражений Power Fx только собственные действия (опубликованные Майкрософт).

  • Некоторые сценарии использования функции Collect требуют использования функции Patch. Есть некоторые сценарии, в которых Collect() не работает. Обходной путь заключается в использовании функции Patch(), как показано в примере заполнения столбца «В отношении» ниже. Если вы создаете автоматизированный подключаемый модуль, добавляйте @ к каждой таблице, на которую ссылается формула Power Fx.

    Patch(Faxes,
        Collect(Faxes, { Subject : "Sub1" } ),
        { Regarding : First(Accounts) }
    )
    
  • Когда малокодовые подключаемые модули взаимодействуют с соединителями и используется DLP, администратор может заблокировать создание подключений с помощью DLP. Однако существующие ссылки на подключения в среде Dataverse продолжают работать. Если администратору необходимо заблокировать все взаимодействия малокодовых подключаемых модулей с какими-либо соединителями, он может отключить параметр организации Allowconnectorsonpowerfxactions. Этот параметр включен по умолчанию и может быть отключен обычными методами SDK (WebAPI, SDK, PowerShell и т. д.). Вы можете отключить этот параметр с помощью малокодового мгновенного подключаемого модуля следующим образом:

    Patch(Organizations, First(Organizations), { 'Enable connectors on power fx actions.': 'Enable connectors on power fx actions. (Organizations)'.No })
    
  • Подключаемые модули, использующие соединители, могут выводить результаты только из определенных полей. В связи с этим вам необходимо сопоставить определенные примитивные значения из ответа соединителя с выходными значениями.

Малокодовые подключаемые модули, которые имеют ограничение на пользовательские соединители

Если у вас есть малокодовые подключаемые модули с пользовательскими соединителями, сначала необходимо импортировать подключаемые соединители, а затем ссылки на подключения или потоки.

Если ваша среда не содержит пользовательский соединитель в решении, импортируйте отдельное решение, содержащее только пользовательский соединитель. Выполните этот импорт, прежде чем импортировать фактическое решение. Это нужно сделать в первую очередь, поскольку Azure необходимо зарегистрировать пользовательский соединитель до импорта других компонентов решения.

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

Дополнительные сведения: Создание пользовательских соединителей в решениях: известные ограничения

См. также

Малокодовые подключаемые модули Power Fx (предварительная версия)

Использование готового запроса в малокодовом подключаемом модуле Dataverse в Power Apps

Создание автоматизированного малокодового подключаемого модуля с помощью Power Apps (видео)

Создание мгновенного малокодового подключаемого модуля с помощью Power Apps (видео)