加载中…
正文 字体大小:

如何创建Dynamics 365的虚拟实体(Virtual Entities)

(2017-11-28 22:16:57)
1. 准备demo的使用环境-需要申请一个Dynamics 365的试用账号,网上一般30天左右
2. 登陆试用账号,访问Dynamics 365的Admin管理门户,基于https://portal.office.com/adminportal/home#/homepage?sspr=1
由于虚拟实体的类型和虚拟实体数据提供者相关联,因此需要安装Odata v4 data provider。
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
3. 使用新的虚拟实体与来自外部系统的数据进行交互
从2017年7月的Dynamics 365(在线)更新开始,虚拟实体可以通过无缝地将数据存储在外部系统中,将数据作为Dynamics 365中的实体,而无需复制数据,而且通常不需要自定义代码。
虚拟实体取代了以前的客户端和服务器端方法来集成外部数据,这些数据需要定制的代码,并受到许多限制,包括不太完美的集成、数据重复,或者开发资源的过渡承诺等。此外,对于管理员和系统自定义器,虚拟实体的使用极大地简化了管理和配置。

你需要测试的是:
1. 访问在OData v4中公开数据的服务
2. 在这个外部数据源中的一个实体,它有一个相关的GUID主键
3. 访问Dynamics 365的最新预览
在odata.org站点上,您将找到可以用于测试的服务。只要输入services.odata.org/V4/OData/OData.svc/$metadata 在你的浏览器中就看到以下的实体列表
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图一
如果你扩展了一个给定的实体分支,如产品,你将需要检查该实体是否有类型GUID的相关键(上面的第2点要求)。请注意,这并不是产品实体的事实(参考如下图片)。所以这个实体不是我们可以引入的。
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图二
但是,扩展实体“Advertisement”分支,我们看到这个实体有一个GUID类型的相关键,所以我们将使用它。注意,ID拼写为“ID”(所有字母大写),同时还要注意名称和AirDate属性——我们未来将返回这些属性。
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图三
看到哪些记录该数据集返回我们需要收集(复数)名称的实体——类型 services.odata.org/V4/OData/OData.svc
在浏览器中,看看收集的名字是“Advertisements”
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图四
利用这些信息在浏览器输入services.odata.org/V4/OData/OData.svc/Advertisements得知数据集包含两个记录(这是两个外部记录表现我们将在Dynamics 365使用新的虚拟实体的能力)。

注意:您可以使用这个OData API资源管理器来对数据集进行更直观的表示。
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图五
4. 创建一个虚拟实体数据源
通过识别数据源,我们可以进行下一步——创建一个虚拟实体数据源。在Dynamics 365点击Setting- >Administration(1)和Virtual Entity Data Sources(2)打开数据源网格。
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图六
Data Sources网格点击 NEW (1)打开 Select Data Provider对话框如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图七
Select Data Provider对话框选择 OData v4 Data Provider (仅有的选项) 然后点击OK 打开 New OData v4 Data Source 对话框
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图八
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)

图九

New OData v4 Data Source对话框的General区域录入三个字段值

  1. Name文本框针对数据源选择的名称 (这里使用 "Public Service")
  2. URL文本框录入或复制粘帖services.odata.org/V4/OData/OData.svc
  3. Timeout文本框(可选) 录入等待web service响应等待的秒数

然后点击 OK (4) 并返回到 Data Sources视图如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)

图十

如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图十一
4. 创建一个虚拟实体
最后就是创建一个虚拟实体从OData数据源展现数据,点击 Settings -> Administration -> Customize the System 
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)

图十二

创建一个虚拟实体类似于一个自定义实体, 选择 Virtual Entity 勾选框 (1) - 请看下图

除了虚拟实体的勾选框还需要选择Data source (2), 同样还要录入External Name和 External Collection Name 的值 (3) 完成整个实体的定义。

所以样例如下

  1. 新虚拟实体的名称叫做"Advertisement" (自己录入)
  2. Data Source 称 "Public Service" (参考上面的图十)
  3. External Name = "Advertisement"和 External Collection Name = "Advertisements" (参考图三、图四)
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图十三

一旦新的虚拟实体创建了一些重要的东西来确保/编辑,以便映射后可以正常工作。
系统会自动创建两个字段, 一个是 id (1) ,另一个是 name (2). 你需要映射到外部数据源的名称。
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图十四
所以 ID  字段(主键) 保证可以对应到External Name 称的文本框 (1) 和数据源的data source (2)属性名称匹配,参考图三,同时注意大小写。
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图十五

Name 字段保证External Name 名称文本框 (1) 和 Data Type (2) 的属性名称匹配,类型在data source (3) ,请参考图三,注意大小写和数据类型。
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图十六
作为可选项你可以创建第三个字段将AirDate field字段的数据从外部数据源 (数据类型) 带入数据,参考图三。请注意大小写和数据类型。如果属性是Nullable = "false" 就像在图中看到的 AirDate 属性 (3), 你就必须设置Field Requirement Business Required (4)
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图十七
利用设计的字段在创建Form
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图十八
通过设计好的Columns来创建View
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图十九
发布客制化
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)

图二十
可以在列表视图看到2条来自于数据源的记录,请参考图五。
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图二十一
打开记录可以看到你自己设计好的Form
如何创建Dynamics <wbr>365的虚拟实体(Virtual <wbr>Entities)
图二十二

我希望大家能在Dynamics 365中尝试这一种全新的方式来处理Dynamics 365中外部数据源的数据,而不是Dynamics 365中的数据。数据游离于在Dynamics 365之外,但与其他实体一样,它可以在Dynamics 365中使用。


0

阅读 评论 收藏 转载 喜欢 打印举报
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4006900000 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有