birt报表修改表格宽度的学习总结

合集下载

birt报表参数

birt报表参数

birt报表参数Birt报表参数是一种用于在Birt报表中传递数据和控制报表生成的方式。

通过使用Birt报表参数,用户可以在生成报表时输入参数值,从而实现对报表内容和显示方式的灵活控制。

本文将介绍Birt 报表参数的使用方法和注意事项。

Birt报表参数可以用于多种用途,比如用于过滤数据、控制报表显示方式或格式、动态生成报表标题等。

在使用Birt报表参数时,首先需要在报表设计中定义参数。

参数可以有多种类型,比如字符串、数字、日期等,具体类型根据需求而定。

定义参数时,可以设置参数的名称、默认值、是否可为空等属性。

在报表设计中使用参数时,可以通过参数名称引用参数的值。

在SQL查询中,可以使用参数名称作为查询条件,从而实现数据过滤。

在报表模板中,可以使用参数名称作为文本框、表格、图表等组件的属性值,从而实现动态显示和控制。

使用Birt报表参数时需要注意以下几点。

首先,确保参数的名称在整个报表中唯一,避免参数名称冲突。

其次,参数的默认值应该合理设置,以便在用户不输入参数值时有一个合理的默认行为。

另外,参数的类型和数据格式要与使用场景相匹配,避免出现数据类型不匹配或格式错误的问题。

在使用Birt报表参数时,可以通过给参数赋值的方式传递参数值。

参数值可以通过多种方式传递,比如URL参数、JavaScript脚本、数据集字段等。

在使用URL参数传递参数值时,可以通过在URL中添加参数名和参数值的方式实现。

需要注意的是,URL参数的值需要进行编码,以避免特殊字符引起的问题。

除了使用URL参数传递参数值外,还可以使用JavaScript脚本来动态设置参数值。

通过在报表模板中嵌入JavaScript脚本,可以根据需要计算参数值或从其他组件中获取参数值。

使用JavaScript脚本可以实现更加复杂和灵活的参数控制逻辑。

在报表生成时,Birt报表引擎会根据参数的定义和传递的参数值来生成报表。

报表生成过程中,Birt报表引擎会根据参数值对报表进行相应的数据过滤、显示控制或格式化处理。

Birt+报表参数的使用

Birt+报表参数的使用

目录Birt 报表参数的使用 (2)序言 (2)1 标量参数(Scalar parameter) (3)1.1 静态标量参数 (4)1.2 动态标量参数 (6)2 Cascading Parameter (10)3 Parameter Group (19)4 使用parameter实现nested tables (20)4.1 使用JDBC Data Sets (21)4.2 使用Scripted Data Sets (28)报表的beforeFactory方法 (29)CustomerSet的open方法 (31)CustomerSet的fetch方法 (32)OrderSet的open方法 (32)OrderSet的fetch方法 (33)5 源代码级的参数使用 (34)6 结束语 (40)Birt 报表参数的使用Birt 是一款非常流行的开源报表开发工具。

本文总结了 Birt 报表中参数机制,并结合实例详细地阐述了参数的各种使用方法,最后介绍了 Birt 报表的源代码级使用。

以期为 Birt 报表使用者提供一个有益的参考。

序言参数是 birt 提供的一种很重要的机制,在 birt 中,参数具有变量的作用,它为 birt 报表的生成提供了一种灵活强大的机制。

本文基于 Birt 2.1.2 讲述 Birt 报表中一些重要的用法以及 birt 源码级的参数使用机理,为报表开发者以及报表应用程序开发者提供一个参考。

本文的示例是基于 Birt RCP designer 2.1.2 开发的,在阅读本文前,最好有 eclipse 相关经验,并且已经能够使用 Birt 插件制作一些简单报表,并了解 Birt 报表的一些基本概念,比如 Data Source(数据源),Data Set(数据集)等。

基本报表制作过程可见developerworks 相关文章"BIRT:基于 Eclipse 的报表"。

birt报表参数

birt报表参数

birt报表参数BIRT报表参数是一种用于生成动态报表的工具,它可以根据用户的需求来动态地改变报表的内容和显示方式。

在本文中,我将介绍BIRT报表参数的一些基本概念和使用方法。

让我们来了解一下什么是BIRT报表参数。

BIRT报表参数是一种用于传递数据给报表的方式,它可以让用户在生成报表时输入一些参数值,从而影响报表的生成结果。

比如,我们可以通过报表参数来过滤数据、排序数据、设置报表的标题等等。

在BIRT中,报表参数的定义是在数据源上的,我们可以在数据源中定义一些参数,并在报表设计中使用这些参数。

当用户生成报表时,系统会提示用户输入参数值,并根据参数值来生成报表。

在使用BIRT报表参数时,首先需要在报表设计中定义参数。

定义参数的方式是在报表设计的参数视图中添加一个新的参数,并设置参数的名称、数据类型、默认值等属性。

参数的数据类型可以是字符串、整数、日期等,根据实际需求来设置。

定义好参数后,我们可以在报表设计的其他地方使用这个参数。

比如,我们可以将参数值作为过滤条件来过滤数据,或者将参数值作为标题的一部分来显示在报表上。

在使用BIRT报表参数时,我们可以通过多种方式来传递参数值。

