如果 Master Data Services 中的模型是主题领域(例如客户、产品等)的表示,是否有可能拥有使用不同模型作为其源的基于域的属性?
例如,如果创建一个客户模型并定义一个名为“客户”的实体,该实体将拥有客户的地址信息。城市、州/省、国家等
但是,我可以使用包含 Country 实体并链接到该实体的 Geography 模型,而不是为 CustomerCountry 创建实体吗?然后我还可以将 Geography.Country 实体用于供应商和员工。
如果 Master Data Services 中的模型是主题领域(例如客户、产品等)的表示,是否有可能拥有使用不同模型作为其源的基于域的属性?
例如,如果创建一个客户模型并定义一个名为“客户”的实体,该实体将拥有客户的地址信息。城市、州/省、国家等
但是,我可以使用包含 Country 实体并链接到该实体的 Geography 模型,而不是为 CustomerCountry 创建实体吗?然后我还可以将 Geography.Country 实体用于供应商和员工。
不,您不能跨越模型边界 - 主要原因是模型是版本控制的单位。有两种解决方法:
这些都不是很好的选择 1) 笨拙和 2) 不保持自动完整性。
我个人使用选项 2),我可以在 MDS 之外使用一些额外的逻辑/业务规则来确保代码匹配。使用全球性且不会更改的代码(例如国家和城市代码)更容易做到这一点。
这似乎很老,但现在可以在 2016 年实现,并且通过 Entity Synch 完成。这个想法是您可以跨模型同步您的实体。有两种方式来运行同步,按需或自动。
有关更多详细信息,请参阅https://docs.microsoft.com/en-us/sql/master-data-services/entity-sync-relationship-master-data-services