2024 5月6日

新增功能

  • 电子表格

    • 筛选器间联动功能说明

    • 加载筛选器后&开表前,执行计算脚本

    • 展现层权限:Sheet隐藏

    • 展现层权限:按钮禁用

  • UX

    • 动作批量配置;

  • DeepModel

    • 增加分析查询

  • 凭证清单

    • POV中维度字段增加维度表达式相关比较符

    • 支持分组求和视图

功能优化

  • UX

    • 打开外部链接支持表达式;

    • 图表部分配置支持表达式;

    • 切换控件时保留在原来的页签;

    • 弹窗预置表单/明细表样式;

    • 数据标签溢出/重叠问题;

    • 指标卡支持一种不带图标的模板;

  • 工作流

    • 流程监控-流程实例页面优化

  • 维度

    • 无权限用户修改维度成员时的错误信息优化

以下是详细更新说明


在前期,我们已经实现了筛选器和动态表/静态表/浮动行表之间的联动。本次新增筛选器内部之间的联动。

维度成员之间可能存在关联关系,如下几种情况:

1、相同的成员出现在多个维度,比如“部门”和“公司”维度都有某个Entity成员;

2、某个维度的UD是另一个维度,比如“公司”的区域属性是“区域维度”;

3、同一个维度的上下级之间天然存在关系;

4、通过外部数据(比如映射表),建立维度之间的关系

在编制报表时,多个维度都需要作为筛选器时,维度之间的关系便转移成为筛选器之间的关系,此为筛选器联动功能的初衷。 下面以几个具体场景为例,说明筛选器联动功能的使用。

场景1:选完公司之后,部门筛选器的可选范围都属于该公司。

实现方式 1、先建一个正常的Entity筛选器

2、再建一个部门筛选器,可选范围与Entity筛选器关联

Department{Base(@Entity_wb1,0)} 这个表达式的含义是,@Entity_wb1的值由Entity筛选器决定, 当@Entity_wb1=E1时,Department={Base(E1,0)}

3、效果

场景2:选完区域之后,公司的可选范围都属于该区域

1、先建一个正常的区域筛选器

2、再建一个公司筛选器,可选范围与区域筛选器关联 手动输入高级表达式:OrFilter(Base(All_Entity,0),Attr(ud2,’@Region_wb1’)) 含义为,当@Region_wb1=华南时,Entity=Entity{OrFilter(Base(All_Entity,0),Attr(ud2,’华南’))}

3、效果 由于公司依赖区域,部门依赖公司,可以实现三级联动

注意事项: 1、筛选器联动范围: 工作簿级:可选其他工作簿级筛选器 Sheet级:可选工作簿级筛选器 及 本Sheet的 其他Sheet级筛选器(不可选其他Sheet的Sheet级筛选器) 2、筛选器联动不要求是同一个维度,只要传过来的值及表达式,在被联动筛选器的维度内可解析即可 3、筛选器之间的联动关系不可以成循环。 4、默认值概念拓展:

  • 普通模式下,筛选器的可选范围是不变的,默认值仅在首次开表时生效

  • 联动模式下,可选范围是变的,默认值在每次可选范围变动后都要重算 。

  • 默认值算法保持不变:在可选范围内,并且不超过多选数量的成员为最终开表值。若未配默认值,则为可选范围内第一个。 5、联动的筛选器支持多选

场景3:若筛选器之间的关系无法通过维度表达式来表达,可通过自定义JS实现

增加了加载筛选器后/开表前JS执行时间点,可通过JS对筛选器的可选范围和值进行修改。

注意:原写在开表后节点的自定义JS可改为在此处触发,避免报表需要二次查询的问题

原先仅有表单加载前运行,筛选器值无法作为参数给到Python。本版本增加 <开表前/加载筛选器后运行>节点。 注意<表单加载前运行> 和 <开表前/加载筛选器后运行>的区别

<表单加载前运行> : 指整个电子表格元素开始渲染前。此时触发的参数:仅有元素和路径

