如果您对jasperreport6.10交叉表溢出并在其下方重叠另一个交叉表感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于jasperreport6.10交叉表溢出并在其下
如果您对jasperreport 6.10 交叉表溢出并在其下方重叠另一个交叉表感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于jasperreport 6.10 交叉表溢出并在其下方重叠另一个交叉表的详细内容,我们还将为您解答jasperreport交叉报表的相关问题,并且为您提供关于access2010怎么创建交叉表查询 access2010创建交叉表查询的方法、birt 报表设计(5)—交叉表格、iReport+jasperreport的第一个报表、Jasper Report,交叉表操作的有价值信息。
本文目录一览:- jasperreport 6.10 交叉表溢出并在其下方重叠另一个交叉表(jasperreport交叉报表)
- access2010怎么创建交叉表查询 access2010创建交叉表查询的方法
- birt 报表设计(5)—交叉表格
- iReport+jasperreport的第一个报表
- Jasper Report,交叉表操作
jasperreport 6.10 交叉表溢出并在其下方重叠另一个交叉表(jasperreport交叉报表)
如何解决jasperreport 6.10 交叉表溢出并在其下方重叠另一个交叉表?
摘要带内有很多交叉表,当一个交叉表内容溢出时,会重叠在其下的交叉表内容,如图红色突出显示。排名交叉表与服务年份交叉表重叠。
- 如果上交叉表内容溢出,有什么方法可以使交叉表移位下载?
- 每个交叉表都在一个框架内,如何使框架(及其边框)在其封闭的交叉表溢出时展开?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
access2010怎么创建交叉表查询 access2010创建交叉表查询的方法
如何创建
access2010怎么创建交叉表查询?access2010创建交叉表查询的方法
打开Access2010

点击【打开】菜单,选择数据库文件名,然后点击【打开】

此时打开了数据库

点击要打开的数据库表,如product

点击【创建】,再点击【查询向导】

选择【交叉表查询向导】,然后点击【确定】

选择表,然后点击【下一步】

选择字段,然后点击【下一步】

选择行标题字段,然后点击【下一步】

选择列标题字段,然后点击【下一步】

选择交叉点计算出的数字,然后点击【下一步】

输入查询标题,然后点击【完成】

此时交叉表查询就创建了

以上就是
birt 报表设计(5)—交叉表格
简要的布局:
创建一个“网络”与一个交叉表格:
接下来做的第一步工作就是创建一个“数据集”
然后创建一个“多维数据集”下面的交叉表提供数据:


