七月上旬更新速递丨 聚焦集成、安全与AI深度进化

更新亮点: 本次重点强化系统集成能力与AI认知升级,新增4大核心模块9项资源,优化4项资源,点击标题了解(持续互动赢麦豆,解锁高阶技能)

重点推荐:《场景化数据分析实战》课程操作手册

配套六月王炸课程的全套落地指南,手把手教你复现实战场景!

二、实战技巧分享

高效处理资源集成难题》→ 从基础出发,深入探究集成的秘密

三、开发技能突破

第三方系统调用Smartbi接口》→讲解系统集成时的jar包获取,以及集成时代码调用的基本流程。

集成接口介绍》→梳理Smartbi目前提供的接口,以及不同接口的调用流程。

AI每日一学

DeepSeek-R1-0528模型升级:推理与生态的双重升级》→ 解析模型性能提升40%的关键技术 (技术前沿)

简单总结一下机器学习中的几种常见的学习方式与区别》→ 监督/无监督/强化学习差异与应用场景图解 (基础重构)

五、资源更新

CAS单点登录 V2版》上线→ 接入到 CAS 平台中,并实现单点登录

组织/用户/角色信息管理API接口》上线→ 一套 HTTP API的组织、用户、角色信息管理接口

竹云统一身份认证平台组织用户同步对接》上线→ Smartbi封装对应的服务接口,给竹云的统一身份认证平台实时调用,完成组织、用户和角色信息的实时同步。

交互式仪表盘支持自定义字体》优化→ 修复了文本组件编辑状态不生效的问题

只允许外网某种移动端APP访问》优化→ 针对V11版本,增加了钉钉、企业微信访问限制功能

AD域(LDAP/LDAPS)登录验证》优化→ 修复了“更新白名单状态之前没有判断判断用户是否存”的问题

元数据分析落地到知识库》优化→ 增加获取资源创建者的逻辑判断,对空值空对象等情况做优化

麦粉社区
>
帖子详情

[报表开发] 报表合计不用愁!全场景报表合计一键搞定指南

动态中心 发表于 前天 16:11
发表于 前天 16:11

众所周知,Smartbi产品功能十分强大,涵盖了丰富的报表资源类型来支撑各类场景报表实施开发,其中最常用的功能之一自然少不了【合计】,可在实际开发过程中是否经常不知道从何下手?


本篇文章小编将从几个场景出发,带大家全方位了解 如何在各类报表中实现合计(小计)。


 


一、该用什么


根据不同资源类型的功能定位,不同需求场景下适用的报表类型不同,以下是常用的一些合计场景的汇总。


 



















































































应用场景



适用的资源类型



优势



劣势



适用的人员类型



进行大数据量明细数据查询,无分类汇总需求



即席查询



自助勾选字段快速查询



不支持计算度量等二次计算



业务人员



电子表格-清单表



在Excel上开发界面更为用户熟悉



需要借助Excel插件开发



技术人员



web电子表格-清单表



支持信创,无需插件可网页上直接开发



无法快速自助查询



技术人员



类Excel透视效果,按行/列生成分类汇总



透视分析



配置项快速生成分类汇总



无法自定义合(小)计名称



业务人员



电子表格-分组交叉表



使用Excel公式实现更为用户熟悉,表样更为灵活



无法在浏览态一键生成



技术人员



web电子表格-分组交叉表



支持信创,无需插件可网页上直接开发



无法在浏览态一键生成



技术人员



仪表盘大屏中常见组件合计/按指定成员聚合/按前N合计




仪表盘-交叉表



配置项快速生成分类汇总



无法自定义合(小)计名称



业务人员



仪表盘-表格树



树状结构表样,配置项快速生成分类汇总



无法自定义合(小)计名称



业务人员



仪表盘-汇总表/文本/指标卡



嵌入大屏展示



需计算度量二次加工



技术人员




柱图添加一条合计柱子



仪表盘-柱图



嵌入大屏展示



需计算度量二次加工



技术人员



电子表格-echarts图形



可提前在单元格自定义实现



需借助Excel插件开发



技术人员



更多仪表盘明细/汇总/交叉表组件特点可见:速看!明细/汇总/交叉表的实现秘籍



 


二、该怎么用


场景1、进行大数据量明细数据查询,无分类汇总需求


 



  • 即席查询


新即席查询定位是用于清单明细查询,为保证性能默认不支持合计,一般若只需要进行大数据量明细数据查询,可通过新即席查询快速查询,电子表格/web电子表格也有支持清单表类型,但开发步骤相对繁琐。


 


截图.png


 


根据大部分项目需求场景,如有合计需求建议改用其他报表类型(如新透视分析、仪表盘表组件、电子表格等)实现,一般所有维度成员设置聚合建议改用仪表盘交叉表组件、透视分析进行分类汇总,若存在维度字段一样的内容会自动分组合并;如不希望分组合并效果则建议改用电子表格。详细合计配置可见下文。


 


截图.png



 


场景2、类Excel透视效果,按行/列生成分类汇总


 



  • 透视分析


实现方式:分类汇总可在行区/列区字段上右键点击,选择 分类汇总 >  显示,分别实现数据的列数据汇总和行数据汇总。


截图.png


 


其中第一个分组字段的分类汇总显示为“合计”,其它分组字段的分类汇总显示为“小计”,暂不支持界面上自定义名称。


为了使小计合计数据更清晰的展示,还可以在 设置 > 属性 > 合计行/列 上调整合计行/列的显示位置以及样式。


 


截图.png


 


小Tip:在单元格上同时有合计和小计的样式时,交叉单元格以合计的样式显示。如下图:


 


截图.png


 




  • web电子表格/电子表格


