2024 5月6日

新增功能

  • 电子表格

    • 筛选器间联动功能说明

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

    • 展现层权限:Sheet隐藏

    • 展现层权限:按钮禁用

  • UX

    • 动作批量配置;

  • DeepModel

    • 增加分析查询

  • 凭证清单

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

    • 支持分组求和视图

功能优化

  • UX

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

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

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

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

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

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

  • 工作流

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

  • 维度

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

以下是详细更新说明


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

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

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

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

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

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

1709804270885-d2d937db-fd48-4fcc-9e2b-3581f83dc352 1709804393760-91de4b21-2075-48ae-9afc-e7b33bde7ca7 1709804465206-527ca05d-5031-41ed-8675-466f0c31eb32

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

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

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

1709804768208-cf5c24d4-5734-4255-a22f-43a71f08b3a7

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

1709804995689-d3d30b6d-144f-4a44-8df8-0c025f984225

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

1709805081059-a57c9fe4-4563-4099-bdc9-a43050ac3bcc

3、效果

1709805142587-3cbf7016-05e0-40d1-aa0a-527645a4a564

1709805474784-cabd7cad-8355-4932-9bf7-8b1f0024ffc1

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

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

1709805594094-209433f2-6ca7-46d3-86b2-8af4bce3d124

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

1709806500468-9d2861e1-7a1e-499d-bcaa-663198d9de34

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

1709806711836-58980364-6740-4b94-8a7b-0e025f8458c3

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

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

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

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

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

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

1709807188479-4f811957-d420-4863-b47a-29ab32db42cd

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

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

1714358736421-f095c35a-13b8-44cc-8f84-06dbf46bbdab

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

1688528739629-85f0ebc7-6354-4570-bffa-8898ba8d22a8

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

1688528758341-b858453c-c639-45d0-b77b-6faf3925e929

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

1710156494669-ad2b285b-e050-46a9-b263-9a75d8cfd183

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

1714360776835-558c4ae8-f32e-42e9-92c1-732d373bc6d3

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

1714361785778-8b6ef171-88f7-4566-b1d7-ceb6a1a6d499

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

1714293739311-be7e8278-3be5-4604-9855-a195eb73bf4e

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

1714293975387-c1e33baf-dcfb-40eb-ab66-f8084006022c

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

1714293077437-1199798d-1d60-4cd3-b43c-a995fc134ff3

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

1714292760106-2b58938f-d11f-4988-a762-9f50f1260966

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

1714289778923-9f7276d5-9e5a-49e4-8057-7b08af14c7c4 1714289865981-0fd124af-5430-42b8-938a-95c4cc6001cd

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

1714290662400-13c8ef27-92b3-46b2-a3a9-e46371dbd29a

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

1714290848320-4e1751d1-1b6b-4f93-8536-af276e33024f

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

1714290941454-cd8c7911-09aa-41fc-9330-f0baac5646ae

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

1714291008666-f3ae4880-99ec-401a-aa0a-a4ef215dd329

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

1714289156082-c6c67f41-297e-41fd-b5d5-3297120adb9c

重叠时隐藏效果:

1714289190303-d67d49f1-0adb-4739-afe2-dab13295c89f

重叠时调整效果:

1714289226412-1f2daabd-1d06-4acb-92ac-a61837e20240

不处理效果:

1714289260135-9e6dd08c-0609-4cbe-8586-82d247bb39ed

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

1714288437514-411fe1db-130a-40e6-837e-3f9188dc971a

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

1714374853858-d389bf2d-7f77-4b74-86be-8e6cedf389fe

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

1714376667962-3afbeff6-97ed-4ca4-a6fd-5e09cea2cdf3 1714376705989-10c6db1f-1624-4b4f-88ef-efa4202835c7

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

1714376798404-7d7ad941-60a1-47ea-97eb-2c21f1230789

增加分析查询

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

1714357438885-af8721a7-9b06-4abe-b7ac-0c470a71ee88

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

1714964172403-ca61dd65-a977-4709-b370-3abb0dd6462e 1714964139893-c3e71f85-c505-4d88-aa32-07de8dbaace7

支持:

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

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

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

1714379569302-63f44cbb-bb8a-4e0d-bfa8-c59fa5b26794

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

1714379925726-63b6f98a-5113-459b-9a96-848b9bc07d41

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

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

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

回到顶部

咨询热线

400-821-9199