| 元素名称 属性名称 | 含义 | 元素出现次数 | 取值类型 |
根元素 | 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)* |
| | | | |
| | | | |
| | | | |