JasperReport模板元素的含义

类别:Java 点击:0 评论:0 推荐:

父元素名称

元素名称 属性名称

含义

元素出现次数

取值类型

根元素

jasperReport

模板根元素

1

<property>,

 <reportFont>,

 <parameter>,

 <queryString>

,<field>,

 <variable>,

<group>,

<background>,

<title>,

<pageHeader>,

<columnHeader>,

<detail>,

<columnFooter>,

<pageFooter>,

<summary>

jasperReport

 

 

 

 

name

模板名称

必须的属性

NMTOKEN

columnCount

每页的列数

1

NMTOKEN默认值为1

printOrder

如果一页多于一列时,指定填充数据的方向

1

Vertical 或者 Horizontal默认为vertical

pageWidth

页面宽度

1

NMTOKEN默认值为595

pageHeight

页面高度

1

NMTOKEN默认值为842

columnWidth

列宽度

1

NMTOKEN默认值为555

columnSpacing

列间距

1

NMTOKEN默认值为0

leftMargin

页面做边距

1

NMTOKEN默认值为20

rightMargin

页面右边距

1

NMTOKEN默认值为20

topMargin

页面上边距

1

NMTOKEN默认值为30

bottomMargin

页面下边距

1

NMTOKEN默认值为30

whenNoDataType

当页面上没有数据时处理方式如果选择noPages系统会提示没有页面,如果选择BlankPage会显示一页空的页面,如果选择allSectionNoDetial则会显示除Detail段之外的所有部分

1

NoPages 或BlankPage 或AllSectionsNoDetail默认为NoPages

isTitleNewPage

Title部分是否在单独的一页显示

1

True或者false默认为false

isSummaryNewPage

Summary部分是否在单独的一页显示

1

True或者false默认为false

scriptletClass

数据填充过程中执行的Java代码

可有可无

NMTOKEN

orientation

打印方向

1

Portrait或者 Landscape默认为"Portrait"

jasperReport

property

定义property元素

0次或多次

空元素

property

name

属性名

必须

CDATA

value

属性值

可有可无

CDATA

reportFont

定义模板中的字体

0次或多次

空元素

reportFont

name

定义引用名称

必须

name

isDefault

该字体是否是该模板的默认字体

1

true 或者 false默认为"false"

fontName

字体的名称

1

CDATA 默认为"sansserif"

size

字体大小

1

NMTOKEN默认为 "10"

isBold

字体是否为粗体

1

true 或者 false默认为"false"

isItalic

字体是否为斜体

1

true 或者 false默认为"false"

isUnderline

字体是否加下划线

1

true 或者 false默认为"false"

isStrikeThrough

isStrikeThrough

1

true 或者 false默认为"false"

pdfFontName

PDF字体名字

1

CDATA默认为Helvetica

pdfEncoding

PDF字体编码方式

1

CDATA默认为CP1252

isPdfEmbedded

PDF字体是否嵌入到PDF文档中

1

true 或者 false默认为"false"

Parameter

模板中的参数定义

0次或者多次

<parameterDescription>, <defaultValueExpression>

Parameter

name

参数名

必须

NMTOKEN

class

参数值类型

1

NMTOKEN默认为“java.lang.String”

isForPrompting

用在图形界面中提示用户输入参数信息

1

true 或者 false默认为"false"

Parameter

parameterDescription

Parameter 中的isForPrompting设置成“true”时,此字段的信息就是向用户提示的信息

0此或者1次

#PCDATA

Parameter

defaultValueExpression

在数据填充过程中,parameter 的值通过HaspMap传送,如果在填充中不向变量传送值,则此变量为null,但是如果定义了defaultValueExpression此变量的默认值就取此元素中的内容(此字段的值当且仅当数据填充过程中没有向此变量传送值时有效)

0次或者1次

#PCDATA

jasperReport

queryString

数据填充过程中,如果数据参数是连接池对象(Connection)则执行此SQL语句进行取数据

0次或者1次

#PCDATA

jasperReport

field

查询结果目标列字段名称定义

0次或者多次

<fieldDescription>

field

name

参数名

必须

NMTOKEN

class

参数值类型

1

(java.lang.Object | java.lang.Boolean | java.lang.Byte | java.util.Date | java.sql.Timestamp | java.sql.Time | java.lang.Double | java.lang.Float | java.lang.Integer | java.io.InputStream | java.lang.Long | java.lang.Short | java.math.BigDecimal | java.lang.String)默认为“java.lang.String”