一种常见的方式是通过URL传递参数值。

在URL中,我们可以使用参数名和参数值的键值对来传递参数值。

比如,我们可以使用以下URL来传递参数值:```http://localhost:8080/birtviewer/frameset?__report=report.rpt design&param1=value1&param2=value2```在上面的URL中,param1和param2是参数的名称,value1和value2是参数的值。

通过这种方式,我们可以在生成报表时动态地传递参数值。

除了通过URL传递参数值,我们还可以通过其他方式来传递参数值。

比如,我们可以在程序中使用API来设置参数值,或者在报表生成界面上手动输入参数值。

table 列宽度的规则

table 列宽度的规则

table 列宽度的规则表格是一种常见的数据展示方式,它可以清晰地呈现出各项数据之间的关系和差异。

而表格的列宽度则是决定表格布局和美观程度的重要因素。

本文将围绕表格列宽度的规则展开讨论,并探讨如何根据不同需求设置合适的列宽度。

一、表格列宽度的基本规则在设计表格时,我们需要考虑以下几点基本规则来设置合适的列宽度。

1. 标题列宽度:标题列是表格中用于描述各列内容的列,其宽度应根据标题文字的长度来确定。

一般而言,标题列的宽度应适中,能够容纳下标题文字,同时不会显得过于窄小或过于宽大。

2. 数据列宽度:数据列是表格中用于展示具体数据的列,其宽度应根据数据的长度和重要性来确定。

如果数据内容较长,可以适当增加数据列的宽度,以确保数据能够完整显示。

而对于重要的数据列,可以增加其宽度,使其更加突出。

3. 固定列宽度:在某些情况下,我们需要固定某些列的宽度,以确保表格整体布局的稳定性和美观性。

这些列通常是一些特定的标识列或重要的数据列,其宽度应根据实际需求来确定。

4. 自适应列宽度:除了固定列宽度外,我们还可以使用自适应列宽度的方式来设置表格的列宽度。

自适应列宽度可以根据表格内容的长度和总宽度来动态调整各列的宽度,以保证表格整体的均衡和美观。

二、根据需求设置合适的列宽度在实际应用中,我们需要根据表格的具体需求来设置合适的列宽度,以确保表格的信息传递和展示效果。

1. 文字类表格:对于文字类表格,我们可以根据文字长度来设置列宽度,以确保文字能够完整显示。

同时,可以根据文字的重要性和特殊性,适当增加其宽度,以突出其在表格中的地位。

2. 数字类表格:对于数字类表格,我们可以根据数字的大小和精度来设置列宽度。

一般而言,数字较大或精度较高的列可以适当增加其宽度,以确保数字能够完整显示,并保持表格整体的对齐和均衡。

3. 图片类表格:对于包含图片的表格,我们需要根据图片的尺寸和重要性来设置列宽度。

一般而言,图片较大或较重要的列可以适当增加其宽度,以确保图片能够完整显示,并保持表格整体的美观性。

解决Birt等报表工具制作报表的几个难题

解决Birt等报表工具制作报表的几个难题

解决Birt等报表工具制作报表的几个难题在本文中我们再继续讨论几个类似的制作难题,并把说明集中在如何编写集算器 SPL 脚本上,不再赘述如何在 Birt 中引入 SPL 的步骤了。

1. 组内跨行计算组内跨行计算是指在计算一行中某个计算列的值时,需要引用到组内其它行的数据来进行计算。

比如下面这个例子:库表 sample 有三个字段,其中 id 是分组字段。

需要设计一张分组表,使用id 分组,明细字段是v1,v2 以及计算列crossline, 其中crossline 的算法是本条记录 v1、v2 之和加上本组上一条记录的 v1、v2 之和。

示例源数据如下:最后要展现的报表结果如下图所示:编写集算器 SPL 代码如下:A1 连接数据库A2 查询数据库,同时多产生一列常数备用。

A3 按id 分组,并在每组数据中修改计算列crossline,最后合并,其中v1[-1]、v2[-1] 是集算器特有的定位上一行记录中字段的写法。

A4 关闭数据库A5 将 A2 中的计算结果数据集返回给报表工具2. 跨库数据源制作报表的数据往往来自于多种数据源,比如不同的物理数据库、文本文件、Excel 文件等,这些数据在报表中往往还需要相互关联进行运算。

报表工具本身能实现从多数据源取数,但进行关联运算会有一定的困难,或者运算性能非常差。

而由开发者自己编程去做关联运算,工作量一般又会非常大。

而集算器 SPL 恰恰能在这一点帮上大忙。

下面这个例子中,订单表 orders 和订单明细表 orderDetail 数据分别来自两个不同的数据库,二者之间要做join 运算。

两表数据如下:最后想要展现的报表结果如下:编写集算器 SPL 代码如下:A1 连接数据库 1A2 连接数据库 2A3 查询订单表数据A4 查询订单明细表数据A5A6 关闭数据库连接A7 以 A3 的 orderID 和 A4 的 orderID 为主键进行 left join,连接后的结果集有两个字段,第一个字段是 A3 的记录,第二个字段是A4 的记录。

birt报表修改表格宽度的学习总结

birt报表修改表格宽度的学习总结

