jasper 常用知识点总结
1、应用: 列头 "YYYY-MM" 格式转化为 "MM YYYY"格式, eg : Date1 = 2014-11
new java.text.SimpleDateFormat("MMM-yyyy").format(new java.text.SimpleDateFormat("yyyy-MM").parse($V{Date1})).replace("-", " ")
2、应用: % 列数据绝对值
Math.abs(($V{V_Cp_T}-$V{V_Pp1_T})/$V{V_Pp1_T})
3、应用: 是否显示百分号。
<patternExpression><![CDATA["Y".equals($F{Show_Percent_Row})?"#,##0%;(#,##0)%":"#,##0;(#,##0)"]]></patternExpression>
4、应用: 多符号分隔,eg : use "|" and ":" 分隔。"|"需要转义,":"不需要转义。
"-".equals($F{Bu_Header}.split("\\||:")[1].trim())?($F{Bu_Header}.split("\\||:")[0]):($F{Bu_Header}.split("\\|")[0])
5、应用: jasper table 引用数据源配置
需要review 时,table 放在 Band Detail 中,jasper 使用 CSV 做数据源时,数据源配置如下:
<datasetRun subDataset="Dataset1" uuid="7f4823da-4acb-423f-b5f5-29c7740a18e3">
<dataSourceExpression><![CDATA[((net.sf.jasperreports.engine.data.JRCsvDataSource)$P{REPORT_DATA_SOURCE})]]></dataSourceExpression>
</datasetRun>
运行时,table 放在 Summary 中 (否则可能会出现运行不出数据的情况) ,数据源配置如下:
<datasetRun subDataset="Dataset1" uuid="d785f623-58ad-4300-a7a3-a7b2066d8077">
<datasetParameter name="PARAMS_PROVIDER">
<datasetParameterExpression><![CDATA[$P{PARAMS_PROVIDER}]]></datasetParameterExpression>
</datasetParameter>
<dataSourceExpression><![CDATA[$P{PARAMS_PROVIDER}.getDataSource("ds1")]]></dataSourceExpression>
</datasetRun>
6、根据字符串年月获取相应的数字月份 demo :
java :
int currentMonth = new SimpleDateFormat("MMM-yy").parse("Apr-14").getMonth()+1
jasper :
<variable name="V_p1_flag" class="java.lang.Boolean">
<variableExpression><![CDATA[!"".equals($F{MTD_P1_Nm})?(new SimpleDateFormat("MMM yyyy").parse($F{MTD_P1_Nm}).getMonth()+1 > Integer.parseInt($F{SELECTED_PERIOD})):false]]></variableExpression>
</variable>
7、jasper excel 的设计过程中,如果需要每个不同的sheet页底部具有相同的summary, 可以将summary 部分的内容放到Page Footer.
8 jasper html 的设计过程中,需要比excel添加三行属性.
<property name="net.sf.jasperreports.export.html.using.images.to.align" value="false"/>
<property name="net.sf.jasperreports.export.html.frames.as.nested.tables" value="false"/>
<property name="net.sf.jasperreports.export.html.wrap.break.word" value="true"/>
jasper 常用知识点总结的更多相关文章
- DB2_SQL_常用知识点&实践
DB2_SQL_常用知识点&实践 一.删除表中的数据(delete或truncate) 1 truncate table T_USER immediate; 说明:Truncate是一个能够快 ...
- JAVA常用知识点及面试题总结
1. String.StringBuffer.StringBuilder三者区别? (1)三者在执行速率上的比较: String<StringBuffer<StringBuilder 原因 ...
- HTML常用知识点代码演示
1 HTML部分常用知识点 <!-- 版本声明 --> <!DOCTYPE html> <!-- 唯一根元素 --> <html> <!-- 对网 ...
- Java 常用知识点
Java 常用知识点 1.日期格式化 SimpleDateFormat Date date=new Date(System.currentTimeMillis()) ; SimpleDateForma ...
- Less常用知识点
上篇文章介绍了如何安装Less,我们将所有东西都写在.less里面,最后通过命令将.less转换成.css文件,就可以放入到项目里用了.今天了解一些less常用知识点. 1.变量:声明两个变量,一个是 ...
- BIOS备忘录之EC常用知识点
BIOS工程师眼中常用的EC知识点汇总: EC的硬件架构 EC硬件结构上主要分为两部分:Host Domain和EC Domain Host Domain就是通过LPC与CPU通信的部分(LPC部分需 ...
- YII2常用知识点总结
YII2常用知识点总结 (一)总结性语句 (1)经常看看yii源码比如vendor\yiisoft\yii2\web这个目录(很重要)下的文件中的方法(这些文件中的公共方法,大致看了下基本上都可以通过 ...
- CSS3常用知识点
CSS3常用知识点 1 css3选择器 1.1 属性选择器 /* E[attr~=val] 表示的一个单独的属性值 这个属性值是以空格分隔的*/ .attr2 a[class~="kawa& ...
- javaScript常用知识点有哪些
javaScript常用知识点有哪些 一.总结 一句话总结:int = ~~myVar, // to integer | 是二进制或, x|0 永远等于x:^为异或,同0异1,所以 x^0 还是永远等 ...
随机推荐
- 算法:二分查找(python版)
#!/usr/bin/env python #coding -*- utf:8 -*- #二分查找#时间复杂度O(logn)#一个时间常量O(1)将问题的规模缩小一半,则O(logn) import ...
- Scalaz(45)- concurrency :Task-函数式多线程编程核心配件
我们在上一节讨论了scalaz Future,我们说它是一个不完善的类型,最起码没有完整的异常处理机制,只能用在构建类库之类的内部环境.如果scalaz在Future类定义中增加异常处理工具的话,用户 ...
- ENVI软件操作之【数据的显示操作】
数据的显示操作主要包括以下的一些简单窗口操作 1.文件列表管理 1)可用的波段列表Available Bands List,使用于存取ENVI图像文件和显示图像文件的主要控制对话框.无论何时何地打开一 ...
- WPF实现炫酷Loading控件
Win8系统的Loading效果还是很不错的,网上也有人用CSS3等技术实现,研究了一下,并打算用WPF自定义一个Loading控件实现类似的效果,并可以让用户对Loading的颗粒(Particle ...
- MixItUp:超炫!基于 CSS3 & jQuery 的过滤和排序插件
MixItUp 是一款轻量,但功能强大的 jQuery 插件,提供了对分类和有序内容的美丽的动画过滤和排序功能.特别适合用于作品集网站,画廊,图片博客以及任何的分类或有序内容. 它是如何工作的? Mi ...
- 移动 Web 开发必备!时尚的 Off Canvas 导航
这里向大家分享一组创新的 Off Canvas 导航效果.Off Canvas 导航在一些移动应用程序中被广泛使用.当你点击汉堡按钮(一般是三条横线组成)时,在左侧或者右侧拉出一个菜单,这样可以充分利 ...
- 【移动适配】移动Web怎么做屏幕适配(一)
屏幕适配是一个很容易被忽略的问题,但对于精益求精的产品而言,是必不可少的.对于Web开发的求职者而言,也是一个必需要理解清楚的经典问题 首发于微信公众号(啃先生) 壹 | Fisrt 移动端适配的是 ...
- KnockoutJS---一个极其优秀的MVVM模型的js框架
相信对于DotNet平台的开发人员来讲,MVVM模式已经不再是个陌生的词汇了吧.而我们今天介绍的Knockout JS, 则是一个MVVM模式的JS框架,官方网址:http://knockoutjs. ...
- SAP中日期时间函数总结
1.获得最后一天CALL FUNCTION 'FIMA_DATE_CREATE' EXPORTING I_DATE = I_DATE "输入 ...
- Iphone 英语语言下通讯录排序问题
Iphone 如果把界面语言设置成English,那么通讯录默认排序是通过拼音来排的,如果联系人信息中没有设置名字的拼音,那么这些联系人都会被放到#中. 批量添加拼音的解决方案: https://gi ...