Power Platform Dataverse 101

2025-06-07

Power Platform Dataverse 101

每个人都知道 Power Platform 的关键支柱:

  • Power BI
  • Power Apps
  • Power Automate
  • 强力页面
  • Copilot Studio(以前称为 Power Virtual Agents)

但它们是支柱,那么它们建立的基础是什么呢?那就是 Dataverse(除了 Power BI,但它只是名义上属于 Power Platform)。为什么这么说呢?有两个原因:

  • 数据是大多数系统的基础
  • 该平台建立在 Dataverse 之上。

最后一个有趣的是,一旦某个东西有了解决方案,它就会建立在 Dataverse 上

  • 解决方案-解决方案表
  • Flow - 工作流程表
  • 连接参考 - 连接参考表

诸如此类。因此,我想谈谈 Dataverse,入门需要了解的基础知识如下:

  • 历史
  • 使用数据
  • 字段/数据类型
  • 访问控制
  • 许可证

历史

Dataverse 最初是 Dynamics 的数据库,后来被重新设计用于 Power Platform。它基于通用数据模型 (Common Data Model ) 构建,该模型是一种旨在引入标准化的共享模式(这也是它被称为通用数据存储的原因)。

通用数据模型

对于某些人来说这很棒,一堆预先建好的表格,对我个人而言,它就像所有的模板一样,理论上很棒,但永远无法 100% 满足我的需要,所以我更喜欢自己制作。

使用数据

访问/更新 Dataverse 数据主要有 5 种方式:

  • 模型驱动应用程序
  • 画布应用
  • 流动
  • 表设计器
  • API

我知道它们实际上都是 API,但在这种情况下,我的意思是使用Web API,还有更多像 Power Query 这样的,但我认为这些是目前主要的

模型驱动
主要方式是使用模型驱动应用,因为它的设计初衷就是作为 Dataverse 表的前端。模型驱动应用基本上由一个表单和一个表视图组成(我知道还有很多其他的,但这是核心),因此它们允许你在表单中创建/更新/删除操作,并在列表视图中查看/删除操作。经典的设计器,怎么说呢,不太人性化,但新的设计器非常简单易用(如果你用过 SharePoint 列表,那就更容易上手了)。

模型驱动应用程序

Canvas App / Flows
Canvas Apps 和 Flows 使用 Dataverse 连接器访问表。

Dataverse 连接器

这些是 API 封装器,已预先打包,方便使用。共有 25 个操作(以及允许访问不同 Dataverse 环境的重复操作)。

表格设计器
表格设计器允许直接编辑表格(类似 Excel),并上传 Excel 文件。它并非访问或编辑数据的最佳位置,因为它主要用来配置表格,但它非常适合在设置表格时预加载数据。

API最后是 API,这可能是最少使用的,但也非常酷。该 API 基于OData
构建,OData 是一套 API 结构标准,这使得它使用起来更加方便(更多信息请点击此处)。该 API 允许 procode 解决方案/其他系统与 Dataverse 集成。

字段/数据类型

Dataverse 有多种不同的字段类型,首先是标准类型:

  • 文本
  • 数字
  • 日期和时间
  • 货币
  • 文件

他们还为每种格式预设了格式:

数据类型

另外还有一些更复杂的类型:

  • 选择
  • 抬头
  • 自动编号
  • 公式

选择是简单的下拉菜单,其额外优势在于它能够感知解决方案,因此可以跨表重复使用。
查找是指向另一个表的链接,其额外优势在于它允许扩展(因此您可以将查找表中的字段拉到表视图中)。
自动编号允许自动创建序列号/日期(类似于 SharePoint ID),其实用性超乎您的想​​象。
公式是 Power FX 代码,它与记录中的其他值(例如 SharePoint 计算列)相关。

访问控制

Dataverse 的一大优势在于访问控制。SharePoint 或许是大多数人的首选数据库,但他们都知道它的痛点:它没有行级或字段级的安全性。所以在 SharePoint 中,只能查看/编辑所有记录或编辑自己的记录,仅此而已。

对于 Dataverse,我们使用安全角色(没错,就是我们用来访问平台的角色,Power Platform 中的所有内容在底层都是 Dataverse 的),我们创建新角色,然后向表添加权限。我们可以完全精细地设置角色是否可以创建、读取、更新或删除记录,以及他们是否只能查看自己的记录、您的业务组记录还是整个组织的记录。角色也可以设置为仅针对一个业务组或组织(在将角色授予用户/团队时设置)。

安全角色

这些角色是解决方案感知的,因此可以添加到解决方案中以跨环境迁移(并在制造商工作室中创建/编辑,而不仅仅是管理中心)。


级别允许用户查看一组记录(例如,英国团队可以查看所有仅限英国的记录)。必须在功能中启用行级别安全性,然后将每条记录设置为一个业务组(因此需要在表单或业务流程/插件中输入)。

设置
在管理中心的每个环境中创建业务组,并在为用户提供安全角色时设置权限

字段级别
字段级别允许特定字段打破行继承。因此,用户可能可以编辑某条记录,但不能编辑特定字段(例如,您创建了一个审批请求,他们无法编辑显示已批准/未批准的字段)。

字段级别安全性在字段设置中启用
启用设置

然后在管理中心的列安全配置文件下创建它(这也是解决方案感知的)。

许可证

生活中没有什么好东西是免费的,Dataverse 也一样。

首先,要访问任何自定义/cdm 表,您需要高级许可证,这对于模型驱动、Canvas 和 Flows 也是一样的(尽管我不认为 API 需要高级许可证)。

接下来是存储成本,每个高级许可证都会提供一些存储成本(250mb 数据、2gb 文件),整个租户也会提供一些开箱即用的存储成本(10gb 数据、20gb 文件、20gb 日志),每个环境没有隔离措施。

您还可以购买
每月 1 GB 的存储附加组件
数据:30 英镑
文件:1.50 英镑
日志:7.50 英镑

仅供参考,Azure 数据存储的成本大约为每 GB 每月 20 便士(有一些条件/警告,特别是因为这不包括计算成本,但你明白我的意思)。


还有很多内容需要介绍,但希望本文涵盖了基础知识和最重要的部分。


如果您想收到每个新博客的通知(我在 Power Platform 社区也发布了一些博客),请在下方订阅

文章来源:https://dev.to/wyattdave/power-platform-dataverse-101-11g5
PREV
Power Platform 上的过度工程艺术
NEXT
Power Automate 的 5 个快速修复