返回顶部
首页 > 资讯 > 精选 >报表中如何实现不规则布局
  • 958
分享到

报表中如何实现不规则布局

2023-06-02 20:06:52 958人浏览 八月长安
摘要

报表,我们习惯于认为主要用来呈现数据汇总、排序、分组对比的效果,一般都是“横平竖直”的效果,也就是我们常说的二维表格,最多也就是通过一些斜线、合并表示一些特殊的数据关系。事实上,报表还可以通过实行各种不规则的布局,来发挥更大的作用。首先,我

报表,我们习惯于认为主要用来呈现数据汇总、排序、分组对比的效果,一般都是“横平竖直”的效果,也就是我们常说的二维表格,最多也就是通过一些斜线、合并表示一些特殊的数据关系。事实上,报表还可以通过实行各种不规则的布局,来发挥更大的作用。

首先,我们就拿我们每个人几乎都遇到过的大大小小的各种考试来举例。每逢考试就一定会有考场座位分布图,以便考生对号入座参加考试。这里看一个具体的案例,来自于某地的一次职业技能考试,总共涉及数十所所学校,数千名考生,每人参加 4 门学科,需要按照专业、场次、时间以及一定的随机规则进行座次安排,最终输出座位分布图,然后打印并在各个考场张贴。要求每名考生的座位标签如下图所示:

报表中如何实现不规则布局

     整个教室的作为分布如下图所示:

报表中如何实现不规则布局

这种形式的报表就不再是简单的“横平竖直”了,而是我们所说的不规则布局。具体第说,这种布局有一个形象的名称“龙形布局”,也就是每个小的局部作为标签具有自己的布局,好像是龙的鳞片,而整体上又按照一定的宽度(这里是 2 列)进行纵向排布。

那么,有什么方法可以简单、快捷地一下子制作出数千人的“龙形布局”座次分布图呢?——润乾报表就可以!

话不多说,下面我们一起看一下润乾报表中如何轻松搞定这类不规则布局的吧!

     首先,根据效果图绘制报表样式和框架,如下:

报表中如何实现不规则布局

这里偷偷泄露一个小【技巧】,我们使用“to 函数 + 纵向扩展”控制每列放几张桌子,就是上图 C4 单元格的表达式。

     接下来,填入考生信息,如下

报表中如何实现不规则布局

其中:

A4 单元格中表达式为:=ds1.group(ZYGZMC;ZYGZMC:1),合并单元格 A4-A8, 纵向扩展,分组取出职业名称并升序排列,后面的数据将默认以 A4 单元格为主格跟随扩展取数。

B4 单元格中表达式为:=ds1.group(KCMC;KCMC:1),操作同上,KCMC 代表考场名称

D5 单元格中表达式为:=valueat(ds1.select(LLKCZWH:-1,LLKCZWH<6),C4),给每个桌子贴上理论考场座位号

E4 单元格中表达式为:= “理论:”+ds1.select(LLPD,LLKCZWH==D5),ds.select 函数根据理论考场座位号(LLKCZWH)取出理论评审(LLPD)成绩

F4 单元格中表达式为:=ds1.select(ZHPD:-1,LLKCZWH==D5),操作同 E4,ZHPD 代表 综合评审成绩

E5 单元格中表达式为:=”实践:”+ds1.select(SCPD,LLKCZWH==D5),操作同 E4,SCPD 代表实践评审成绩

E6 单元格中表达式为:=”综合评审:”+ ds1.select(ZHPD,LLKCZWH==D5),操作同 E4,ZHPD 代表综合评审成绩

E7 单元格中表达式为:=ds1.select(XM,LLKCZWH==D5),操作同 E4,XM 代表考生姓名

E8 单元格中表达式为:=ds1.select(ZKZH,LLKCZWH==D5) ,操作同 E4,ZKZH 代表考生准考证号

到这里,我们已经将左边 1 列的 5 位同学安排妥当了,接下来的操作相对就简单一些了,主要是把 D、E、F 列的内容复制到 H、I、J 列,然后做一些小的修改:

H5 单元格中表达式为:=valueat(ds1.select@r(LLKCZWH:1,LLKCZWH>5),C4),复制粘贴得时候别忘记修改取数的范围奥。

I4 单元格中表达式为:= “理论:”+ds1.select@r(LLPD,LLKCZWH==H5),注意注意,这里有一丢丢变化奥, ds.select 函数使用 @r 选项是为了保证数据从根数据集中取数不受前面那列的影响奥。