方式一:


通过新建数据模型汇总查询,分类汇总提前计算出合计,实现步骤如下(以web电子表格为例)


1.在web电子表格中新建模型汇总查询,勾选行列度量区字段,并设置分类汇总;


 


截图.png


 


截图.png


 


2.拖拽字段到单元格,并设置扩展属性;


 


截图.png


 


3.保存查看预览效果如图;


 


截图.png


 


方式二:




清单表/分组表一般均可借助于Excel公式,比如sum进行合计/小计,以电子表格为例实现步骤可见:电子表格-小计/合计


如不希望分组合并单元格,每个单元格都展示出来,可直接配置分组不合并单元格即可。


 


截图.png


 


注:更多复杂表样的合计需求场景需结合实际情况分析使用哪些excel公式实现,一些复杂公式可借助AI工具辅助修改,但因第三方插件对于新版本的公式兼容情况较差可能无法返回正确结果,建议少用新版本的Excel公式(如SEQUENCE等等)。


 


场景3、仪表盘大屏中常见组件合计/按指定成员聚合/按前N合计


 


交叉表组件和树状表组件可通过分类汇总设置快速生成全局合计效果。


 



  • 仪表盘-交叉表


设置方式基本同透视分析:在 产品类别产品名称 和 订单年份 字段上分别设置显示分类汇总,设置入口及效果如下图所示。


行区合计:在产品类别上显示的分类汇总,生成所有产品类别每年销售额的合计。


行区小计:在产品名称上显示的分类汇总,生成各个产品分类中所有产品每年销售额的小计。


列区合计:在订单年份上显示的分类汇总,生成各产品/产品分类在2020年和2021年的合计数据


 


截图.png


 


拓展:交叉表常见的乘积合计优先级问题


交叉表中的合计的值有两种计算可能:一种是横向的计算,一种是纵向的计算,不同场景下需要不同方向的合计,这就涉及到计算优先级的指定。


通过计算度量-乘法生成的字段,开启分类汇总时,默认情况下,计算度量是先算小计/合计再算表达式,也就是 sum(a) * sum(b);


 


截图.png


截图.png


 


如果要先按照明细算表达式再合计,可考虑改成计算列,那就是 sum( a * b )


 


截图.png



截图.png


 


若希望先按分类汇总,再乘积计算后按照纵向合计,可通过修改自定义度量的计算优先级来实现,SOLVE_ORDER=40,$aggregation_type='sum'


注:此函数仅支持在2025年以后的V11 smartbi版本中调用此函数;且用此函数指定优先级后,无法走SQL 2.0引擎,走数据模型引擎,可能会对性能有一定影响。


 


截图.png


 


截图.png



 


【汇总】三者情况对比:


截图.png


 



  • 仪表盘-树状表


(1)树状表组件的分类汇总,是按照每个层级独立获取指标数据,如下图所示:


比如 2527是2020年河北省当前节点的销售量,而不是石家庄+张家口+秦皇岛的总销售量,此种展示逻辑也符合不能汇总的指标数据。


 


stickPicture.png


 


(2)树状表默认会显示分类汇总,支持设置取消分类汇总,在行区时,取消分类汇总只有在展开节点时才能看到效果,如下图所示:


比如在发货城市上取消分类汇总,是否显示分类汇总需要在发货城市的上级省份那里查看,此时展开的省份节点将不显示数据。


 


stickPicture.png


 



汇总表/文本/指标卡组件本身不支持设置字段分类汇总,则可结合特定聚合场景研究尝试通过计算度量等方式二次加工实现。


 



  • 仪表盘-汇总表/文本/指标卡


 


自定义合计-场景1:指定成员聚合


 


例如发货城市维度有很多个值,想实现发货城市为北京、上海、深圳对应销售量的汇总值


1.可通过计算度量-向导的方式实现,具体操作可参考如下:


 


截图.png


 


2.也可通过计算度量-函数Aggregate实现,具体操作可参考如下:


 


截图.png


 


最终效果:


 


截图.png


 



自定义合计-场景2:计算前十分类度量值


 


可通过自定义计算度量实现。具体步骤如下:


        1.创建计算度量


        (1)获取前10的类别


       topcount(维度.members,10,度量)


       (2)按类别汇总


       aggregate(类别,度量)


       最终效果:


 


截图.png


 


2.拖拽到组件上


 


截图.png


 



场景4、柱图添加一条合计柱子


 



  • 仪表盘-柱图


常见场景:在柱图最后添加一列合计轴


 


截图.png


 


实现步骤:


数据模型中添加一个计算成员,根据下图中,选择对应的层次结构和维度字段。点击保存后在仪表盘中拖入维度字段作图即可。


 


截图.png


 


需要注意的是,若是维度字段新建计算成员处理,后续使用该模型的字段,都会有这个合计的行记录存在。


 


截图.png


 



  • 电子表格-柱图


电子表格可以进行echarts作图,有多种实现方案。


 


截图.png


 


方式1:可以在excel里面直接设置好数据,之后插入图形,如下图:


 


截图.png


 


方式2:在依赖的数据集SQL里提前算好合计并union起来,之后基于数据作图,sql可参考以下说明


select name,num from b


union


select '合计' ,sum(num) from b


 


截图.png


 




以上就是本次全场景报表合计的全篇内容啦,期待各位在了解上述合计使用实现方式后,能在后续报表开发中更加得心应手,也欢迎大家在评论区讨论各种报表合计的小技巧哦~



高级模式
B Color Image Link Quote Code Smilies
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

0回帖数 0关注人数 128浏览人数
最后回复于:前天 16:11
快速回复 返回顶部 返回列表