修改birt报表的表格宽度的学习总结一、原因Birt做的报表表格宽度是根据表格里面的内容自动显示宽度,每列的宽度是与表头(header的label)或者表body(detail的data)里面内容最多的一格的宽度一致,有时候表头里面文字很长,但是该表头的那一列表body里面的内容却很少,就照成了除表头以外,body下面每一格特别的空,这样的列若是比较多的话表格就很不好看,而且浪费空间,以我碰到的问题为例,如图:这个报表分为两部分,前一部分是直接用报表设计器设计的,表头是居顶的,后一部分是用代码加上去的,表头居中,而且他的内容全是数字,相对来说比较少,感觉空的地方很多,看上去不美观。

二、试着调试由于网上资料比较少,我自己调试时都是自己摸索的,可能有些地方不是很简洁,但是效果还是出来了。

(1)、首先调整直接用报表设计器设计的报表,可以有两种方法调试,1.第一种是手工代码调试:xml resource先调整表头,所以在<header>下面的你想设计宽高的那一列下面,添加属性,根据里面的内容设计宽和高,这里我设计的是宽1.5cm,高0.7cm,注意是在label下面添加设置语句,:<property name="height">0.7cm</property><property name="width">1.5cm</property>如图:点击table,然后选中你想要调整的那一行或者那一列,打开属性编辑器(birt 高级版本可以右击哪一行或者列直接打开,低版本的需要点击eclipse左下角的下面的属性版本)想要修改那一行或者列的宽或者高时,先以调整列宽为例,选中一列,在属里面,调整行高度跟列宽度类似,这里就不写出来了。

(2)调整由代码插入进来的行宽列高这个就比较简单,在插入列以及header下直接写代码MyLable.setWidth(“1.5”);myLabel.setHeight("0.7cm");myDataItem2.setHeight("0.3cm");myDataItem2.setWidth("1.5cm");myDataItem2以及myLabel是我自己的对象,大家改的时候用自己的对象调用方法。

关于报表展示宽度问题

关于报表展示宽度问题

一、Auto Layout模式(自适应布局)
在制作报表文件时,选择报表窗体,在综合设置中(General)选项中选择
General —Layout Preference 中选择Auto Layout模式,可根据列表展示的长度字段扩展。

如下图:
设计器:
展示项已经超出刻度尺的宽度。

修改宽度按照列表展示宽度自适应
展示部分:
列表中可以看到全部的展示信息。

二、Fixed Layout(固定布局)
在制作报表文件时,选择报表窗体,在综合设置中(General)选项中选择
General —Layout Preference 中选择Fixed Layout模式,可根据列表展示的长度字段扩展。

如下图:
设计器:
展示项已经超出刻度尺的宽度。

修改宽度按照列表展示固定宽度
展示部分:
列表中只可看到设计器中标尺刻度的最大宽度的展示项。

birt报表使用简要说明

birt报表使用简要说明

Birt报表使用指南‎1Birt的安装方‎法‎把birt整合‎到了‎M yeclip‎s e6‎.5中,(e‎c lip‎s e的官方‎网站上提供‎有一个b‎i rt-re‎p or‎t-desig‎n e‎r-all-in‎-‎o ne-2_2_2‎.zip,你直接解压‎缩这个就可以了,就‎免‎去了birt与M‎y e‎c lipse6‎.5的‎整合)。

如‎果要把b‎i rt安装‎到Myec‎l ips‎e6.5中,‎要注意‎一些事情1.1ec‎l i‎p se的版本就‎是‎说你的eclips‎e版本要和适当的bi‎r t版本配合,当前‎b‎i rt的最新稳定‎版是‎b irt2.3‎。

如‎果使用的是e‎c lip‎s e3.3‎版本,你应‎该用bi‎r t-rep‎o rt‎-framew‎o r‎k-2_2_2.‎z‎i p,如果使用的‎是eclipse3.‎4,你应该用bir‎t‎-report-‎f r‎a mework‎-2_‎3_0.zi‎p版本不‎一致会出一‎些问题。

1.2‎在Mye‎c lipse‎6.5‎中装birt。