J4 单元格中表达式为:=ds1.select@r(ZHPD:-1,LLKCZWH==H5)

I5 单元格中表达式为:=”实践:”+ds1.select@r(SCPD,LLKCZWH==H5)

I6 单元格中表达式为:=”综合评审:”+ds1.select@r(ZHPD,LLKCZWH==H5)

I7 单元格中表达式为:=ds1.select@r(XM,LLKCZWH==H5)

I8 单元格中表达式为:=ds1.select@r(ZKZH,LLKCZWH==H5)

     BinGo!有木有很意外,做到这里就已经轻松搞定考场分布报表了,是不是赶脚很简单,时间也节省了不少?多出来的时间您一定不介意(坏笑)我再多说些什么吧…..

上面我们所完成的布局属于平面规划的直观展示,接下来,我们再看一种非常实用的业务场景:

以仓储行业为例,在实现了条码管理的仓库,出入库单据可以通过简单的扫码完成货品的归位或取出,这时,出入库单据上就需要印制多个条目,每一项都会有相应的条目,如果按照常规布局的话,如下

报表中如何实现不规则布局

但是这种布局有一个问题,就是很有可能会出现错行扫描的情况!为此,润乾报表又偷偷给关注的我们程序猿哥哥发福利了——制作打印以下这种“错位”形式的“入场券”:

报表中如何实现不规则布局

     是不是已经迫不及待想要进场了解下这种条码不规则“错位“布局是怎么被搞定的了? 别着急,我们这就开始说道说道:

将左右错位的 2 个条形码看做一组,先弄出个样子,然后填写相应的数据表达式,如下:

报表中如何实现不规则布局

其中:

A4 单元格中表达式为:

=if(ds1.count()%2==0,to(1,ds1.count()/2),to(1,ds1.count()/2+1)),根据条码总数是奇数还是偶数,确定总共需要纵向扩展几组。

B4 单元格中表达式为:=ds1.select(field1)(A4[-1]+A4),意从结果集 ds1.select(field1) 中根据行号取出条形码

C4 单元格右键 选择“条形码”,内容表达式为:=B4,同时勾选“显示文字”, 指定条形码按照指定单元格数据呈现

B5 单元格右键 选择“条形码”,内容表达式为:=C5

C5 单元格中表达式为:=ds1.select(field1)(A4[-1]+A4+1)

然后……就没有然后了……“噹噹噹”,是不是吓一跳,到这里又一个看似复杂的布局“错位条码清单”就这么轻松搞定了,忍不住想要动手试试了,那就别犹豫了“撸起袖子,做起来吧 !!!”。

     最最后,划重点圈知识点啦,不看的话,明天用到可别怪我没告诉您奥。

如何控制布局:

【知识点】使用 to() 函数来做一些特殊报表格式的控制,根据条件限定行列数;

如何从一个集合中取出指定的成员

【知识点】valueat() 常用于从数组或者集合表达式中取出的某一个元素;

如何排除前面列的影响直接从总结果集拿数据

【知识点】比如考场座位图中 @r 选项的使用

小提示:

【操作技巧】制作此类报表如果不能一眼找出数据呈现的规律以及取数方式不妨拿出纸笔,在纸上写出一部分数据,或许一下就明白了。

说到这里,关于“报表布局技巧与应用”的简单介绍真的真的告一段落了,实现上面的效果我们仅仅是在常规展现的报表基础上使用了 1-2 个函数(比如:to()、valueat()、if())就做出了考场座位图、错位条码清单的效果,有木有感觉 So easy,几个函数轻松搞定。从此以后,做表再也不用害怕遇到神马仓库货位管理展示图、学生宿舍的分布….. 的情况了

详情链接:Http://c.raqsoft.com.cn/article/1533026639184?r=gxy

--结束END--

本文标题: 报表中如何实现不规则布局

