我们正在开发一个 Canvas 应用程序,允许用户执行批量操作,例如向用户分配角色、管理权限等。为此,我们在 PowerApp 上创建了一个自定义连接器,该连接器调用 Dynamics CRM Rest API 以使用 swagger JSON 执行各种操作。Azure AD 令牌已用于身份验证。
为了避免各种 UI 限制和挑战,我们现在计划切换到模型驱动应用。 两个问题:
1. 我们如何创建一个使用/调用上述动态 CRM rest API 的 PCF 组件?
2. 如何将此组件嵌入到 Dynamics CRM 模型驱动应用中,以便我们可以在模型驱动应用中使用它们?
- 如何将此组件嵌入到 Dynamics CRM 模型驱动应用中,以便我们可以在模型驱动应用中使用它们?
如果您决定使用 PCF 而不是 Web 资源作为组件,请更好地了解限制。PCF 控件可以呈现为字段控件或数据集控件,这意味着您将替换文本框或子网格到其他内容以进行可视化。
文档 说:
- Replace a field that displays a numeric text value with a dial or slider code component.
- Transform a list into an entirely different visual experience bound to the data set like a Calendar or Map.
- 我们如何创建一个使用/调用上述Dynamics CRM剩余API的PCF组件?
如果是 Web 资源,我们将简单地利用 Xrm.WebApi 在同一上下文中调用 HTML/js Web 资源中的 crm web api。
如果是PCF,crm上下文仍然会像这样支持你:
this._context.webAPI
.retrieveMultipleRecords(TSWebAPI._entityName, queryString)
.then(........
了解更多:代码参考
这两种方法的好处是,不需要额外的身份验证或令牌。由于它们在 CRM 中运行,因此将使用当前用户上下文。如果要模拟某个特权服务帐户进行角色分配,也可以使用 Web api 标头。