‎M‎y Eclipse‎6‎.5自带的是ecl‎i pse3.3,所以‎只能下载birt-‎r‎e port-fr‎a m‎e work-2‎_2_‎2.zip ‎(下载地‎址:htt‎p://d‎o wnl‎o ad.ec‎l ip‎s /‎b i‎r t/downl‎o‎a ds/index‎2.2.2.php)‎而birt-re‎p‎o rt-fram‎e w‎o rk-2_3‎_0.‎z ip是针对‎e cli‎p se3.‎4的。

把‎下载下来‎的birt-‎r ep‎o rt-fra‎m e‎w ork-2_2‎_‎2.zip包解压,‎解压后的featur‎e s文件夹下的所有‎文‎件拷贝到MyEc‎l i‎p se6.5安‎装目录‎下的..\m‎y ecl‎i pse\‎e clip‎s e\f‎e ature‎s 下,‎解压后的plu‎g i‎n s文件夹下的所‎有‎文件拷贝到..\m‎y eclipse\e‎c lipse\pl‎u‎g ins下。

Birt_报表参数的使用配置说明

Birt_报表参数的使用配置说明

Birt 报表参数的使用Birt 是一款非常流行的开源报表开发工具。

本文总结了 Birt 报表中参数机制,并结合实例详细地阐述了参数的各种使用方法,最后介绍了 Birt 报表的源代码级使用。

以期为 Birt 报表使用者提供一个有益的参考。

序言参数是 birt 提供的一种很重要的机制,在 birt 中,参数具有变量的作用,它为 birt 报表的生成提供了一种灵活强大的机制。

本文基于 Birt 2.1.2 讲述 Birt 报表中一些重要的用法以及 birt 源码级的参数使用机理,为报表开发者以及报表应用程序开发者提供一个参考。

本文的示例是基于 Birt RCP designer 2.1.2 开发的,在阅读本文前,最好有 eclipse 相关经验,并且已经能够使用 Birt 插件制作一些简单报表,并了解 Birt 报表的一些基本概念,比如 Data Source(数据源),Data Set(数据集)等。

基本报表制作过程可见 developerworks 相关文章"BIRT:基于 Eclipse 的报表"。

本文示例使用 Birt 自带的 Sample 数据源,用到的数据基于图 1 所示的实体关系模型。

从这个模型中可以看出,文中示例用到三张数据库表分别为 customers,orders 和 orderdetails。

其中 customers 表的customernumber 字段作为外键出现在 orders 表中,而 orders 表的 ordernumber 字段做为外键出现在orderdetails 表中。

图 1. 实体关系模型1 标量参数(Scalar parameter)在使用 BIRT 参数的时候,首先要了解 BIRT 分为报表参数和数据集参数。

报表参数定义于整个报表内,而数据集参数定义于某个数据集(Data Set)中。

数据集参数使用的时候通常需要链接到某个报表参数或者利用绑定表(binding tab)和一个嵌套表中的某个数据元素绑定。

birt 工作总结

birt 工作总结

Birt应用总结Birt是一套集成在Eclipse中的开源的报表设计工具,它自带有完整的一套工具,可以方便快速的设计出一般性的常用报表。

在我应用的一个月内,些许摸索,些许尝试之后,终于成功集成到项目中,下面我就自己的体会写下总结。

1.开发环境的搭建开始时用的官方的all-in-one,这是在windows下最快捷的birt方式,包含你需要的所有设计birt 的文件,还有一个完整的Eclipse SDK,但由于不支持web 项目,所以放弃了。

后来在原项目基础上,将all-in-one所属的birt相关的内容添加到原项目中对应的eclipse(Kepler)。

myeclipse下自带birt,但版本较低,不支持crosstable。

2.birt版本选择eclipse版本、birt版本及发布到tomcat下的birt-runtime版本配合,版本不一致会出一些兼容性的问题,如发布到tomcat下出现无法显示的问题。

使用前,最好网上查一下版本对应情况。

3.实现数据钻通birt允许用户通过单击行、节点等图表元素从一个报告转到另一个报告。

这样就可以通过一个选择的元素把两个报告链接起来。

通过设置Hyperlink传递参数实现数据钻取功能。

4.可见性切换用户可以通过选择图例来隐藏或显示一系列数据。

通过设置所选元素的visible 属性,通过写expression来动态控制。

5.数据集的动态修改通过在相应数据集的Script的beforeOpen方法中修改sql语句实现数据集的动态改变。

6.去除报表下面的日期方法1:点击设计器主页 - 点击属性,- 取消“页眉”“页脚”。

即取消显示页眉和页脚。

方法2:在xml里设置:<page-setup><simple-master-page name="Simple MasterPage" id="2"><property name="type">a4</property><property name="leftMargin">10px</property><property name="rightMargin">10px</property><property name="showHeaderOnFirst">false</property><property name="showFooterOnLast">false</property> //是否显示页脚 </simple-master-page></page-setup>7.隐藏与显示报表工具栏,导航栏方法1;调用run方法代替frameset方法方法2:webcontent\birt\pages\layout\FramesetFragment.jsp里找到下面这句:Mask.setBaseElements( new Array( birtToolbar.__instance,navigationBar.__instance, birtReportDocument.__instance) ),在里只要new Array去除相应的就行了。

BIRT报表中文学习手册

BIRT报表中文学习手册

一、去掉Birt表格下自动生成的日期时间在报表下点击Xml Source标签,打开xml,找到<page-setup><simple-master-page name="Simple MasterPage" id="2"><page-footer><text id="3"><property name="contentType">html</property><text-property name="content"><![CDATA[<value-of>new Date()</value-of>]]></text-property></text></page-footer></simple-master-page></page-setup>把<text id="3"><property name="contentType">html</property><text-property name="content"><![CDATA[<value-of>new Date()</value-of>]]></text-property></text>这几行去掉即可。

二、Birt表格隔行换颜色1、鼠标旋停在表格上,选择Row Detail一行;2、选择script标签页,打开birt的脚本编辑窗口;3、从下拉列表中选择OnCreate,在下面加入Javascript脚本如下:if(row.__rownum % 2 == 0){this.getStyle().backgroundColor = "#E9EAEB";}else{this.getStyle().backgroundColor = "#FFFFFF";}4、保存三、Birt表格分页下面是我从网上找的方法,我试了一下不行,后来我在table里设置了Page break interval 就可以了,但是预览的时候不能看到分页1、鼠标旋停在表格上,选择Row Detail一行;2、选择script标签页,打开birt的脚本编辑窗口;3、从下拉列表中选择onPrepare,在下面加入Javascript脚本如下:var count = 0;4、从下拉列表中选择OnCreate,在下面加入Javascript脚本如下:count++;if(count % 10 == 0){style.pageBreakAfter = "always";}5、保存,使用Web Reviewer进行预览,数据可以进行分页显示了。

birt报表参数详解

birt报表参数详解

在使用birt报表的时候感觉页面的BIRT Report Viewer头标题没有用,想去掉在网上一查原来有详细的参数设置,看来birt的功能还是很强大啊。

现在转帖如下:BIRT作为一款功能强大的开源报表工具,其版本的升级更新速度也非常快,从1.0到2.0,一直到最新的2.2.1版本,无论从功能上还是性能上都得到了极大的提高和扩充。

BIRT也提供了一个标准的J2EE实现组件,可以发布到支持J2EE应用的web server服务器上,可以对生成的报表进行预览等操作。

在大家使用BIRT Viewer的时候,可能会对它日益纷繁的参数设置如云里雾里,在网上论坛里也有很多人碰到这样哪样的问题,同时官方的文档也不细致不全。

所以我就对这些参数进行了一个简单系统的总结,希望能对大家的BIRT开发有所帮助。

这些参数以2.2.1版本为准,请大家特别注意。

1. Servlet模式说明查看BIRT Viewer自带的web.xml文件,可以看到有以下几个pattern:frameset ---- 采用Ajax框架,可以显示工具条,导航条和TOC面板,实现复杂的操作,如分页处理,导出数据,导出报表,打印等等。

该模式下会自动生成report document文件(预览report design文件)到特定的目录(用户可以用参数指定,也可以定义在web.xml里)。

采用Ajax,速度较慢。

run ---- 也采用Ajax框架,但不实现frameset的复杂功能,不会生成临时的report document 文件(预览report design文件),也不支持分页,这个主要是应用在BIRT Designer里的preview tab里,可以支持cancel操作,其它不怎么常用。

采用Ajax,速度较慢。

preview --- 没有用到Ajax框架,直接调用底层Engine API对报表进行render,把生成的报表内容直接输出到浏览器。

增值税计算公式第1期第1期

增值税计算公式第1期第1期

增值税计算公式从增值税所采用的计算方法看,从理论上讲,可分为两种方法:一、直接计算法直接计算法,是指直接求出商品或劳务的增值额,然后再乘以规定税率,计算出应纳的增值税税额。

计算公式为:应纳增值税=增值额×税率在直接计算法中又分为“加法”和“减法”①加法,是指将构成增值额的各要素如工资、租金、利息、利润及其它增值项目的金额加起来,求出增值额,然后再乘以增值税税率,计算出应纳的增值税税额。

公式:应纳增值税=(工资+利息+租金+利润+其它增值项目)×税率②减法,又称扣额法。

是指从销售额全值中扣除非增值税项目的金额,如外购的原材料、燃料、动力等扣除项目的金额,求出增值额,然后乘以增值税税率,计算出应纳增值税税额。

公式:应纳增值税=(销售额-非增值项目金额)×税率二、间接计算法间接计算法,又称税款扣税法。

是指以销售额全值乘以增值税税率求出产品的整体税额,然后从中扣除外购非增值项目已经缴纳的税额,以这个税差作为应纳的增值税税额,计算公式为:应纳增值税=销售额×税率-非增值项目的已纳税款。

另一种说法:“销售税金及附加按增值税的14%计”是怎么计算的?另一种说法:主营业务税金及附加”属于损益类会计科目,企业按规定计算出应交的消费税;营业税;资源税;房地产开发企业所涉及的土地增值税;城市维护建设税;教育费附加;地方教育附加均通过该会计科目核算。

另一种说法:销售税金及附加是否包括增值税?答:不包括!增值税属于价外税,不属于消售税金范畴。

增值税计算公式从增值税所采用的计算方法看,从理论上讲,可分为两种方法:一、直接计算法直接计算法,是指直接求出商品或劳务的增值额,然后再乘以规定税率,计算出应纳的增值税税额。

计算公式为:应纳增值税=增值额×税率在直接计算法中又分为“加法”和“减法”①加法,是指将构成增值额的各要素如工资、租金、利息、利润及其它增值项目的金额加起来,求出增值额,然后再乘以增值税税率,计算出应纳的增值税税额。

BIRT参数设置详解

BIRT参数设置详解

在使用birt报表的时候感觉页面的BIRT Report Viewer头标题没有用,想去掉在网上一查原来有详细的参数设置,看来birt的功能还是很强大啊。

现在转帖如下:BIRT作为一款功能强大的开源报表工具,其版本的升级更新速度也非常快,从1.0到2.0,一直到最新的2.2.1版本,无论从功能上还是性能上都得到了极大的提高和扩充。

BIRT也提供了一个标准的J2EE实现组件,可以发布到支持J2EE应用的web server服务器上,可以对生成的报表进行预览等操作。

在大家使用BIRT Viewer的时候,可能会对它日益纷繁的参数设置如云里雾里,在网上论坛里也有很多人碰到这样哪样的问题,同时官方的文档也不细致不全。

所以我就对这些参数进行了一个简单系统的总结,希望能对大家的BIRT开发有所帮助。

这些参数以2.2.1版本为准,请大家特别注意。

1.Servlet模式说明查看BIRT Viewer自带的web.xml文件,可以看到有以下几个pattern:frameset----采用Ajax框架,可以显示工具条,导航条和TOC面板,实现复杂的操作,如分页处理,导出数据,导出报表,打印等等。

该模式下会自动生成report document文件(预览report design文件)到特定的目录(用户可以用参数指定,也可以定义在web.xml里)。

采用Ajax,速度较慢。

run----也采用Ajax框架,但不实现frameset的复杂功能,不会生成临时的report document 文件(预览report design文件),也不支持分页,这个主要是应用在BIRT Designer里的preview tab里,可以支持cancel操作,其它不怎么常用。

采用Ajax,速度较慢。

preview---没有用到Ajax框架,直接调用底层Engine API对报表进行render,把生成的报表内容直接输出到浏览器。

这种模式和run模式调用的是相同的Engine API,唯一区别在于run采用Ajax获取报表内容,而preview直接输出到浏览器。

Birt学习笔记——birt开发过程中常见的问题(转)

Birt学习笔记——birt开发过程中常见的问题(转)

2011-11-02 00:06:42| 分类:技术 |字号订阅这是我自己在学birt的时候做的记录,版本是birt2.5.2,文字功底有限,表达的很不严谨,在这里仅供大家参孝学习:如果在这里找到有用的信息,请留下您的痕迹,如果对相同的问题有更好的解决方法,欢迎留言提示!>;>;1.说明,访问数据列有三种方式,如上面的row.id,或者可以使用row[";id";],或者可以使用row[1],得到的都是数据列id.>;>;2.在标题title,x轴,y轴上相应位置上设置字体为:Simsun(Founder Extended)(Simsun 即为宋体),乱码问题便可得到解决。

>;>;3.分组chart乱码,解决方法:Advanced->;Font->;Font family->;";Arail Unicode MS";如果没有选择项,可直接写上去>;>;4.要得到多系列的柱形图主要在于数据,要这样的数据才能形成多系列的柱形图:name-数目-年份:A 23 2007A 22 2006B 15 2007B 19 2006C 30 2007C 41 2006这样x轴设置成name,y轴设置成数目,分组设置成年份>;>;5.怎样在柱形图上显示数字?怎样使数字显示在柱形图的顶端?方法:在Format Chart选项下,选中Series->;Value(Y)Series->;把下方的Show Series Labels选项按钮选中即可要想使数字显示在柱形图的顶端,则还要点击同一页面的Labels按钮,然后在Position下拉框下选择Outside就行了>;>;6.why not 说明:为什么没有使用 birt report viewerBIRT Report Viewer 貌似做得很周到,提供如浏览,打印,export to CSV ,过滤参数的传入等一系列的快速操作.然而细心思考过,这个viewer还是存在不少问题:如不适用的报表传入参数方式(无输入验证,无日期控件);代码复杂,可扩展性差...... 发现不少功能形同虚设,所以决心抛弃.为什么不在.rptdesign里写sql往往实际项目的业务总是复杂的,不希望将复杂的逻辑通过几个简单的参数传入拼凑sql来实现,再说这样调试sql也是一件麻烦的事情,也不利于SQL管理所以我们提倡将查询的商业逻辑放回java Manager类,然后designer负责设计数据如何排列。

table 中定义 表内 线段宽度

table 中定义 表内 线段宽度

表内线段宽度指的是表格中各个单元格之间的分隔线的宽度。

在设计和制作表格时,合适的表内线段宽度可以使表格整体美观、清晰,并且有利于读者快速、准确地获取信息。

下面,我们将从不同的角度探讨表内线段宽度的定义、作用和设计原则。

一、表内线段宽度的定义表内线段宽度是指表格中分隔每个单元格的线段的宽度。

这些线段可以是水平方向的,也可以是垂直方向的。

在不同的设计中,表内线段宽度可以有不同的设置,通常以像素为单位来定义。

二、表内线段宽度的作用1. 提高表格整体美观性合适的表内线段宽度可以使表格看起来更加整洁、方正,增加美观性,提升用户体验。

2. 帮助用户快速定位信息适当的表内线段宽度可以使表格内容清晰可见,有利于读者快速、准确地定位所需信息。

3. 显示层次结构通过调整不同的表内线段宽度,可以将表格分为不同的层次结构,突出重点内容,提高阅读效果。

三、表内线段宽度的设计原则1. 保持统一在整个表格中,表内线段宽度应该保持统一,以保持整体的协调性和一致性。

2. 根据内容进行调整对于需要突出显示的内容,可以适当增加表内线段宽度,从而突出重点,提高阅读效果。

3. 注意与文字间的配合表内线段宽度的设计也需要考虑与表格中的文字内容的配合,避免造成视觉上的混乱和干扰。

4. 避免过多线段过多的表内线段会使表格看起来杂乱无章,增加阅读困难,因此在设计中应避免过多的线段出现。

四、表内线段宽度的调整方法1. 使用表格编辑软件大部分表格编辑软件都提供了对表内线段宽度进行调整的功能,用户可以通过简单的操作来实现表内线段宽度的定制。

2. 使用CSS样式对于网页中的表格,可以通过CSS样式来调整表内线段宽度,实现个性化的设计效果。

3. 手动调整在一些情况下,用户也可以通过手动调整表格的线段宽度来实现所需的效果。

五、结语表内线段宽度的设计对于表格的美观性和实用性起着重要的作用,因此在制作表格时,应该合理、精准地进行设置。

希望以上内容能够帮助读者更好地了解表内线段宽度的定义、作用和设计原则,从而提高表格设计的效率和质量。

Birt 开发之页面部署宽度问题

Birt  开发之页面部署宽度问题

Birt 开发之页面部署:birt页面有两种部署方式1:auto layout(自动布局) 2:fixed layout (固定布局:默认是US letter);如图:在工作界面选择[布局],打开[属性编辑器],在[常规]菜单属性详细内容最下方:页面布局首选项(默认是fixed layout);图1一:auto layout(自动布局)(推荐)主要是用于对不同尺寸屏幕进行应用适配工作;如果不设定页面的尺寸,则会根据浏览器的可显示区域来填充,当使用大分辨率的情况,能铺满全屏,但一般也有最小范围,会一直缩小到只有一个文字的宽度为止;[注]:[ master page ]类型自定义宽高对auto layout 没有影响二:fixed layout(固定布局)[注] fixed layout会根据设定的宽高,对单元格宽进行等分;是指指定了页面的固定尺寸,即无论分辨率多少,展示页面的尺寸是不会改变的,当可显示区域缩小到小于所设定的页面尺寸时,就会出现横向滚动条;且当要展示的数据过多时,则会出现部分数据不能完全显示的问题;针对内容不能完全显示这一问题,目前解决方式:选择[ master page ]即主页,打开属性编辑器,可以看到常规属性中默认的类型是US letter,有固定的宽和高,这是可以选择类型为custom(自定义),并根据需要修改相应的宽和高;[ 附1 ] :此[ master page ] 属性中可以对页眉和页脚进行设置,如,若不需要显示birt 页面页脚默认时间的显示,则在[页眉/页脚] 选项中不勾选页脚选项,也可以在[ 高级]中调整对齐方式。

如图3图3[ 总] :在需要调整birt页面表格宽度时,1.设置为auto layout(推荐),再根据要求,调整显示的比例;2.设置为fixed layout ,在[master page]中自定义宽高;3.直接选中所要调整的列,设定宽度(由于交叉表常规属性总没有宽度,只能给列设定宽度,网格和表是可以设定整体宽度的);所以推荐在birt 页面布局时选用auto layout,最好将设计的元素内容统一放到一个网格中,在进行分类设计;[ 附]:对于数字过多不能自动换行,目前查的资料多数是要在需要换行的数据进行脚本控制换行:选中要设置换行的单元格,打开[属性编辑器]>advanced(高级)>onrender(实施时)或切换到脚本中,选onrender :输入换行脚本:if(this.getValue()!=null){var v = this.getValue();v = v.toString();var temp="";var all="";var flag=0;for(var i=1;i<=v.length();i++){if(i%8 == 0 ){temp += v.substring(flag,i-1)+"\n";flag=i-1;}else{all = temp+ v.substring(flag,v.length());}}this.setDisplayValue(all);}(其中"i%12"中的12是表明每12个字符换一行。

Birt使用经验谈

Birt使用经验谈

Birt使用经验谈Chart图Michael 2006-04-11前段时间基本上写的基本上关于一般报表的,在一些网上朋友的要求下,本文档就介绍一下关于chart图吧。

这段时间也比较忙,也没时间去深入。

在那个地方也只是简单的介绍一下chart的设计步骤。

1.环境:在第一篇文档中差不多描述了,在此就不用多说了。

2.chart报表的简单例子步骤如下:●新建一个空白报表,名为:chart_sample.rptdesign●新建一个〔jdbc〕数据源.●新建一个数据集,sql脚本如下:(SELECTSUM(se.AMOUNT)AS AMOUNT,DATE_FORMAT(se.OPER_DATE,'%Y-%m')as OPER_DATE,se.IN_OR_OUT as TYPE FROM mms_storage_entryse,mms_storages WHERE s.ID=se.STORAGE_ID AND se.IN_OR_OUT='2'AND DATE_FORMAT(se.OPER_DATE,'%Y-%m')>=DATE_FORMAT('2005-01-01','%Y-%m')GROUPBY DATE_FORMAT(se.OPER_DATE,'%Y-%m'))UNION(SELECTSUM(se.AMOUNT)AS AMOUNT,DATE_FORMAT(se.OPER_DATE,'%Y-%m')as OPER_DATE,se.IN_OR_OUT as TYPE FROM mms_storage_entryse,mms_storages WHERE s.ID=se.STORAGE_ID AND se.IN_OR_OUT='1'AND DATE_FORMAT(se.OPER_DATE,'%Y-%m')>=DATE_FORMAT('2005-01-01','%Y-%m')GROUPBY DATE_FORMAT(se.OPER_DATE,'%Y-%m'))那个脚本是我在一个项目中用的,改了一些数据,就载过来用了:〕。

birt技巧

birt技巧

Birt使用技巧eclipseExcel20090512birt分组小计和增加序列号2009-05-12 18:23一、分组小计:Palette下面 Quick Tools里面有个Aggregation把这个拖到表里面这个是计算用的,你可以选择COUNT SUMAggregate On Table 或者GroupGroup里面可以拖出来看到Group名二、如何增加序号1. 点击报表的空白处,然后到script页,选择initialize,输入var num=02. 回到报表设计页,在组上加入一个data,在这个data的expression中,输入:num++; num3. 保存报表即可。

1. 线图图例移动方法线图图例默认的样式是在图的右边,要将其移动到图的下方,使用的操作如下: 在birt视图下,双击图片选择FormatChart ,点击左侧legend, 点击layout按钮,出现参数选择框:Orientation选择Vertical;Position 选择Below ; right.◊stretch 选择Horizontal ; Direction 选择 Left2. 线图取消数字显示的方法点击左侧Series 下的Value (Y) series 取消 show series Labels复选框◊Format chart3. 线图节点,鼠标滑过,显示提示的设置Values文本框中的 value series name◊Format chart 放到value date 上方, 每条线都设置一下.4. 双坐标Y轴时节点,节点形状的改变series◊Format chart 点击markers 按钮◊ value(Y) series ◊5. 百分比显示的数据类型设置birt中如果要显示百分比,则在script dateSource中必须设置相关的列的数据类型为Float ,不能为String ,否则不显示。

table表格百分比

table表格百分比

竭诚为您提供优质文档/双击可除table表格百分比篇一:关于html中table表格tr,td的高度和宽度关于html中table表格tr,td的高度和宽度做网页的时候精到会遇到各种各样的问题,经常遇到的一个就是会碰到表格宽度对不齐的问题。

首先,来分析一下这三个标签中height和width的区别:1、table中的width和height设置及其作用:table中设置的height其实是设置个最小值,也就是当表格中的内容或者行高总值超过这个设置值时,会自动延长表格的height值,当表格中的内容或者行高没有达到这个值时,会自动扩大到这个值。

table中设置的width值一般为表格宽度的最大值,不能改变,即使内部的内容宽度超过也不能改变。

(这个内部内容如果是图片的话是可以改变表格宽度的。

)2、tr标签中width和height设置及其作用:tr标签里面的width设置不起任何作用,因为从第一点可以看出,表格的width是不能改变的,tr标签当然就不起作用了。

所以在tr中只有讨论height设置的可能了,tr中的height设置和几个tr之间的设置有关。

当几个tr都设置了height的具体数值时,各个tr的height按照设置的值的比例来分配总的height值,注意这里说的是总的height值。

当几个tr都没有设置height具体值时,平均分配总的height值。

当有的tr设置了具体的数值,有的没有设置具体的数值为默认时,先保证各个tr的基本需要,剩下的再满足设置了具体值的tr,之后再全部给没有设置具体值的tr。

最后一种情况还要考虑总的宽度不够tr总的设置值的情况,不够的话要满足tr的基本需要,这里会自动延长表格的height 的。

然后再考虑设置了height的tr,最后考虑没有设置height的tr。

3、td标签中width和height设置及其作用:td标签里面的width和height都是起作用的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

修改birt报表的表格宽度的学习总结
一、原因
Birt做的报表表格宽度是根据表格里面的内容自动显示宽度,每列的宽度是与表头(header的label)或者表body(detail的data)里面内容最多的一格的宽度一致,有时候表头里面文字很长,但是该表头的那一列表body里面的内容却很少,就照成了除表头以外,body下面每一格特别的空,这样的列若是比较多的话表格就很不好看,而且浪费空间,以我碰到的问题为例,如图:
这个报表分为两部分,前一部分是直接用报表设计器设计的,表头是居顶的,后一部分是用代码加上去的,表头居中,而且他的内容全是数字,相对来说比较少,感觉空的地方很多,看上去不美观。

二、试着调试
由于网上资料比较少,我自己调试时都是自己摸索的,可能有些地方不是很简洁,但是效果还是出来了。

(1)、首先调整直接用报表设计器设计的报表,可以有两种方法调试,
1.第一种是手工代码调试:xml resource
先调整表头,所以在<header>下面的你想设计宽高的那一列下面,添加属性,根据里面的内容设计宽和高,这里我设计的是宽1.5cm,高0.7cm,注意是在label下面添加设置语句,:
<property name="height">0.7cm</property>
<property name="width">1.5cm</property>
如图:
点击table,然后选中你想要调整的那一行或者那一列,打开属性编辑器(birt 高级版本可以右击哪一行或者列直接打开,低版本的需要点击eclipse左下角的
下面的属性版本

想要修改那一行或者列的宽或者高时,先以调整列宽为例,选中一列,在属
里面,
调整行高度跟列宽度类似,这里就不写出来了。

(2)调整由代码插入进来的行宽列高
这个就比较简单,在插入列以及header下直接写代码
MyLable.setWidth(“1.5”);
myLabel.setHeight("0.7cm");
myDataItem2.setHeight("0.3cm");
myDataItem2.setWidth("1.5cm");
myDataItem2以及myLabel是我自己的对象,大家改的时候用自己的对象调用方法。

以上就是我修改birt报表的学习总结,由于是初学者,只能用这种笨方法,希望对大家有帮助。

相关文档
最新文档