本文链接: https://lsjlt.com/news/231243.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 报表中如何实现不规则布局
    报表,我们习惯于认为主要用来呈现数据汇总、排序、分组对比的效果,一般都是“横平竖直”的效果,也就是我们常说的二维表格,最多也就是通过一些斜线、合并表示一些特殊的数据关系。事实上,报表还可以通过实行各种不规则的布局,来发挥更大的作用。首先,我...
    99+
    2023-06-02
  • 如何通过Css Flex 弹性布局实现不规则的网格布局
    在网页设计中,常常需要使用网格布局来实现页面的分割和排版,通常的网格布局都是规则的,每个网格大小相同,而有时候我们可能需要实现一些不规则的网格布局。CSS Flex 弹性布局是一种强大的布局方式,它可以很容易地实现各种网格布局,包括不规则的...
    99+
    2023-10-21
    网格布局 弹性布局 flex布局
  • 基于BFC规则如何实现的css两列布局
    这篇文章将为大家详细讲解有关基于BFC规则如何实现的css两列布局,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。   <!--利用BFC的overflowhidd...
    99+
    2024-04-02
  • 如何解析八大Flex布局规则
    如何解析八大Flex布局规则,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。和大家重点讨论一下Flex布局规则,主要包括VBox...
    99+
    2024-04-02
  • Java语言编码规范中如何实现布局
    小编给大家分享一下Java语言编码规范中如何实现布局,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Java语言编码规范3 布局(Placement)只在代码块的开...
    99+
    2023-06-03
  • css布局如何实现左中右布局
    小编给大家分享一下css布局如何实现左中右布局,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!效果如下:左中右布局<!doctype html>...
    99+
    2023-06-08
  • css实现不规则表格的方法
    小编给大家分享一下css实现不规则表格的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!css实现不规则表格的方法:首先创建一个HTML示例文件;然后通过tab...
    99+
    2023-06-14
  • html5中如何实现div布局与table布局
    这篇文章主要介绍了html5中如何实现div布局与table布局,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下div布局:htm...
    99+
    2024-04-02
  • java中如何实现布局
    三大布局管理器(BorderLayout边框布局、FlowLayout 流式布局 、GridLayout 网格布局)BorderLayout边框布局继承JFrame及定义所需组件在线学习视频教程推荐:java在线视频在构造函数中创建组件和添...
    99+
    2015-12-21
    java 实现 布局
  • css布局如何实现两端布局
    这篇文章主要介绍了css布局如何实现两端布局,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。最近在进行开发的过程中,有遇到两端对齐的布局,是按照百分比来进行布局的,之前有用过f...
    99+
    2023-06-08
  • HTML中如何实现瀑布流布局
    这篇文章将为大家详细讲解有关HTML中如何实现瀑布流布局,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。第一种方式:使用JavaScript:<!DOCTYPE&nb...
    99+
    2024-04-02
  • Vue Element-ui如何实现表单校验规则
    本篇内容介绍了“Vue Element-ui如何实现表单校验规则”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!目录前言规则校验的入门模式1、...
    99+
    2023-06-20
  • 如何实现CSS布局中的圣杯布局与双飞翼布局
    这篇文章将为大家详细讲解有关如何实现CSS布局中的圣杯布局与双飞翼布局 ,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。按照我的理解,其实圣杯布局跟双飞翼布局...
    99+
    2024-04-02
  • 如何理解Div+CSS布局中的页面布局和规划
    本篇文章为大家展示了如何理解Div+CSS布局中的页面布局和规划,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Div+CSS布局入门 在网页制作中,有许多...
    99+
    2024-04-02
  • CSS3+SVG滤镜如何实现不规则边框
    这篇文章主要介绍CSS3+SVG滤镜如何实现不规则边框,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!需求背景,给不规则图形添加边框在我们日常开发中,时长会遇到一些非矩形、非圆形的图案。类似下面这些:使用纯 CSS,搭...
    99+
    2023-06-14
  • 如何在css中实现瀑布流布局
    这期内容当中小编将会给大家带来有关如何在css中实现瀑布流布局,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1.multi-column多列布局实现瀑布流先简单的讲下multi-column相关的部分属性...
    99+
    2023-06-15
  • HTML如何实现布局
    小编给大家分享一下HTML如何实现布局,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 页面布局: 标题:前端的一部分,用...
    99+
    2024-04-02
  • 如何实现Flexbox 布局
    如何实现Flexbox 布局?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、<form> 元素表单使用 <form> 元素。<form>&...
    99+
    2023-06-08
  • CSS中怎么实现表单布局
    CSS中怎么实现表单布局,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1、DIV CSS表单文本输入的移动选择:在文本输入栏中,如果加入了提示...
    99+
    2024-04-02
  • 如何通过Css Flex 弹性布局实现响应式表格布局
    在前端开发中,响应式布局是一个非常重要的概念。随着移动设备的普及,网页需要适应不同的屏幕尺寸,以提供更好的用户体验。而表格是网页中常用的布局方式之一。在本文中,我们将介绍如何利用CSS Flex弹性布局实现响应式表格布局。CSS Flex弹...
    99+
    2023-10-21
    响应式布局 表格布局 Flex 布局
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作