Intergraph Smart 3D集成环境中枚举列表隐式映射以及一对多映射

Intergraph Smart 3D集成环境中枚举列表隐式映射以及一对多映射

在最近遇到的一个项目中,客户提出了一个新的需求:在P&ID与Intergraph Smart 3D间实现枚举列表间一对多的映射。客户在P&ID中新建了一个自定义属性与枚举列表:管道规格与型号,顾名思义,其枚举值信息同时包含了管道的规格和型号信息,以类似A.1、B.2的形式表达。在Smart 3D中,客户新建了两个独立的属性与枚举列表:管道规格管道型号 。接下来,客户希望将P&ID中管道规格与型号枚举列表同时映射到Smart 3D中管道规格管道型号这两个表上,也就是P&ID枚举值A.1发布后,Smart 3D中分别接收到规格A与型号1这两个枚举值。 

那么这个需求能否在不开发的前提下实现呢?答案是可以实现,可直接使用Smart 3D中自带的隐式映射功能完成。通过隐式映射,我们还可以更便捷的完成枚举列表之间的映射工作,无需再通过手动一一对应枚举值,或依赖于Schema Editor中的自动匹配功能。

接下来,我们先介绍如何实现SmartPlant Foundation与Smart 3D之间枚举列表的隐式映射,再展示枚举列表之间一对多映射。在演示中,我们会直接参考客户的设置,期间遇到的基础映射以及Schema编辑操作在本文中不会再去详解,若有疑问还请参考基础SPF集成文档。

隐式映射

 

1. 首先,SPF与Smart 3D之间的枚举列表隐式映射是通过匹配枚举值之间的Number值实现的。

 

在下图中,我们通过Schema Editor在SPF中PIDPipeRun类,ICustomPipeAtrributes自定义接口下的PipeCustomSpecAndNumber自定义属性新建了一个枚举列表 SpecNumberList,其枚举值的Number被设为10001 – 10005。

 

Intergraph Smart 3D集成环境中枚举列表隐式映射以及一对多映射

2. 在Smart 3D端,我们通过Excel模板和BulkLoad Reference Data功能在CPMPipeRun类,IJUAPipeCustom自定义接口下的PipeNumberCustom自定义属性新建了一个枚举列表 PipeNumberCustomList, 其Number值也被设置为10001-10005,与SPF端相匹配。

Intergraph Smart 3D集成环境中枚举列表隐式映射以及一对多映射

注:在Smart 3D中,Number值需要在Excel模板中的Codelist Number列先设定,再通过BulkLoad导入。

3. 在完成枚举列表创建、确保枚举值Number值相同后,无需再对枚举列表进行其他操作,可直接正常建立枚举列表所在属性之间的映射关系。在下图中,我们在Schema Editor里IJUAPipeCustom接口内建立了PipeNumberCustom属性与PipeCustomSpecAndNumber属性之间的Retrieve映射关系。

Intergraph Smart 3D集成环境中枚举列表隐式映射以及一对多映射

至此,Smart 3D枚举列表隐式映射建立完毕,此时若PID – SPF段的映射已完成,P&ID中正常发布图纸后,Smart 3D中可直接通过隐式映射接收到相应的枚举值。

注:自定义枚举列表与系统自带枚举列表之间也可以使用隐式映射。

枚举列表一对多映射

SPF -Smart 3D之间枚举列表隐式映射除去便捷性,还可以实现另一个重要的功能:枚举列表之间一对多的映射,也就是SPF中一个枚举列表同时映射到多个Smart 3D中枚举列表。

在下面的例子中,我们将会展示如何将SPF中SpecNumberList同时映射至Smart 3D中的PipeSpecCustomList与PipeNumberCustomList。

1. 同第二步相同,我们在IJUAPipeCustom自定义接口下新建PipeSpecCustom自定义属性,属性对应的枚举列表为PipeSpecCustomList,其Number值也被设置为10001-10005,与第一步SPF中SpecNumberList及第二步Smart 3D中PipeNumberCustomList相同。

Intergraph Smart 3D集成环境中枚举列表隐式映射以及一对多映射

2. 在确保所有相关枚举列表中Number值相同后,我们再次在Schema Editor中找到IJUAPipeCustom接口,进入编辑页面后,选中Advanced Retrieve Map。

Intergraph Smart 3D集成环境中枚举列表隐式映射以及一对多映射

3. 在映射页面右侧,找到新建的PipeSpecCustom属性,通过拖拽的方式与SPF端PipeCustomSpecAndNumber属性建立映射关系。完成后我们可以看到,SPF端PipeCustomSpecAndNumber属性同时映射到了Smart 3D端的PipeNumberCustom与PipeSpecCustom属性。在完成属性间映射后,其下的枚举列表映射也会通过隐式映射自动完成。

Intergraph Smart 3D集成环境中枚举列表隐式映射以及一对多映射

4. 映射建立后,我们在P&ID中设置PipeCustomSpecAndNumber属性值为A.1并发布图纸,在Smart 3D接收后可以看到通过隐式映射接收的PipeSpecCustom 属性值为A,PipeNumberCustom属性值为1。

Intergraph Smart 3D集成环境中枚举列表隐式映射以及一对多映射

注:P&ID与SPF间关于PipeCustomSpecAndNumber属性及枚举列表一对一映射已完成,在本文中不再展示。

以上为SPF与Smart 3D间枚举列表隐式映射及一对多映射的配置方法,希望能够对大家有所帮助!

Intergraph Smart 3D集成环境中枚举列表隐式映射以及一对多映射 THE END

来源:鹰图软件技术(青岛)有限公司

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年8月27日
下一篇 2022年8月27日

相关推荐

发表回复

登录后才能评论