在线报表设计实战系列 – ⑤制作动态列与静态列混排的报表

2023-12-26 04:32

本文主要是介绍在线报表设计实战系列 – ⑤制作动态列与静态列混排的报表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

葡萄城报表是一套强大的报表开发和系统搭建工具,既能与您开发的报表软件项目紧密集成,也可独立部署运行,支持多数据源,具有无编码、灵活、稳定等特性,可以帮您快速搭建专业的报表软件系统,实现各类报表的设计、管理、权限控制、数据填报、负载均衡及跨平台发布。

 

多数交叉分析表都是基于两个或更多维度的分析,除了显示行分组字段的列,其余列就是显示列分组字段值的动态列。
事实上,还有一类特殊的报表,除了动态的分组列,还有一部分类似普通表格栏目的静态列,亦即在设计状态下就能确定的栏目。
下图所示的报表中,红色部分就是静态列,黄色部分就是动态列。

 

下面介绍这种动静列混排报表的设计实现方法。

(1)创建数据集

从报表管理门户(http://localhost:8080 )点击【创建报表】,进入新报表的设计页面。
点击右边栏的【数据】选项卡,再点击【数据集】右侧的【添加】。

在【新建数据集】下方,选中之前创建好的示例数据源,再点击【添加】按钮,如下图:

在数据集编辑对话框中,输入SQL语句:

select * from 奖金明细 where 年份=2014

验证查询语句后点击【确定】,保存数据集的定义。
数据集的字段列表如下图:

(2)实现思路

原始数据如下图:

期望的报表展示方式如下图:

【2014年度XX奖】这样的奖金名称都是根据【奖金名称】字段的值生成的动态列,左边数列则是固定内容的静态列。
实现思路如下:
(a)行分组:按照【单位名称】进行分组。
(b)列分组:按照【奖金名称】进行分组。
(c)在首列之后,插入数个静态列。
(d)列分组上方插入行,用以显示【静态列】和【动态列】。


(3)添加矩表

从左侧工具箱中拖放一个【矩表】,首行次列绑定【奖金名称】字段,次行首列绑定【单位名称】字段,右下单元格绑定【奖金金额】字段,如下图:

此时预览效果如下图:

这是按【奖金名称】字段显示动态列的效果。


(4)添加静态列

为了添加【指标完成率】等固定列,右键点击【单位名称】单元格,选择【列操作】-【在分组内-右侧】,插入一个新列:

重复此操作,总共添加4个新列,然后分别绑定【组织绩效指标完成率】、【得奖人数】、【奖金基数】、【综合系数】字段,如下图:

再在首行单元格中输入列标题,如下图:

此时,预览效果如下图:

这就是静态列与动态列混排的效果。


(5)添加静态行

上面是在行分组的字段右侧添加静态列,对于列分组,可在分组字段上方添加静态行。
右键单击作为列分组条件的【奖金名称】单元格,选择【行操作】-【在分组外-上方】,如下图:

矩表顶部将增加一个空白行,如下图:

选中这个空白行前5列的单元格,然后右键单击选中区域,选择【单元格】-【合并单元格】,如下图:

输入文字内容“固定列”和“动态列”,使用工具栏上的背景色小按钮,分别设置不同的背景色,如下图:

再次预览,即可得到最终的动静混排的报表效果:

定制培训加量全心送!凡在2017年12月31日之前,购买葡萄城控件团队授权和企业授权的用户,不仅可以享受到优惠的价格,还可获赠葡萄城技术专家根据客户项目需求提供的定制培训服务。老客户推荐新客户成单,也将获得“客户推荐双重感恩礼”。

点击此处,了解更多。

转载请注明出自:葡萄城报表

这篇关于在线报表设计实战系列 – ⑤制作动态列与静态列混排的报表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/538115

相关文章

Java调用C++动态库超详细步骤讲解(附源码)

《Java调用C++动态库超详细步骤讲解(附源码)》C语言因其高效和接近硬件的特性,时常会被用在性能要求较高或者需要直接操作硬件的场合,:本文主要介绍Java调用C++动态库的相关资料,文中通过代... 目录一、直接调用C++库第一步:动态库生成(vs2017+qt5.12.10)第二步:Java调用C++

C#如何动态创建Label,及动态label事件

《C#如何动态创建Label,及动态label事件》:本文主要介绍C#如何动态创建Label,及动态label事件,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#如何动态创建Label,及动态label事件第一点:switch中的生成我们的label事件接着,

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

SpringCloud动态配置注解@RefreshScope与@Component的深度解析

《SpringCloud动态配置注解@RefreshScope与@Component的深度解析》在现代微服务架构中,动态配置管理是一个关键需求,本文将为大家介绍SpringCloud中相关的注解@Re... 目录引言1. @RefreshScope 的作用与原理1.1 什么是 @RefreshScope1.

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

Pandas使用SQLite3实战

《Pandas使用SQLite3实战》本文主要介绍了Pandas使用SQLite3实战,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1 环境准备2 从 SQLite3VlfrWQzgt 读取数据到 DataFrame基础用法:读

Python实战之屏幕录制功能的实现

《Python实战之屏幕录制功能的实现》屏幕录制,即屏幕捕获,是指将计算机屏幕上的活动记录下来,生成视频文件,本文主要为大家介绍了如何使用Python实现这一功能,希望对大家有所帮助... 目录屏幕录制原理图像捕获音频捕获编码压缩输出保存完整的屏幕录制工具高级功能实时预览增加水印多平台支持屏幕录制原理屏幕

MySQL使用binlog2sql工具实现在线恢复数据功能

《MySQL使用binlog2sql工具实现在线恢复数据功能》binlog2sql是大众点评开源的一款用于解析MySQLbinlog的工具,根据不同选项,可以得到原始SQL、回滚SQL等,下面我们就来... 目录背景目标步骤准备工作恢复数据结果验证结论背景生产数据库执行 SQL 脚本,一般会经过正规的审批

Linux系统中配置静态IP地址的详细步骤

《Linux系统中配置静态IP地址的详细步骤》本文详细介绍了在Linux系统中配置静态IP地址的五个步骤,包括打开终端、编辑网络配置文件、配置IP地址、保存并重启网络服务,这对于系统管理员和新手都极具... 目录步骤一:打开终端步骤二:编辑网络配置文件步骤三:配置静态IP地址步骤四:保存并关闭文件步骤五:重

最新Spring Security实战教程之Spring Security安全框架指南

《最新SpringSecurity实战教程之SpringSecurity安全框架指南》SpringSecurity是Spring生态系统中的核心组件,提供认证、授权和防护机制,以保护应用免受各种安... 目录前言什么是Spring Security?同类框架对比Spring Security典型应用场景传统