没有行政组织的列表如何按照行政组织过滤(如何设置行政组织范围)原创
金蝶云社区-张晓晔
张晓晔
3人赞赏了该文章 163次浏览 未经作者许可,禁止转载编辑于2023年08月02日 10:30:33

需求背景

行政组织管理-职位模板,作为基础资料,只能按照业务组织隔离,但客户作为单业务组织想按照行政组织隔离怎么办?


需求分析

当前用户只能看到且只能使用所属行政组织范围内的职位模板,包括:

1、职位模板列表按照用户的行政组织过滤行数据;

2、创建职位时,职位模板F7按照用户的行政组织过滤行数据


延伸需求

该方案可延伸用于,数据需要按照行政组织隔离,但数据本身未记录行政组织字段。

类似于其他领域有【设置行政组织范围】的功能


配置思路

一、职位模板列表

1、在职位模板表单增加行政组织F7字段,作为职位模板的可用行政组织范围;

2、在职位模板列表增加行政组织字段,作为行数据过滤的条件;

3、在职位模板列表视图配置domain,进行数据过滤。

二、创建职位页面的职位模板F7

4、在职位模板F7,配置行政组织字段

5、配置职位模板F7视图的domain,进行数据过滤


详细配置说明

1、职位模板实体增加行政组织F7字段

设置完  记得保存并启用方案。

字段名称在视图中使用。

上传图片


 

2、职位模板表单和列表分别增加行政组织字段

视图配置,找到职位模板表单和列表视图,分别配置name为上面实体增加的字段名称,并注意修改“列标题”

上传图片

该步骤配置完成后,可以在创建职位模板表单页面选择行政组织,并保存行政组织。保存后在列表可以查看到对应的行政组织。

3、职位模板列表增加domain过滤条件

职位模板列表的domain内容:  [('AdminOrg.id','=','$UserAdminRangeFilter')] 

本地测试该页面不能配置或行政组织为空,也就是说职位模板上必须选择行政组织才能在列表上被看到。

其他页面可以尝试配置以下语句,加上为空的条件则不用必填  [('|',('AdminOrg.id','is','null'),('AdminOrg.id','=','$UserAdminRangeFilter'))])

上传图片

该步骤配置完成后,可以完成职位模板列表按照用户行政组织过滤。

4、创建职位页面的职位模板F7中query增加字段

导入数据源   query="com.kingdee.eas.hr.org.app.PositionStandardLibQuery"

按图片分别配置实体和字段,后不要忘记保存和启用


上传图片

上传图片

上传图片



5、创建职位页面的职位模板F7中增加字段

职位模板f7 UIPK= com.kingdee.eas.hr.org.app.PositionStandardLib.F7


上传图片

该步骤完成后,创建职位时,选择职位模板F7弹框会显示职位模板配置的对应行政组织

6、职位模板F7视图增加domain过滤条件

这里可以过滤行政组织为空的职位模板

配置F7按条件过滤,行政组织为空或者在当前用户范围内

domain内容:  [ ('&', ('BaseInfo.state','=',1), ('id','=','$SHRBasicItemFilter') ,('|',('AdminOrgUnit.id','is','null'),('AdminOrgUnit.id','=','$UserAdminRangeFilter'))) ]

上传图片

此步骤完成后,可以实现用户选择到行政组织范围内的职位模板

赞 3