<style name="blueStyle" >
<conditionalStyle>
<conditionExpression><![CDATA[($P{INDIRIZZO}).length()>30 ? Boolean.TRUE : Boolean.FALSE]]></conditionExpression>
<style style="blueStyle" fontSize="3"/>
</conditionalStyle>
</style>
<parameter name="INDIRIZZO" class="java.lang.String"/>
[...]
<textField>
<reportElement x="178" y="94" width="157" height="17"/>
<textElement>
<font fontName="Arial" size="9"/>
</textElement>
<textFieldExpression class="java.lang.String"><![CDATA[$P{INDIRIZZO}]]></textFieldExpression>
</textField>
Run Code Online (Sandbox Code Playgroud)
当INDIRIZZO长度> 30 时,我想缩小字体大小 ...
但这不起作用....
首先,我在iReport 5.1.0中创建一个R_D1.jrxml文件.
我执行报告的Java代码如下所示:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.HashMap;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperFillManager;
public class DbReportFill{
Connection con;
public void generateReport() {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/sentiment","root", "abcd");
System.out.println("Filling report...");
JasperFillManager.fillReportToFile("/home/abcd/report/R_D1.jrxml",new HashMap<String, Object> (), con);
System.out.println("Done!");
con.close();
} catch (JRException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
new DbReportFill().generateReport();
}
}
Run Code Online (Sandbox Code Playgroud)
当我执行该类时,我得到以下异常:
Filling report...
net.sf.jasperreports.engine.JRException: Error loading object from file …Run Code Online (Sandbox Code Playgroud) 我想将对象列表传递给jasper report中的list组件.我使用dataSourceExpression for list1是新的net.sf.jasperreports.engine.data.JRBeanCollectionDataSource和参数类是java.util.List.
当我生成报告时,它显示错误,如java.lang.NoSuchMethodException.
豆:
public void generateReport() {
Statement stmt = null;
ResultSet resultset = null;
ResultSet resultset1 = null;
Connection con = null;
String fromdate = "2013-01-01";
String todate = "2013-01-31";
int unitId = 1;
String driver = "com.mysql.jdbc.Driver";
String connection = "jdbc:mysql://localhost:3306/compliance?user=root&password=root";
List<Object> shortnamelist = new ArrayList<Object>();
try {
String selectstatement = "CALL P_Select_Salary ('" + fromdate + "', '" + todate + "','" + unitId + "', 'Salary_Summary')";
Class.forName(driver); …Run Code Online (Sandbox Code Playgroud) 如何为textField数据中的单词或句子添加特定样式(如粗体,删除)JasperReports
这应该是关于JasperReports的一个简单问题.我试图在整个报告中做一个简单的计数器,它应该根据条件递增.但是,无论我尝试什么,无论变量表达式如何,似乎计数器变量总是递增.我的变量的定义属性如下:
类:整数
计算:计数
重置类型:报告
增量类型:无
变量表达式:初始值:$F{on_target}.doubleValue() >= 0.0
Integer.valueOf(0)
我在数据集中总共有23行,并且根据标准,计数器最终应该等于18.我在摘要带中输出变量,评估时间为现在.但是,无论评估时间如何,甚至将变量表达式设置为Boolean.valueOf(true == false),变量的值总是最终为23.
我忘了什么简单的小事?
我正在使用iReport 2.0.2.在Excel导出器的帮助下生成报表后,我在格式化数字数据时遇到问题.
例如,85110057689字符串显示为8.51100e+10Excel文件(作为在iReport中使用"Excel中的预览"按钮的结果).
请建议如何将格式更改为简单(非科学).
我在使用XML作为数据源在报表摘要面板中创建表组件时遇到问题,最终报表仅显示空白行.
下面是我的名为ProjectXML.xml的 xml数据源
<testsuites>
<testsuite name="testsuite1"/>
<testsuite name="testsuite2"/>
<testsuite name="testsuite3"/>
</testsuites>
Run Code Online (Sandbox Code Playgroud)
下面是我的名为report12.jrxml的.jrxml文件
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="report12" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="bb749013-793e-4a97-a43a-08d89a11ce20">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<style name="table">
<box>
<pen lineWidth="1.0" lineColor="#3300CC"/>
</box>
</style>
<style name="table_TH" mode="Opaque" backcolor="#F0F8FF">
<box>
<pen lineWidth="0.5" lineColor="#3300CC"/>
</box>
</style>
<style name="table_CH" mode="Opaque" backcolor="#BFE1FF">
<box>
<pen lineWidth="0.5" lineColor="#3300CC"/>
</box>
</style>
<style name="table_TD" mode="Opaque" backcolor="#FFFFFF">
<box> …Run Code Online (Sandbox Code Playgroud) 我们使用JasperReports 5.6.1生成报告,并允许将相同的模板导出为PDF或Powerpoint.在本地运行时,下载的PDF和PPTX文件完美运行.当我们部署到我们的服务器时,PDF工作正常,但无法打开PPTX文件.当我们在本地运行时,它被部署到tomcat,但是当部署到服务器时,它在Websphere上运行.
我试过并注意到的事情:
x我尝试导出到xlsx 的类型文件的问题,只是为了看看会发生什么,并且它可以使用相同的模板工作正常.以下是我们编写响应的代码:
if ("xlsx".equals(type)) {
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
response.setHeader("Content-Disposition", "attachment; filename=" + filename + ".xlsx");
} else if ("pptx".equals(type)) {
response.setContentType("application/vnd.openxmlformats-officedocument.presentationml.presentation");
response.setHeader("Content-Disposition", "attachment; filename=" + filename + ".pptx");
response.setCharacterEncoding("UTF-8");
} else {
response.setContentType("application/pdf");
response.setHeader("Content-Disposition", "attachment; filename=" + filename + ".pdf");
}
try (final ByteArrayOutputStream reportResult = reportsService.generateReport(
getDeal(userId, dealId, sessionStore),
getScenarioModel(userId, dealId, scenarioId, sessionStore), reportId, type)) {
configureResponse(response, type, reportResult, dealId + "-" + scenarioId);
// Write to http response
reportResult.writeTo(response.getOutputStream());
} …Run Code Online (Sandbox Code Playgroud) 我有一个HTML存储在数据库中:
<ul>
<li>Pretend you're talking to a busy colleague and have to sum up your entire question in one sentence: what details can you include that will help someone identify and solve your problem?</li>
<li>Spelling, grammar and punctuation are important! Remember, this is the first part of your question others will see - you want to make a good impression. If you're not comfortable writing in English, ask a friend to proof-read it for you. </li>
<li>If you're having trouble …Run Code Online (Sandbox Code Playgroud) 我收到
java.lang.NoClassDefFoundError: org/apache/commons/digester/Digester错误,我被困这个错误超过一个月.我已经尝试了所有Digester版本,我还在classpath中检查了重复的JAR.
我已经设计了报告,iReport-5.6.0并且使用了来自
iReport-5.6.0\ireport\modules\ext其他所需JAR的JAR.
错误日志:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/digester/Digester
at net.sf.jasperreports.engine.JasperCompileManager.compileReportToFile(JasperCompileManager.java:108)
at net.sf.dynamicreports.examples.JasperMongoDBConnection.main(JasperMongoDBConnection.java:30)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.digester.Digester
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at sun.misc.Launcher$ExtClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 2 more
Run Code Online (Sandbox Code Playgroud) jasper-reports ×10
java ×4
ireport ×2
classpath ×1
counter ×1
indentation ×1
powerpoint ×1
report ×1
variables ×1
xml ×1