Excel表样设计 - 属性函数

栏目:yonbip/nccloud知识作者:用友来源:用友发布:2024-08-24浏览:1

Excel表样设计 - 属性函数

 

1.应用场景及问题描述

表样中需要根据当前单元格的维度(如参数维、行列表头维),取得文字的组合,应该如何设置?

比如:

1.需要在表格左上角显示:“编制主体:”+公司名称+部门名称,如果是公司编制的时候,只需要“编制主体:”+公司名称

 

2.自动展示浮动区中可变维收支项目自定义项1(收支项目类别)的内容。

 

2.解决方案

2.1 总结 

1. 在excel端设置属性函数,实现任务函数字段、表头维度函数字段的显示。

 

2. 如果需要多个属性函数组合显示,就要使用CONCATENATE函数(NCC2111目前不支持最新的CONCAT函数),对于问题1解决方案的函数是:

CONCATENATE("编制主体:",GetProperty("任务函数","Task","主体:ENTITY","部门所属业务单元:dept_org_name"),GetProperty("任务函数","Task","主体:ENTITY","主体单元名称:name"))

 

3. 可以使用IF函数,配合属性函数和CONCATENATE函数使用,示例:

IF(GetProperty("任务函数","Task","主体:ENTITY","是否部门:orgtype3")="Y",CONCATENATE("编制主体:",GetProperty("任务函数","Task","主体:ENTITY","部门所属业务单元:dept_org_name"),GetProperty("任务函数","Task","主体:ENTITY","主体单元名称:name")),CONCATENATE("编制主体:",GetProperty("任务函数","Task","主体:ENTITY","主体单元名称:name")))

 

4. 预置维度属性里没有的档案属性,可以在维度属性节点自行增加。注意自定义项不能只选择def1,而是要在手工编辑为def1.name,这样才能显示为自定义项的名称。对于问题2的白头维函数是:

GetProperty("","DimLevel","指标:MEASURE","收支项目类型名称:ic_def1.name")

 

5. 可使用任务函数和表头维度函数的单元格区域不同,设置时如果提示错误,按照提示信息设置即可。

 

2.2 详细步骤

2.2.1 表头属性函数

需要在表格左上角显示:“编制主体:”+公司名称+部门名称,如果是公司编制的时候,只需要“编制主体:”+公司名称

 

通过属性函数,可以使表样显示 任务函数/表头维度函数的一些属性。

 

比如任务函数的主体维度,就预置有主体单位编码、主体单位名称等项目可以选择。选择后在表样里,属性函数自动带出所选项目的值。(下左图)

任务函数的主体指的是表单编制界面左侧的主体,可以是公司也可以是部门。(下右图)

 

推荐分步设置公司名称、部门名称,再用CONCATENATE函数进行组合。

第一步 主体单位名称(即部门名称)

GetProperty("任务函数","Task","主体:ENTITY","主体单元名称:name")

 

第二步 设置部门所属公司名称(即公司名称)

GetProperty("任务函数","Task","主体:ENTITY","部门所属业务单元:dept_org_name")

 

添加自定义维度属性的方法

注意系统是没有"部门所属业务单元:dept_org_name"字段的,需要自行添加,添加方法如下:

1.维度管理节点,修改维度,在右上角增行添加新的维度属性。

   

2.属性编码和属性名称可以自己编写,来源基础档案选择组织_部门,来源属性字段选择PK_org.name。代表的就是部门所属业务单元的名称。

3.新的维度属性建立后,在维度管理界面就可以看到这个字段存的值。

4.Excel端清除一下缓存,就可以在维度属性里看到新增的“部门所属业务单元”字段。

 

第三步 用CONCATENATE函数组合出 编制主体:部门所属业务单元名称+部门名称

CONCATENATE("编制主体:",GetProperty("任务函数","Task","主体:ENTITY","部门所属业务单元:dept_org_name"),GetProperty("任务函数","Task","主体:ENTITY","主体单元名称:name"))

 

实际到第三步就已经解决问题。自建的维度属性不会影响到公司主体时的取值。

为了演示设置方法,我们假定还要进行区分,部门主体要取值公式要和公司主体的取值公式不一样。

 

第四步 取到“是否部门”字段

GetProperty("任务函数","Task","主体:ENTITY","是否部门:orgtype3")

 

第五步 按“是否部门”判断,等于Y的时候执行一个公式,不等于Y的时候执行另外一个公式

IF(GetProperty("任务函数","Task","主体:ENTITY","是否部门:orgtype3")="Y",CONCATENATE("编制主体:",GetProperty("任务函数","Task","主体:ENTITY","部门所属业务单元:dept_org_name"),GetProperty("任务函数","Task","主体:ENTITY","主体单元名称:name")),CONCATENATE("编制主体:",GetProperty("任务函数","Task","主体:ENTITY","主体单元名称:name")))

 

2.2.2 表头属性函数

自动展示浮动区中可变维收支项目自定义项1(收支项目类型)的内容。

 

首先也需要在维度管理中,将指标-收支项目的自定义项1添加为维度属性。之后才能通过维度属性函数引用。在3.2.1章节里,已经详细写了添加新项目的过程,这里就简单写一下。

 

自定义档案定义在维护自定义项目后,在用户定义属性设置节点设置了收支项目的def1使用该自定义项目,确认收支项目的自定义项1这个字段有值。

 

 

之后在维度管理节点,设置指标的维度属性,增加收支项目类型属性,对应收支项目的def1字段。这里要注意:手工选择只能选择到def1,要自己编辑来源属性字段为def1.name。

 

选择表格内表头的文本区域,填充表头维度函数的属性即可。

浮动区将指标作为行维度,注意要设置浮动范围。

 

GetProperty("","DimLevel","指标:MEASURE","收支项目类型名称:ic_def1.name")

 

3.注意事项

表头维度函数只能设置在表头文本区域中,选择的单元格不对就会提示以下错误信息:

表头文本区就是以下截图框内的位置,其行维度或列维度只有一个方向存在维度编码区。

 

Excel表样设计 - 属性函数

 1.应用场景及问题描述表样中需要根据当前单元格的维度(如参数维、行列表头维),取得文字的组合,应该如何设置?比如:1.需要在表格左上...
点击下载文档
分享:
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息