“组”:可以说是组,也可以说是维,是分组的字段。因为我们创建的二维表,所以至少要两个组,一组显示行,一组显示列。
“摘要字段”:就是要统计的字段
这样就算创建完了“多维数据集”了,下面将字段绑定到“交叉表”中
这样算是结束了,我们先看一下效果
因为“FType”是用整数进行保存,所以后面我们要对该字段写一下“表达式”,让数据做一下转换。可以看有些统计值有是空,在界面上显示的就是空白。所以下面我们要设置空值展现的样式。
双击“[FType]”单元格,编辑绑定数据
第二就是设置空值的展现样式了。选中交叉表
如下图,到属性编辑器中选择:‘空行/列’设置''For empty cells,show:''的值
这样再来看下效果:
iReport+jasperreport的第一个报表
jasperreport的开发,有两种方式,第一种为动态的创建报表,所谓动态,即在程序运行过程中,根据需要由程序定义出相应的模板,该种方式为更灵活,需要什么就创建什么,具有动态性和不确定性;第二种则是根据事先准备好的模板,根据之前的设定,忘模板中填充数据,该种方式具有确定性,在处理上速度也会更佳,因为事先准备好模板,事先编译完成,只需要往其中填充进数据,导出即可,省去的前面的设计和编译环节。第二种方式,采用较多的是使用拖拽工具进行设计,本章以及后续都采用iReport。
使用iReport开发,事先需要准备好JAVA环境,目前最新版本为iReport-5.6.0。注意该版本目前不支持JDK8,需要JDK6或者7才能运行。安装完之后,可以根据情况设计一个简单的报表。本文主要讲述几个部分的占用空间,所以设计了如下的模板:
具体的xml如下:
<?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="hello" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="761ac2a3-d6ed-4a5e-b00e-0a42c96858b3">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<parameter name="detail" />
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="35" splitType="Stretch">
<staticText>
<reportElement x="211" y="5" width="113" height="30" forecolor="#000099" uuid="d91ed968-d7fd-4c2a-9a14-bdba82d2cea3"/>
<textElement>
<font size="16" isBold="true"/>
</textElement>
<text><![CDATA[This is Title]]></text>
</staticText>
<textField pattern="yyyy/MM/dd">
<reportElement x="24" y="15" width="100" height="20" uuid="f611afbf-084f-4d62-8207-aa847d9f850d"/>
<textFieldExpression><![CDATA[new java.util.Date()]]></textFieldExpression>
</textField>
</band>
</title>
<pageHeader>
<band height="35" splitType="Stretch">
<staticText>
<reportElement x="171" y="4" width="203" height="28" forecolor="#CC00CC" uuid="e58f784d-76e9-49c9-b0e4-f415bef975ba"/>
<textElement>
<font size="15" isBold="false"/>
</textElement>
<text><![CDATA[This is PageHeader]]></text>
</staticText>
</band>
</pageHeader>
<columnHeader>
<band height="61" splitType="Stretch">
<staticText>
<reportElement x="171" y="15" width="169" height="26" forecolor="#FF6633" uuid="50c197ee-1c4d-44f5-8287-89a190518f41"/>
<textElement>
<font size="15"/>
</textElement>
<text><![CDATA[This is ColumnHeader]]></text>
</staticText>
</band>
</columnHeader>
<detail>
<band height="125" splitType="Stretch">
<textField isStretchWithOverflow="true">
<reportElement stretchType="RelativeToBandHeight" x="0" y="0" width="555" height="125" forecolor="#003333" uuid="5a46fe2b-d19b-4ac3-8085-c6a9d7784c29"/>
<textElement>
<font size="13"/>
</textElement>
<textFieldExpression><![CDATA[$P{detail}]]></textFieldExpression>
</textField>
</band>
</detail>
<columnFooter>
<band height="45" splitType="Stretch">
<staticText>
<reportElement x="176" y="10" width="169" height="26" forecolor="#FF6600" uuid="0014b3a9-92c0-470e-9772-e6b58b291dce"/>
<textElement>
<font size="15"/>
</textElement>
<text><![CDATA[This is ColumnFooter]]></text>
</staticText>
</band>
</columnFooter>
<pageFooter>
<band height="54" splitType="Stretch"/>
</pageFooter>
<summary>
<band height="42" splitType="Stretch">
<staticText>
<reportElement x="177" y="-38" width="203" height="28" forecolor="#990099" uuid="aa93eaad-d095-48fa-9716-20a82f5b0049"/>
<textElement>
<font size="15"/>
</textElement>
<text><![CDATA[This is PageFooter]]></text>
</staticText>
<staticText>
<reportElement x="211" y="12" width="163" height="20" forecolor="#009999" uuid="c1722fde-c190-4b8e-9742-403b014d9961"/>
<textElement>
<font size="13"/>
</textElement>
<text><![CDATA[this is summary]]></text>
</staticText>
</band>
</summary>
</jasperReport>
测试的代码如下:
package com.zzq.test.jasperreport.hello;
import java.io.File;
import java.net.URISyntaxException;
import java.util.HashMap;
import java.util.Map;
import net.sf.jasperreports.engine.JREmptyDataSource;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.export.JRPdfExporter;
import net.sf.jasperreports.engine.export.JRXlsExporter;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.export.SimpleExporterInput;
import net.sf.jasperreports.export.SimpleOutputStreamExporterOutput;
import net.sf.jasperreports.export.SimpleXlsReportConfiguration;
/**
* 第一个jasperreport程序,通过例子说明title、pageHeader、pageFooter、Detail、ColumnHeader、ColumnFooter、Summary的结构关系
* @author zzq0324@qq.com
*
*/
public class HelloJasper {
/** 前缀 */
private static final String PREFIX = File.separator + "hello" + File.separator + "hello";
/** classpath所在的目录 */
private static File DIR = null;
/**
* 初始化当前类所在的编译目录
*/
static {
try {
DIR = new File(HelloJasper.class.getResource("/").toURI());
} catch (URISyntaxException e) {
e.printStackTrace();
}
}
/**
* 将jrxml编译成jasper的格式,并保存在classpath目录下
* @return
* @throws Exception
*/
public static void compile() throws Exception {
JasperCompileManager.compileReportToFile(DIR + PREFIX + ".jrxml");
}
/**
* 将数据填充到编译后的jasper,重新生成一个jrprint的文件
* @throws Exception
*/
public static void fillData() throws Exception {
Map<String, Object> params = new HashMap<String, Object>();
StringBuffer buffer = new StringBuffer();
for (int i = 0; i < 1000; i++) {
buffer.append("test" + i);
}
params.put("detail", buffer.toString());
//此处不能直接用JasperFillManager.fillReportToFile(DIR + PREFIX + ".jasper", params)调用,需要多传一个JREmptyDataSource,否则导出的文件有问题,具体PDF空白,excel文件有问题
JasperFillManager.fillReportToFile(DIR + PREFIX + ".jasper", params, new JREmptyDataSource());
}
/**
* 将报表导出成pdf
* @throws Exception
*/
public static void printPDF() throws Exception {
JasperPrint jasperPrint = (JasperPrint) JRLoader.loadObject(new File(DIR + PREFIX + ".jrprint"));
File destFile = new File(DIR + PREFIX + ".pdf");
JRPdfExporter exporter = new JRPdfExporter();
exporter.setExporterInput(new SimpleExporterInput(jasperPrint));
exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(destFile));
exporter.exportReport();
}
/**
* 打印成excel文件
* @throws Exception
*/
public static void printXls() throws Exception {
JasperPrint jasperPrint = (JasperPrint) JRLoader.loadObject(new File(DIR + PREFIX + ".jrprint"));
File destFile = new File(DIR + PREFIX + ".xls");
JRXlsExporter exporter = new JRXlsExporter();
exporter.setExporterInput(new SimpleExporterInput(jasperPrint));
exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(destFile));
SimpleXlsReportConfiguration configuration = new SimpleXlsReportConfiguration();
configuration.setOnePagePerSheet(false);
exporter.setConfiguration(configuration);
exporter.exportReport();
}
public static void main(String[] args) throws Exception {
compile();
fillData();
printPDF();
printXls();
}
}
运行之后,会生成相应的pdf和xls。通过观察生成的PDF,可以总结出:
1、title为报表的标题,整个报表内只会出现一次;
2、PageHeader和PageFooter,页面的头部和尾部,根据生成的PDF发现,PageHeader在每页都会存在,而PageFooter则只在最后一页存在,目前不知道这个原因;
3、ColumnHeader和ColumnFooter将Detail夹在中间,每个页面都会出现;
4、Summary为存放汇总数据,之后最后一页才会出现。
Jasper Report,交叉表操作
如何解决Jasper Report,交叉表操作?
我正在使用 TIBCO Jaspersoft® Studio 6.8.0
并且我正在创建一个包含交叉表的子报表。问题是我不确定如何操作它来创建我想要的视图。或者如果有另一个元素/元素组合来创建类似的东西。
这是我想要的最终结果(不是颜色,只是结构):
如您所见,我们将整行文本用作标题,然后一行用于“Classe”,另一行用于“Codice Anomalia”,然后是交叉表。到目前为止,我创建了这样的交叉表部分
这是代码(它是一个子报表,所以我们从主报表中获得的参数很少):
<?xml version="1.0" encoding="UTF-8"?>
<!-- Created with Jaspersoft Studio version 6.8.0.final using JasperReports Library version 6.8.0-2ed8dfabb690ff337a5797129f2cd92902b0c87b -->
<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="Prova" pageWidth="595" pageHeight="842" orientation="Landscape" whenNoDataType="nopages" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" isSummaryNewPage="true" isSummaryWithPageHeaderAndFooter="true" uuid="1916d28f-c2ed-4735-a541-6dfbd82fe676">
<property name="com.jaspersoft.studio.unit." value="pixel"/>
<property name="com.jaspersoft.studio.data.defaultdataadapter" value="report\mock\Anomalies_Evolution_sub.xml"/>
<style name="DefaultStyle" isDefault="true" fontName="SinaFont" fontSize="8"/>
<style name="DefaultTableStyle">
<Box>
<pen linewidth="0.5" lineColor="#888888"/>
</Box>
</style>
<style name="DefaultTableHeaderStyle"mode="Opaque" backcolor="#F0F0F0"/>
<style name="Table_T"/>
<parameter name="NomeAnomalia_P"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.String" isForPrompting="false"/>
<parameter name="GruppiAnomalie_P"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.Integer" isForPrompting="false"/>
<parameter name="Total_P"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.String" isForPrompting="false"/>
<queryString>
<![CDATA[]]>
</queryString>
<field name="Value"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.String"/>
<field name="Code"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.String"/>
<field name="Severity"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.String"/>
<field name="Class"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.Integer"/>
<variable name="VI"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.Float">
<variableExpression><![CDATA[Float.parseFloat($F{Value})]]></variableExpression>
</variable>
<variable name="NomeAnomalia"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.String">
<variableExpression><![CDATA[$P{NomeAnomalia_P}]]></variableExpression>
</variable>
<variable name="GruppiAnomalie"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.Integer">
<variableExpression><![CDATA[$P{GruppiAnomalie_P}]]></variableExpression>
</variable>
<variable name="Total"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.String">
<variableExpression><![CDATA[$P{Total_P}]]></variableExpression>
</variable>
<group name="Group1">
<groupExpression><![CDATA[$V{GruppiAnomalie}]]></groupExpression>
<groupFooter>
<band height="362">
<crosstab>
<reportElement x="10" y="100" width="520" height="130" uuid="ac2fc6d0-7f1c-4d18-885e-4eac7a3e1606">
<property name="com.jaspersoft.studio.layout" value="com.jaspersoft.studio.editor.layout.VerticalRowLayout"/>
<property name="com.jaspersoft.studio.crosstab.style.header" value="Crosstab_CH"/>
<property name="com.jaspersoft.studio.crosstab.style.group" value="Crosstab_CG"/>
<property name="com.jaspersoft.studio.crosstab.style.total" value="Crosstab_CT"/>
<property name="com.jaspersoft.studio.crosstab.style.detail" value="Crosstab_CD"/>
</reportElement>
<crosstabParameter name="NomeAnomalia_CT">
<parameterValueExpression><![CDATA[$V{NomeAnomalia}]]></parameterValueExpression>
</crosstabParameter>
<rowGroup name="Severity" width="60" totalPosition="End">
<buckethttps://www.jb51.cc/tag/javalang/" target="_blank">java.lang.String">
<bucketExpression><![CDATA[$F{Severity}]]></bucketExpression>
</bucket>
<crosstabrowHeader>
<cellContents mode="Opaque"https://www.jb51.cc/tag/sst/" target="_blank">sstab_CH">
<textField>
<reportElement x="0" y="0" width="60" height="20" uuid="2a96a380-5476-4519-9668-d8b74e3c3dce"/>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$V{Severity}.substring(4)]]></textFieldExpression>
</textField>
</cellContents>
</crosstabrowHeader>
<crosstabTotalRowHeader>
<cellContents mode="Opaque"https://www.jb51.cc/tag/sst/" target="_blank">sstab_CT"/>
</crosstabTotalRowHeader>
</rowGroup>
<columnGroup name="Code" height="20" totalPosition="End">
<buckethttps://www.jb51.cc/tag/javalang/" target="_blank">java.lang.String">
<bucketExpression><![CDATA[$F{Code}]]></bucketExpression>
</bucket>
<crosstabColumnHeader>
<cellContents mode="Opaque"https://www.jb51.cc/tag/sst/" target="_blank">sstab_CH">
<textField>
<reportElement x="0" y="0" width="60" height="20" uuid="6b72c99c-2807-4ecd-9229-60501eef76a8"/>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$V{Code}]]></textFieldExpression>
</textField>
</cellContents>
</crosstabColumnHeader>
<crosstabTotalColumnHeader>
<cellContents mode="Opaque"https://www.jb51.cc/tag/sst/" target="_blank">sstab_CT">
<staticText>
<reportElement x="0" y="0" width="60" height="20" forecolor="#FFFFFF" uuid="ff63be8e-5eb2-4c34-b7d8-5c468d2bde9c"/>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<text><![CDATA[%]]></text>
</staticText>
</cellContents>
</crosstabTotalColumnHeader>
</columnGroup>
<measure name="Value_MEASURE1"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.Float" calculation="Sum">
<measureExpression><![CDATA[$V{VI}]]></measureExpression>
</measure>
<measure name="NA"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.String">
<measureExpression><![CDATA["n/a"]]></measureExpression>
</measure>
<measure name="totalCount"https://www.jb51.cc/tag/javalang/" target="_blank">java.lang.Float" calculation="Sum">
<measureExpression><![CDATA[$V{VI} == -1 ? 0 : $V{VI}]]></measureExpression>
</measure>
<crosstabcell width="60" height="20">
<cellContents mode="Opaque"https://www.jb51.cc/tag/sst/" target="_blank">sstab_CD">
<textField>
<reportElement x="0" y="0" width="60" height="20" uuid="2f6aa90e-73f8-4f5f-8fdf-47ea4df80674"/>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$V{Value_MEASURE1} == -1 ? $V{NA} : $V{Value_MEASURE1}]]></textFieldExpression>
</textField>
</cellContents>
</crosstabcell>
<crosstabcell width="60" height="20" columnTotalGroup="Code">
<cellContents mode="Opaque"https://www.jb51.cc/tag/sst/" target="_blank">sstab_CT">
<textField>
<reportElement x="0" y="0" width="60" height="20" forecolor="#FFFFFF" uuid="2b009b35-e77c-4cba-857e-84ba4ea6bfc6"/>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$V{totalCount}]]></textFieldExpression>
</textField>
</cellContents>
</crosstabcell>
<crosstabcell width="60" height="20" rowTotalGroup="Severity">
<cellContents mode="Opaque"https://www.jb51.cc/tag/sst/" target="_blank">sstab_CT"/>
</crosstabcell>
<crosstabcell width="60" height="20" rowTotalGroup="Severity" columnTotalGroup="Code">
<cellContents mode="Opaque"https://www.jb51.cc/tag/sst/" target="_blank">sstab_CT"/>
</crosstabcell>
</crosstab>
</band>
</groupFooter>
</group>
</jasperReport>
我想要的是像我上面解释的那样添加上面的 3 行,这可能吗?我对其他元素或混合不同元素的替代方案也持开放态度,只要结果与第一张照片相似。
编辑:
我忘了提到我正在从通过 api 传递的 json 中获取数据……现在我正在使用模拟:
[
{
"NomeAnomalia": "MIT Impalcati,Travi,Traversi CA CAP","GruppiAnomalie": 201,"Total": "6%","anomalyList": [
{
"GruppiAnomalie": 201,"Code": "cacap1","Name": "Macchie di umidita passiva","Class": 1,"Severity": "0 - Lieve","Value": 3.2736806021763885
},{
"GruppiAnomalie": 201,"Code": "cacap12","Value": 1.2736806021763885
},"Code": "cacap16","Class": 2,"Severity": "2 - Forte","Value": 0.7736806021763885
},"Code": "DifGen1","Class": 5,"Severity": "1 - Media","Value": 1.571812154
},"Code": "Test Code","Name": "Test Name","Value": -1
},"Code": "Test Code 2","Name": "Test Name 2","Value": -1
}
],"pieChartData": [
{"severityName": "Lieve","severityValue": 25,"severityLabel": "25%"},{"severityName": "Media","severityValue": 15,"severityLabel": "15%"},{"severityName": "Forte","severityValue": 38,"severityLabel": "38%"}
]
},{
"NomeAnomalia": "MIT Pile,Spalle,Fondazioni CLS","GruppiAnomalie": 202,"anomalyList": [
{
"GruppiAnomalie": 202,{
"GruppiAnomalie": 202,"Value": 0.7736806021763885
}
],"severityLabel": "5%"},"severityLabel": "87%"},"severityLabel": "47%"}
]
}
]
anomalyList 是传递给子报表的 json 部分(我也通过参数传递了其他值,例如“NomeAnomalia”、“GruppiAnomalie”和“Total”)。
每一列都应该有“Class”、“Code”和“Severity”值。测量值显示为“值”字段,我已经设法在行的末尾获得每个“值”的总数(我在第一篇文章中发布的第二张图片)。
Total % 已经存在,并且使用 Severity 值(“0 - Lieve”、“1 - Media”、“2 - Forte”)我已经设法给它下了订单。
再次感谢您!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
今天关于jasperreport 6.10 交叉表溢出并在其下方重叠另一个交叉表和jasperreport交叉报表的分享就到这里,希望大家有所收获,若想了解更多关于access2010怎么创建交叉表查询 access2010创建交叉表查询的方法、birt 报表设计(5)—交叉表格、iReport+jasperreport的第一个报表、Jasper Report,交叉表操作等相关知识,可以在本站进行查询。
本文标签: