...
由过滤条件、Excel表样、数据块组成
配置大体步骤:
配置步骤
本节以inspur6分析报表1作为分析报表入门案例:https://inspur6.hcmcloud.cn/#/flex_report/setup?report=rpt_01
本节以下图所示做一个常规的统计分析表
View file | ||||||
---|---|---|---|---|---|---|
|
新建报表
1. 报表平台中点击新增-新建报表
...
点击过滤设置、添加报表过滤条件
数据源设置
制作前分析:
此报表规则:统计当前部门下人员基本信息、教育经历信息(单条由毕业学校-专业-学历拼成、如果一人存在多条教育经历时、则换行拼接显示)
如果配置1个数据块(主模型当前任职JobInformation、关联模型岗位模型、组织层级模型、人员模型、关联教育经历模型)不可行。因为当一个人有多条教育经历时、通过人员关联教育经历模型后会导致返回多条数据,因为要保证单人单条数据的原则、此时就不满足条件)
得出结论:需要配置2个数据块 数据块1:主模型当前任职JobInformation、关联模型岗位模型、组织层级模型、人员模型
数据块2: 教育经历模型
利用excel模版公式、将教育经历数据拼接成(单条由毕业学校-专业-学历拼成、如果一人存在多条教育经历时、则换行拼接显示)形式与人员数据展示在模版中即可
数据块1 hcm.model.list接口:
代码块 | ||
---|---|---|
| ||
{
"model": "JobInformation",
"filter_dict": {
"on_job": 1,
"begin_date": {
"lte": "2021-04-29"
},
"end_date": {
"gt": "2021-04-29"
},
"position_type": 1
},
"extra_property": {
"relations": [
{
"filter": {
"employee.id": ":employee_id"
},
"model": "Employee",
"key": "employee"
},
{
"filter": {
"position_id": ":position.origin_id",
"position.begin_date": {
"lte": "=date_"
},
"position.end_date": {
"gt": "=date_"
}
},
"model": "OrgPositionHistory",
"type": "outer",
"key": "position"
},
{
"model": "DepartmentHierarchy",
"type": "inner",
"key": "dept_level",
"filter": {
"dept_level.department_id": ":position.parent_id",
"dept_level.begin_date": {
"lte": "=date_"
},
"dept_level.end_date": {
"gt": "=date_"
},
"dept_level.l0_id": 13567318
}
}
]
}
} |
数据块2 hcm.model.list接口:正常这里是可以不传参数的,但是这样第二个数据块取到内容就太多了,容易导致报表计算太慢,所以这里可以传个参数
...
collapse | true |
---|
...
此报表规则:
配置数据块1
1.设置-数据源-新增数据块1-列表取数定义-模型类型 选择自定义
...