在业务对象中关联另一类业务对象的方法原创
金蝶云社区-Tick
Tick
17人赞赏了该文章 6,306次浏览 未经作者许可,禁止转载编辑于2022年12月08日 19:45:42
summary-icon摘要由AI智能服务提供

本文介绍了在PLM(产品生命周期管理)平台上,如何实现项目与销售业务领域客户联系人的关联方法。步骤包括定义关联业务模型、建立业务关系模型、增加页签维护关联对象、运行效果检查及参数获取。通过创建关联单据或基础资料、设置表关系、增加维护页签等步骤,实现了项目与客户联系人的关联及在界面上的管理。

本例说明如何利用PLM平台特性,实现在PLM的业务对象维护页签中,关联其它业务对象的方法。

(这里以PLM项目关联销售业务领域客户联系人为例)


Step1:定义好关联关系的业务模型

Step2: 建立关联业务对象与被关联业务对象之间的业务关系模型

Step3: 增加一个页签来在业务对象界面中加页签来对被关联的业务对象进行维护

Step4:  运行效果检查



Step1:定义好关联关系的业务模型(项目关联客户联系人)


a)先查找业务对象的存储表(如项目:T_PLM_PDM_BASE)

图片.png



b)创建一个关联的单据或基础资料(这里用的是单据),如:项目关联客户联系人

图片.png


c)设置单据或基础资料的主键字段与上面的(项目基础资料)一致(FID)

注:如果以基础资料单据创建,那么唯一识别字段名也要一致(项目基础资料:FMasterID)

       不支持业务对象是单据,关系的业务模型以基础资料

图片.png


d)设置关系业务对象的存储主表与要关联的业务对象一致

(如上面找到的项目的储存主表名T_PLM_PDM_BASE ,所有PLM的业务类型对象储存主表名都是T_PLM_PDM_BASE)

图片.png




Step2: 建立关联业务对象(项目)与被关联业务对象(客户联系人)之间的业务关系模型


a)创建业务关系模型(这里用单据体);注意定义好3中的表名要规范好

图片.png


b)只增加一个单据体,来描述1(项目)对 n(客户联系人)的关联

添加基础资料字段(如果是单据,可以通过表视图映射创建一个类似的基础资料的替代模型:如视图:create view as

select fid as fid,fid as fmasterid...,就能把fid一个字段,变成基础资料必须的两个字段了,再将视图绑到替代的基础资料模型上,这样单据就可以变成基础资料使用了)


图片.png


c)添加相关的引用字段(编码、姓名等)及业务字段(跟踪进度等)

图片.png

d)增加维护的操作菜单

图片.png

并且在单据体菜单上加一个保存的按钮,点击绑定保存操作(上图中未给出)。


特别提醒:由于这个单据关联的是项目主数据表,当项目数据删除时,则相应的客户联系人数据是不会删除的。

如果把这个客户联系人单据发布成列表功能,则会出现空数据行的情况,这时您需要在列表插件或列表过滤条件中,用过滤条件滤掉这些空白的行。



Step3增加一个页签来在业务对象(项目)界面中对被关联的业务对象(如:上面创建的关系模型单据)进行维护

可参考:https://vip.kingdee.com/article/162848


a)找到业务对象(项目)的主体界面(通过http数据监控)可快速找到

图片.png


图片.png


b)扩展单据

图片.png



c)增加页签

图片.png



d)给页签绑定参数

图片.png
相关参数可参考:https://vip.kingdee.com/article/162848



Step4:  运行效果检查

图片.png



Step5:参数的获取

图片.png


import clr

clr.AddReference("System")

from System import String

def OnLoad(e):

    this.View.ShowMessage(String.Format("传入的标识参数:{0}",this.View.OpenParameter.GetCustomParameter("SourceId")))


用这个获取参数:this.View.OpenParameter.GetCustomParameter("参数名")


图片.png

如果想在列表中,点击打开相关行对应的单据,请参考:https://vip.kingdee.com/article/48864143323168256


------------END-----------

图标赞 17
17人点赞
还没有人点赞,快来当第一个点赞的人吧!
图标打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!