在https://vip.kingdee.com/article/473937439900382976?productLineId=1&isKnowledge=2
帖子中,平台确认多类别基础资料未支持数据规则隔离,费用报销相关单据中的往来单位字段有不少需要,下面给出二开方案和部分代码示例
1.背景简介和举例:
以差旅费报销单为例:
根据往来单位绑定的多类别基础资料列表的往来单位类型,可以知道往来单位主要涉及以下基础资料
客户,供应商,员工,部门和其他往来单位五种基础资料,下面以供应商为例子,看如何通过二开实现数据隔离。
2.实现原理:
通过配置基础资料数据规则,往来单位放大镜列表开窗时增加过滤条件来实现。
3.具体步骤,以供应商为例:
3.1 要想实现给基础资料配置数据规则,首先在单据上要存在这个基础资料,那第一步就是在差旅费报销单上,增加一个基础资料字段F_ABC_BASE_QTR,基础资料字段选择供应商,同样,对于往来单位类型中设置的可选基础资料,有几个需要做数据隔离,那就需要创建几个对应的基础资料字段,并将可见性全部取消,此处是借用基础资料字段来设置数据规则,实际并不存储数据,页面上也无需展示
3.2 配置数据规则,当字段创建完成之后,管理员即可在业务对象功能授权给对应基础资料设置相关数据规则
3.3 插件编写,当设置完相关权限规则之后,给差旅费报销单增加表单插件,或继承原厂插件,覆写BeforeF7Select方法,给开窗时,解析对应表单的数据规则并对应的基础资料增加额外的过滤,以实现最终过滤,代码示例如下(源码见附件):
3.4 编译插件并添加到表单插件上,如继承原厂插件,需要停用原厂,启用二开插件
以上
public override void BeforeF7S …(62.94KB)
推荐阅读