<开表前/加载筛选器后运行>: 指电子表格已经渲染了筛选器,但是还没有渲染Sheet上的数据表格。此时添加算法,可以获取到筛选器值并且将计算后的结果渲染到sheet上。 此时触发的参数:包含了筛选器值、元素、路径

前期功能,用户可根据状态表+角色,控制Sheet只读。 本期新增根据状态+角色,控制Sheet隐藏。主要用于不同权限的用户可见Sheet的范围不同的场景。 配置方式如下(基本同Sheet锁定):

一般sheet锁定时,也期望按钮禁用 (比如计算不可以再执行,数据保存不能再操作) 本次新增按钮禁用设置,当sheet锁定时,可选择同步配置按钮禁用

使用效果(注意用非管理员查看)

新增【批量编辑】功能,将现有目标控件动作批量替换为批量配置的动作,若不配置将清空。 点击【批量编辑】标签页,选择目标控件,配置事件:如单元格点击事件控件值修改。

点击【确定】后,批量编辑页面配置消失,会自动替换电子表格的事件。

原打开外部链接动作只能输入固定的地址,现放开限制,可选择表达式、UX变量、控件值、固定值等多种方式。

数据标签的启用与否可以切换表达式/UX变量/控件值/固定值。

例如一个指标卡切换到“样式”标签页,此时点击到另外一个指标卡控件,默认显示的仍为“样式”标签页。

控件栏数据模块增加弹窗-表单、弹窗-明细表两个控件。 将【弹窗-表单】控件拖拽到画布上,同拖出表单一样,出现弹框选择关联数据源、自动填充等等。

确定后,生成弹窗+表单。

将【弹窗-明细表】控件拖拽到画布上,同拖出表单一样,出现弹框选择关联数据源、自动填充等等。

确定后,生成弹窗+明细表。

数据标签配置中增加位置优化配置:包括超出时隐藏、重叠时隐藏、重叠时调整、不处理。 超出时隐藏效果:

重叠时隐藏效果:

重叠时调整效果:

不处理效果:

原指标卡必须带图标,现支持不带图标的指标卡。

1、增加按工作流元素分类管理流程实例

2、增加筛选字段:当前节点、当前负责人

3、文本类型支持比较符【包含】

增加分析查询

新增分析查询表模式,即通过UI配置实现对象数据的分组聚合(Group)查询。可保存分析查询,支持UX图表使用

背景:项目实施中常有通过维度接口调用(一般是用Python)修改维度成员的场景。但是如果一个用户对维度元素本身没有编辑权限,那么他对此维度的成员也没有编辑权限。此前无权限用户调用维度成员修改接口时,虽然最终没有成功,但是维度接口并没有返回响应的错误信息,导致项目遇到问题时排查很困难。 本次迭代优化了维度成员修改相关的接口(包括单成员增删改接口,批量保存成员接口),如果当前用户对维度元素本身无权限,那么接口将报错提醒“当前用户无元素XXX编辑权限!” 元素权限配置如下,操作元素的“权限管理”,给需要编辑维度成员的用户或用户组分配“使用和编辑权限”。

支持:

  • 成员及后代:对应维度表达式IDescendant

  • 成员及子代:对应维度表达式IChildren

  • 成员及末级节点:对应维度表达式IBase

分组求和视图:默认不开启,不开启则为普通清单样式,启用后,在普通清单样式上增加小计合计

  • 分组字段:可选择展示列字段

  • 求和字段:仅可选择数字类型的展示列字段

  • 注意启用后,无分页器,会一页展示所有查询结果,所以一定要控制查询结果数量,以免因数据过多造成页面崩溃,目前默认控制一页最多查询50000条数据(由环境变量EXPORT_SECOND_GROUP_COUNT控制,部署时可根据配置情况调整)

回到顶部

咨询热线

400-821-9199

我们使用 ChatGPT,基于文档中心的内容以及对话上下文回答您的问题。

ctrl+Enter to send