field

fieldDescription

???

0次或者1次

#PCDATA

jasperReport

variable

变量定义。系统中还有一些内嵌的变量:PAGE_NUMBER:页号码(可以是页码也可以是页数,通过TextField的计算时间的不同值来设置)

COLUMN_NUMBER:列号码

REPORT_COUNT:当前文档中数据源记录数目

PAGE_COUNT:当前页面中记录的数目

COLUMN_COUNT:当前列中记录的数目

GroupName_COUNT:当前组中记录的数目

 

0次或者多次

<variableExpression> <initialValueExpression>

variable

name

参数名

必须

NMTOKEN

class

参数值类型

1

NMTOKEN默认为“java.lang.String”

resetType

变量被重新初始化的类型,如果为none则变量的值为<variableExpression>中计算的值而永远不会重新初始化;如果为Report,则变量只初始化一次,当且仅当数据填充过程的开始,其值为<initialValueExpression>计算的值;当为Page类型时,变量的值会在每页开始时重新初始化;当为Column时,变量会在每列开始的时候重新初始化;当为Group时,变量5会在resetGroup指定的Group间断处初始化。

1

(None | Report | Page | Column | Group) 默认为"Report"

resetGroup

当且仅当ResetType设置为Group时,此字段有效,

可有可无

CDATA

calculation

变量的计算类型,如果为Nothing,则变量的值就是变量表达式的值;如果为Count,此变量的类型为数字类型,它计算的是数据源迭代过程中,<variableExpression>内元素内容不为null的数据总和;如果为Sum则此变量计算<variableExpression>内返回数据的总和;如果为Average则返回平均数;如果为Highest或者Loweset则返回数据源记录中此变量所计算的最大或最小值;如果为System则此变量的值是程序员通过ScriptClass指定的java类来计算。

1

(Nothing | Count | Sum | Average | Lowest | Highest | StandardDeviation | Variance | System) 默认为"Nothing"

incrementerFactoryClass

实现JRIncrementerFactory接口的Java类

可有可无

NMTOKEN

variable

variableExpression

变量所计算值的表达式

0次或者1次

#PCDATA

variable

initialValueExpression

变量的初始值

0次或者1次

#PCDATA

jasperReport

group

定义模板的group,group中的数据是连续的一系列数据,分组是通过GroupExpression来指定的。模板中可以有很多组,但是这些组是有顺序的,它们之间有包含关系,当一个大组结束时,其包含的小组会重新初始化(分组仅当数据源已经用GroupExpression字段对数据进行排序后有效,如果没有用指定的字段排序则显示结果并不是希望得到的结果)。

0次或者多次

<groupExpression>, <groupHeader>, <groupFooter>

group

name

组名称

必须

NMTOKEN

isStartNewColumn

当新的组开始时,是否在新的一列开始

1

true 或者 false默认为"false"

isStartNewPage

当新的组开始时,是否在新的一页开始

1

true 或者 false默认为"false"

isResetPageNumber

当新的组开始时,是否重置PageNumber变量

1

true 或者 false默认为"false"

isReprintHeaderOnEachPage

是否在每页都打印头信息

1

true 或者 false默认为"false"

 

minHeightToStartNewPage

如果isStartNewPage设置成false但是当页面剩余高度小于一个值后要重新开始一页,此属性就是指定这个最小高度值

1

NMTOKEN默认值为 "0"

Group

groupExpression

分组字段值

0次或者1次

#PCDATA

Group

groupHeader

分组头部分

0次或者1次

<band>

Group

groupFooter

分组尾部分

0次或者1次

<band>

jasperReport

background

背景部分

0次或者1次

<band>

jasperReport

title

标题头部分

0次或者1次

<band>

jasperReport

pageHeader

页眉部分

0次或者1次

<band>

jasperReport

columnHeader

Column头部分

0次或者1次

<band>

jasperReport

detail

 

0次或者1次

<band>

jasperReport

columnFooter

Column尾部分

0次或者1次

<band>

jasperReport

pageFooter

页脚部分

0次或者1次

<band>

jasperReport

summary

总结部分

0次或者1次

<band>

groupHeader

goupFooter background title <pageHeader><columnHeader>

 <detail>

<columnFooter> <pageFooter><summary>

<band>

模板的一段

