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

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

相关文章

Python并行处理实战之如何使用ProcessPoolExecutor加速计算

《Python并行处理实战之如何使用ProcessPoolExecutor加速计算》Python提供了多种并行处理的方式,其中concurrent.futures模块的ProcessPoolExecu... 目录简介完整代码示例代码解释1. 导入必要的模块2. 定义处理函数3. 主函数4. 生成数字列表5.

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

MyBatis设计SQL返回布尔值(Boolean)的常见方法

《MyBatis设计SQL返回布尔值(Boolean)的常见方法》这篇文章主要为大家详细介绍了MyBatis设计SQL返回布尔值(Boolean)的几种常见方法,文中的示例代码讲解详细,感兴趣的小伙伴... 目录方案一:使用COUNT查询存在性(推荐)方案二:条件表达式直接返回布尔方案三:存在性检查(EXI

Java调用C#动态库的三种方法详解

《Java调用C#动态库的三种方法详解》在这个多语言编程的时代,Java和C#就像两位才华横溢的舞者,各自在不同的舞台上展现着独特的魅力,然而,当它们携手合作时,又会碰撞出怎样绚丽的火花呢?今天,我们... 目录方法1:C++/CLI搭建桥梁——Java ↔ C# 的“翻译官”步骤1:创建C#类库(.NET

MyBatis编写嵌套子查询的动态SQL实践详解

《MyBatis编写嵌套子查询的动态SQL实践详解》在Java生态中,MyBatis作为一款优秀的ORM框架,广泛应用于数据库操作,本文将深入探讨如何在MyBatis中编写嵌套子查询的动态SQL,并结... 目录一、Myhttp://www.chinasem.cnBATis动态SQL的核心优势1. 灵活性与可

Java Spring 中的监听器Listener详解与实战教程

《JavaSpring中的监听器Listener详解与实战教程》Spring提供了多种监听器机制,可以用于监听应用生命周期、会话生命周期和请求处理过程中的事件,:本文主要介绍JavaSprin... 目录一、监听器的作用1.1 应用生命周期管理1.2 会话管理1.3 请求处理监控二、创建监听器2.1 Ser

Mybatis嵌套子查询动态SQL编写实践

《Mybatis嵌套子查询动态SQL编写实践》:本文主要介绍Mybatis嵌套子查询动态SQL编写方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言一、实体类1、主类2、子类二、Mapper三、XML四、详解总结前言MyBATis的xml文件编写动态SQL

Apache 高级配置实战之从连接保持到日志分析的完整指南

《Apache高级配置实战之从连接保持到日志分析的完整指南》本文带你从连接保持优化开始,一路走到访问控制和日志管理,最后用AWStats来分析网站数据,对Apache配置日志分析相关知识感兴趣的朋友... 目录Apache 高级配置实战:从连接保持到日志分析的完整指南前言 一、Apache 连接保持 - 性

MQTT SpringBoot整合实战教程

《MQTTSpringBoot整合实战教程》:本文主要介绍MQTTSpringBoot整合实战教程,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录MQTT-SpringBoot创建简单 SpringBoot 项目导入必须依赖增加MQTT相关配置编写

SpringBoot实现Kafka动态反序列化的完整代码

《SpringBoot实现Kafka动态反序列化的完整代码》在分布式系统中,Kafka作为高吞吐量的消息队列,常常需要处理来自不同主题(Topic)的异构数据,不同的业务场景可能要求对同一消费者组内的... 目录引言一、问题背景1.1 动态反序列化的需求1.2 常见问题二、动态反序列化的核心方案2.1 ht