0次或者1次

printWhenExpression?, (line | rectangle | ellipse | image | staticText | textField | subreport | elementGroup)*)

<Band>

height

段高度

1

NMTOKEN 默认值为0

isSplitAllowed

是否可以分离

???

1

true 或者 false默认为" true"

<Band>

<line>

直线元素

0次或者多次

reportElement, graphicElement?

<line>

direction

直线的方向,

1

TopDown 或者 BottomUp 默认为"TopDown"

<line>

<rectangle>

<ellipse> <image> <staticText> <textField> <subreport>

<reportElement>

 

1

<printWhenExpression>

<reportElement>

key

 

可有可无

NMTOKEN

positionType

当页面元素(TextField或StaticText)允许拉伸影响本元素的位置时,此元素的定位方式

1

(Float | FixRelativeToTop | FixRelativeToBottom) "FixRelativeToTop"

stretchType

图形元素延伸状态

1

(NoStretch | RelativeToTallestObject | RelativeToBandHeight) "NoStretch"

isPrintRepeatedValues

是否打印重复数据

1

true 或者 false默认为"false"

mode

透明设置

可有可无

(Opaque | Transparent)

x

此元素相对于此元素所在段左上脚的X坐标

必须

NMTOKEN

y

此元素相对于此元素所在段左上脚的Y坐标

必须

NMTOKEN

width

元素的宽度

必须

NMTOKEN

height

元素的高度(象素为单位),允许拉伸时,高度会动态变化

必须

NMTOKEN

isRemoveLineWhenBlank

当数据为空时,是否消除此行数据

1

true 或者 false默认为"false"

isPrintInFirstWholeBand

在每页的第一段,此元素是否都出现

1

true 或者 false默认为"false"

isPrintWhenDetailOverflows

当一页不能容下页面元素内容时,是否在其他页重新打印此元素

1

true 或者 false默认为"false"

printWhenGroupChanges

 

可有可无

CDATA

forecolor

前景色

可有可无

CDATA

backcolor

背景色

可有可无

CDATA

<line>

<Rectangle>

<ellipse>

<image>

graphicElement

 

0或1

空元素

graphicElement

 

stretchType

图形元素延伸状态

可有可无

(NoStretch | RelativeToTallestObject | RelativeToBandHeight)

pen

边框线条粗细

可有可无

(None | Thin | 1Point | 2Point | 4Point | Dotted)

fill

线条填充方式

1

(Solid) "Solid"

<reportElement>

<printWhenExpression>

当且仅当此字段返回TRUE时,此元素才显示

0或1

#PCDATA

<band>

<Rectangle>

矩形框元素

0或多次

(reportElement, graphicElement?)

<Rectangle>

radius

矩形圆角半径

1

NMTOKEN 默认为"0"

<band>

<ellipse>

椭圆元素

0或多次

(reportElement, graphicElement?)

<band>

<Image>

图形元素

0或多次

(reportElement, graphicElement?, imageExpression?, anchorNameExpression?, hyperlinkReferenceExpression?, hyperlinkAnchorExpression?, hyperlinkPageExpression?)

<image>

 

scaleImage

当图片大小与指定图像元素大小不同时,怎样在图像元素中显示图片。

1

(Clip | FillFrame | RetainShape) "RetainShape"

hAlign

水平对齐方式

1

(Left | Center | Right) "Left"

vAlign

垂直对齐方式

1

(Top | Middle | Bottom) "Top"

isUsingCache

是否缓存图像

1

(true | false) 默认为"true"

evaluationTime

计算<imageExpression>中内容的时间

1

(Now | Report | Page | Column | Group) "Now"

evaluationGroup

evaluationTime为group时,此属性指定组名

可有可无

CDATA

hyperlinkType

超级链接类型

1

(None | Reference | LocalAnchor | LocalPage | RemoteAnchor | RemotePage) "None"

<image>

<imageExpression>

指定图像的源位置

0或1

#PCDATA

<imageExpression>

class

图像的类型

 

(java.lang.String | java.io.File | java.net.URL | java.io.InputStream | java.awt.Image) "java.lang.String"

<image>

<textField>

<anchorNameExpression>

锚名字(以被超级连接引用)

0或1

#PCDATA

<image>

<textField>

<hyperlinkReferenceExpression>

超级链接引用类型

0或1

#PCDATA

<image>

<textField>

<hyperlinkAnchorExpression>

超级连接锚类型

0或1

#PCDATA

<image>

<textField>

<hyperlinkPageExpression>

超级链接页面类型

0或1

#PCDATA

<band>

<staticText>

静态文本元素

0或多次

(reportElement, textElement?, text?)

<staticText>

<textField>

<textElement>

文本元素

1

(font?)

<textElement>

 

textAlignment

文本水平对齐方式

1

(Left | Center | Right | Justified) "Left"

verticalAlignment

文本垂直对齐方式

1

(Top | Middle | Bottom) "Top"

rotation

旋转方向

1

None | Left | Right) "None"

lineSpacing

???

1

(Single | 1_1_2 | Double) "Single"

isStyledText

???

1

(true | false) "false"

<textElement>

 

<Font>

文本中用到的字体

0或1

空元素

<Font>

reportFont

引用jasperReport中定义的字体名

可有可无

NMTOKEN

fontName

字体的名称

可有可无

CDATA 默认为"sansserif"

size

字体大小

可有可无

NMTOKEN默认为 "10"

isBold

字体是否为粗体

可有可无

true 或者 false默认为"false"

isItalic

字体是否为斜体

可有可无

true 或者 false默认为"false"

isUnderline

字体是否加下划线

可有可无

true 或者 false默认为"false"

isStrikeThrough

isStrikeThrough

可有可无

true 或者 false默认为"false"

pdfFontName

PDF字体名字

可有可无

CDATA默认为Helvetica

pdfEncoding

PDF字体编码方式

可有可无

CDATA默认为CP1252

isPdfEmbedded

PDF字体是否嵌入到PDF文档中

可有可无

true 或者 false默认为"false"

<staticText>

<Text>

静态文本框中的文本内容

0或1

#PCDATA

<band>

<textField>

动态文本框元素

0或多次

(reportElement, textElement?, textFieldExpression?, anchorNameExpression?, hyperlinkReferenceExpression?, hyperlinkAnchorExpression?, hyperlinkPageExpression?)

<textField>

 

isStretchWithOverflow

是否允许拉伸

1

(true | false) "false"

evaluationTime

字段值计算时间

1

Now | Report | Page | Column | Group) "Now"

evaluationGroup

如果evaluationTime为Group,则此属性指定组名

可有可无

CDATA

pattern

指定字段值的模式匹配

可有可无

CDATA

isBlankWhenNull

如果值为null,显示空白否

1

(true | false) "false"

hyperlinkType

超级连接类型

1

(None | Reference | LocalAnchor | LocalPage | RemoteAnchor | RemotePage) "None"

<textField>

 

<textFieldExpression>

字段值内容

0或1

#PCDATA

 

<textFieldExpression>

class

字段值类型

1

(java.lang.Boolean | java.lang.Byte | java.util.Date | java.sql.Timestamp | java.sql.Time | java.lang.Double | java.lang.Float | java.lang.Integer | java.lang.Long | java.lang.Short | java.math.BigDecimal | java.lang.Number | java.lang.String) "java.lang.String"

<band>

<Subreport>

 

0或多次

reportElement, parametersMapExpression?, subreportParameter*, (connectionExpression | dataSourceExpression)?, subreportExpression?)

<Subreport>

isUsingCache

是否缓冲子报表

1

(true | false) "true"

<Subreport>

<parametersMapExpression>

子报表参数变量

0或1

#PCDATA

<Subreport>

<subreportParameter>

子报表参数

0或者多次

(subreportParameterExpression?)

<subreportParameter>

name

子报表参数名称

必须

NMTOKEN

<subreportParameter>

<subreportParameterExpression>

子报表参数值

0或1

#PCDATA

<Subreport>

<connectionExpression>

子报表连接池值

0或1

#PCDATA

<Subreport>

<dataSourceExpression>

子报表数据源值

0或1

#PCDATA

<Subreport>

<subreportExpression>

子报表的位置

0或1

#PCDATA

<subreportExpression>

class

子报表位置类型(URL地址或者子报表名称)

1

(java.lang.String | java.io.File | java.net.URL | java.io.InputStream | dori.jasper.engine.JasperReport) "java.lang.String"

<band>

<elementGroup>

元素组

0或多次

(line | rectangle | ellipse | image | staticText | textField | subreport | elementGroup)*

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

作者:李建伟

本文地址:http://com.8s8s.com/it/it14317.htm