Archive for 07月, 2009

如何查看快逸报表函数说明

07.31.2009 by fengzhou - 0 Comment - 0
Posted in java报表相关

很多快逸用户问:到哪里查看快逸报表的函数说明?本文来解答一下这个问题。

快逸报表有很多功能强大的函数,打开快逸设计器后就可以很方便地查看这些函数的说明,本文介绍两个途径来查看,下面对他们一一说明。

方法一:通过文档查看函数说明
打开设计器—-帮助—-使用手册—-用户手册(基础):6.4 函数
函数分下面7个小节介绍,用户可以通过不同的功能分类来了解各个函数。
• 6.4.1 数据集函数
• 6.4.2 单元格函数
• 6.4.3 时间日期函数
• 6.4.4 数学函数
• 6.4.5 字符串函数
• 6.4.6 数据类型转换
• 6.4.7 数据类型判断

方法二:设计器中查看 函数说明
这个方法对于 快逸报表开发人员更加的方便,可以在设计报表的时候随时查看每个函数的用法和例子。
设计器中查看函数说明又可以分两个路径来实现。
路径一:
设计器编辑报表状态下,随便选择一个单元格,右键点击,下来列表中可以看到:表达式,点击表达式可以看到下面的编辑框:

快逸报表表达式编辑框

图1

快逸报表表达式编辑框

图2
上图中的红色框中就是函数区,排序是按字母顺序,开发人员输入函数的首字母就可以查到想要的函数,分类是把函数按功能分类,可以按功能查找,然后点击函数帮助就可以看到详细的函数说明,函数说明见下图:

快逸报表函数说明

图3
路径二:
编辑报表状态下,选择一个单元格,在右面的属性栏中可以看到表达式一列,任意点击下图红色框中的任何个表达式编辑框也可以进入图2的表达式编辑对话框,见下图:

快逸报表函数说明

图4

这样我们就可以很方便的查看函数说明了,相信会很大程度的方便大家的使用。

引自:报表工具知识库
原文链接: 如何查看快逸报表函数说明

集群时的缓存同步

07.30.2009 by fengzhou - 0 Comment - 0
Posted in java报表相关

随着对服务器集群的负载均衡能力要求越来越高,很多服务器推出了session同步的功能。即同一个客户端在同一个访问周期里,可能第一次访问A机器,第二次跳转到B机器访问,此时在访问A机器过程中产生的session里的内容可以被同步复制到B机器上。这个功能使得负载均衡更加合理,但是也带来了一系列问题。

服务器的集群只解决了服务器自己的session同步问题,而作为报表工具,润乾报表还提供了先进的参数缓存和报表缓存。那么,当客户端第一次访问报表服务器的时候,A机器计算了报表并在A机器作了缓存,而当客户端第二次访问时,例如此时跳转到B机器,则在B机器上找不到报表的缓存,也找不到参数的缓存,于是只好报错或者重新计算,一定程度上浪费了服务器的资源,降低了服务器的性能。

润乾报表专门针对此类情形,提供了集群服务器之间通讯的能力–集群时缓存同步,彻底解决了负载均衡时服务器之间跳转访问带来的缓存同步的问题。

其原理是:

客户端第一次访问报表服务器,A机器计算了报表并在A机器作了缓存,当客户端第二次访问时,例如此时跳转到B机器,B机器根据缓存id判断出是A机器做的缓存,于是B机器向A机器发送缓存请求,A机器读取缓存并把缓存结果发送给B机器,B机器再把结果返回给客户端。

实现步骤:

1、 在reportConfig.xml文件中做如下配置:

<config> <!– 配置缓存机器和缓存端口号–>
<name>clusterMember</name>
<value>A,192.168.0.59,8087;B,192.168.0.48,8087;</value>
</config>
<config> <!– 配置是否共享缓存目录–>
<name>isCachedFileShared</name>
<value>yes</value>
</config>
<config> <!– 配置缓存共享目录–>
<name>cachedReportDir</name>
<value>\\192.168.0.59\cached</value>
</config>

这里主要的是 clusterMember属性,它指定了系统缓存前缀、所有集群的服务器结点及每个服务器结点与缓存服务器间的通讯接口。
它的格式是:缓存前缀,IP,端口;(注:润乾通信端口非web服务器端口)

2、 重起服务器,即可实现集群时缓存同步。
引自:润乾报表知识库
相关文章:通过JDBC-ODBC桥连接access数据库weblogic10部署润乾报表中文乱码问题的解决分页标签的使用关于jdbc直连部署润乾时reportConfig.xml中的配置Hibernate sqlserver2000与润乾报表集成中的数据源配置

灵活的分页机制

07.29.2009 by fengzhou - 0 Comment - 0
Posted in java报表相关

润乾报表提供了灵活的分页机制,提供了按纸分页、按行分页和不分页三种分页方式。

1、 按纸张分页:按设定的打印纸类型自动进行分页,超出纸张的部分会在下一页打印,这种分页方式适用于用户对一页纸上打印几条记录没有要求的情况。

按纸分页效果.png

2、按行数分页:按预先设定的每页显示的数据行数自动进行分页,超出设定行数的数据在下一页打印。

按行分页效果.png

3、不分页:有时为了便于查看所有的报表信息,需要把报表中的所有信息打印在一页纸上,这时就可以使用 不分页 来达到这个目的。

不分页效果.png

设置起来非常简单,只需要在工具菜单中选择【属性】->【报表属性】,弹出报表属性窗口,选择”分页” 标签,将【分页】中的【分页方式】根据需要置设为”按纸分页”、”按行分页”(同时在下方设定每页的行数)、”不分页”即可。

分页方式设置.png

此外,还可以通过设置行后分页、列后分页的属性表达式来更加灵活的对分页进行动态控制。比如,可以实现强制性的在报表的某一行或某一列后进行分页、对分组后的数据不同分组的信息各在不同的纸上、满足某些特定条件时才进行分页等等。

润乾公司凭借多年的行业经验,不断对产品的细节进行优化,满足不同角度、不同层次的需求,不失为报表行业的领军旗帜。
引自:润乾报表知识库
相关文章:显示值or真实值?——谈谈导出excel的数据显示; 可树形展开的折叠报表的制作横向分页报表的标题切分用润乾报表轻松实现动态排序

巧用动态宏实现统计图

07.28.2009 by fengzhou - 0 Comment - 0
Posted in java报表相关

各大报表工具都有参数机制,但是支持宏的却少之又少。宏有着参数所不具备的灵活性,可以应对很多参数无法解决的局面。

如下图,是虚拟的一个数据集,现在要做一张带统计图的报表,要根据输入的参数(这个参数是行号或列号),得到该行或该列的数据,然后生成一个统计图。

1.jpg

比如:输入”行5″,就要得到”5,52,53,54,55″这5个数据做为系列值生成统计图,系列名称为对应的”列1,列2,列3,列4,列5″。输入”列5″,也类似,得到用”5,25,35,45,55″这5个数据生成统计图。

这种情况下,不可能简单通过参数去获得某行或某列的数据。表面上看,似乎是无法得到数据去生成统计图的。这时,动态宏就发挥它的重要作用了。

下面开始宏的制作,以及统计图的生成:

1 先定义一个参数:arg1

2.jpg

arg1:输入行号或列号,参数值1-5分别对应行1-行5,6-10分别对应列1-列5

2 定义两个动态宏:macro1 macro2

3.jpg

macro1:显示系列名称,宏值:case(arg1,list(”1″,”2″,”3″,”4″,”5″),”B1:F1″,”A2:A6″),即输入参数为行号时系列取列1-列5,输入参数为列号时系列值取行1-行5

macro2:显示系列值,宏值:case(arg1,list(”1″),”B2:F2″,list(”2″),”B3:F3″,list(”3″),”B4:F4″,list(”4″),”B5:F5″,list(”5″),”B6:F6″,list(”6″),”B2:B6″,list(”7″),”C2:C6″,list(”8″),”D2:D6″,list(”9″),”E2:E6″,list(”10″),”F2:F6″),即输入不同的行号或列号时取得对应的值

3 生成统计图:

4.jpg

设计器中的效果:

5.jpg

现在可以输入参数,预览看一下效果。输入9(即列4),就可以看到”列4″所在列的数据生成的统计图了。

6.jpg

由这个简单的例子,可以体现出宏的作用的强大,看似很难得到数据的报表,通过使用动态宏,也可以轻松实现!
引自:润乾报表知识库
相关文章:显示值or真实值?——谈谈导出excel的数据显示; 可树形展开的折叠报表的制作横向分页报表的标题切分用润乾报表轻松实现动态排序浏览式报表中如何使用checkbox

智能查询与制表新利器——润乾即时报表

07.27.2009 by fengzhou - 0 Comment - 0
Posted in java报表相关

润乾即时报表提供了易用且高效率的报表快速设计方案,采用tab页切换的设计布局,真正实现了无编码形式设计报表。用户可利用即时报表的报表展现、汇总、统计、打印导出、生成统计图等功能搭建出轻量级企业报表平台。即时报表支持多表关联,可以灵活的制作以多个相互关联的表视图作为数据集的报表。支持国际化,能广泛的适应用户。特别是纯拖拽方式的报表设计形式让报表设计人员完全不需要掌握代码编写技能,也可以随时根据需要设计出符合业务逻辑的报表,而且它还能生成各种统计图,用户可以得到各种自己需要的统计图,满足报表使用者的最终需求,无形中也降低了企业的运营成本。

功能流程图如下:

1.png

1) 数据集选取

数据集选取的界面主要包括待选视图设置、已选视图列表和相关视图列表三个部分组成:

  • 待选视图设置:下拉列表中会显示所有待选的视图,用户只需下拉选中所需要的视图,方便了用户的操作。
  • 已选视图列表:已经被选中的视图以列表的形式列出来,方便用户查看自己已经选了哪些视图。
  • 相关视图列表:清晰的显示所有与所选视图相关的视图,使用户创建的报表中的数据可以来自多个相互关联的视图,增强了创建报表灵活性,拓宽了报表的使用范围。

2.png

2) 查询条件设置

查询条件的设置分为专项过滤条件和高级查询条件设置两个部分:

  • 专项过滤条件:预先设置好的常用查询条件,直接勾选即可。
  • 高级查询条件设置:用户可自行定义复杂的查询条件,提供条件名称的下拉列表并对应所选的条件字段类型给出不同的比较符下拉列表,可以添加多个并列查询条件,操作简单,灵活性非常强。

3.png

3) 报表设计及部署

设计报表界面对常用了三种报表形式给出了简单、快捷的设计模式。通过下拉列表选择一个视图,下方就会列出所有可用的字段,直接拖拽报表里需要的数据字段至相应的区域即可轻松实现报表中数据的列表展现、升降排序、多层次的分组以及多种可选方式的汇总,同时,用户可以添加自定义报表标题。

4.png

4) 报表风格

报表风格选择界面给出多种可选的报表风格样式,通过单选按钮轻松实现对风格的选择,并实时提供对所选报表样式的风格预览。

5.png

5) 报表展现

在报表的展现、导出及打印方面,即时报表也有着丰富灵活的功能,满足用户不同的需要:

  • 特有的FLEX功能条,灵活设置显示或不显示哪些项、按什么方式排序等。
  • EXCEL、WORD、PDF、TXT文件的不失真导出。
  • 动态列宽的调整,在设计好的报表中可以很灵活的调整报表的列宽。
  • 当前配置文件的保存,可直接查看设计过的报表,很方便,无须重复设置。
  • 强大的报表导出各种统计图功能,用户可根据自己的需要,设置生成何种统计图,使统计结果清晰、直观的展现出来,满足了用户的各种统计需求。
  • 翻页功能按钮及页码的显示,方便的查看报表每页的数据。
  • 轻松实现报表的打印,提供打印设置功能,使打印更有灵活性,方便了用户。

6.png

7.png

即时报表是润乾公司推出的新一代专业报表工具,专注于即时报表的生成效率,凝聚了润乾公司积累多年的报表研究经验,是一款高性价比、易学易用的WEB报表工具。
引自:润乾报表知识库
相关文章:
适合国内企业的商业智能解决方案——润乾决策分析平台RBP; 关于filter的影响代码与显示值的匹配报表在linux上非正常换行问题新版本统计图图形优化

如何查看快逸报表函数说明

07.26.2009 by fengzhou - 0 Comment - 0
Posted in java报表相关

很多快逸用户问:到哪里查看快逸报表的函数说明?本文来解答一下这个问题。

快逸报表有很多功能强大的函数,打开快逸设计器后就可以很方便地查看这些函数的说明,本文介绍两个途径来查看,下面对他们一一说明。

方法一:通过文档查看函数说明
打开设计器—-帮助—-使用手册—-用户手册(基础):6.4 函数
函数分下面7个小节介绍,用户可以通过不同的功能分类来了解各个函数。
• 6.4.1 数据集函数
• 6.4.2 单元格函数
• 6.4.3 时间日期函数
• 6.4.4 数学函数
• 6.4.5 字符串函数
• 6.4.6 数据类型转换
• 6.4.7 数据类型判断

方法二:设计器中查看 函数说明
这个方法对于 快逸报表开发人员更加的方便,可以在设计报表的时候随时查看每个函数的用法和例子。
设计器中查看函数说明又可以分两个路径来实现。
路径一:
设计器编辑报表状态下,随便选择一个单元格,右键点击,下来列表中可以看到:表达式,点击表达式可以看到下面的编辑框:

快逸报表表达式编辑框

图1

快逸报表表达式编辑框

图2
上图中的红色框中就是函数区,排序是按字母顺序,开发人员输入函数的首字母就可以查到想要的函数,分类是把函数按功能分类,可以按功能查找,然后点击函数帮助就可以看到详细的函数说明,函数说明见下图:

快逸报表函数说明

图3
路径二:
编辑报表状态下,选择一个单元格,在右面的属性栏中可以看到表达式一列,任意点击下图红色框中的任何个表达式编辑框也可以进入图2的表达式编辑对话框,见下图:

快逸报表函数说明

图4

这样我们就可以很方便的查看函数说明了,相信会很大程度的方便大家的使用。

引自:报表工具知识库
原文链接: 如何查看快逸报表函数说明

在打印预览时临时修改报表内容

07.25.2009 by fengzhou - 0 Comment - 0
Posted in java报表相关

Web报表浏览者在打印报表时常常需要临时修改报表中的一些内容,比如报表中的错别字,但是报表已经做好发布完毕,不可能让 Web报表设计人员再重新修改制作报表,也不可能修改数据库中的数据,那么作为报表设计者就需要提供给报表浏览者打印报表前临时修改报表的快速通道。

快逸报表就提供了这样的功能:打印预览时可以临时修改报表内容,具体做法如下:
我们用快逸demo中的例子:\quieeReport\webapps\quiee\reportFiles\基础报表——-上方合计.raq,来实现这个需求。
第一步:
设计器中连接demo数据源,打开上方合计.raq例子,见下图:

快逸报表打印预览时修改报表设置

根据上图的设置就可以达到打印时修改的需求了,来看一下打印预览时的效果:

快逸报表打印预览时修改报表设置

设置生效后整个报表的所有内容就都可以修改了,修改以后直接打印就可以看到修改后的报表了。

引自:报表工具知识库
原文链接: 在打印预览时临时修改报表内容

如何通过js执行润乾的下拉日历

07.24.2009 by fengzhou - 0 Comment - 0
Posted in java报表相关

润乾报表中,提供了丰富的编辑风格,如常用的下拉日历。直接将单元格的编辑风格设置为下拉日历即可在页面上点击时弹出下拉日历框供选择。

实际上,下拉日历是调用了一个由润乾提供的js:calendar.js,因此,我们也可以不通过设置单元格的编辑风格来实现下拉日历,比如自己定义一个onclick事件来调用润乾的下拉日历js。同时,也可以自定义数据的格式。

下面以选择月份为例,给出具体的实现:

<form name=from1>选择月份: <input name=reportMonth onClick=”_runqianCalendar.dateFormat=’yyyy-MM’; _runqianCalendar.type= ‘month’;_showCalendar();” >

这样,在报表展现页面上,焦点触发编辑框时就会弹出下拉日历供选择月份。

当然,要首先引入润乾下拉日历自带的js(注意要在定义的文本框后面引入),这里以发布在润乾demo应用中为例:

<script language=javascript src=”http://127.0.0.1:6001/demo/reportServlet?action=10&file=%2Fcom%2Frunqian%2Freport4%2Finput%2Fcalendar.js” mce_src=”http://127.0.0.1:6001/demo/reportServlet?action=10&file=%2Fcom%2Frunqian%2Freport4%2Finput%2Fcalendar.js”></script>

<script language=javascript>_createRunqianCalendar();</script>

否则就会因为找不到润乾自带的下拉日历js定义的对象而报”不可识别的对象:_runqianCalendar”错误。

由此可以看出,润乾报表在设计层面上是非常灵活的,可以很轻松的直接运用润乾提供的一些向导、可视化界面进行设计,也可以根据自己的需要通过少量的代码来实现更大的灵活性。
引自:润乾报表知识库
相关文章:可树形展开的折叠报表的制作;
在润乾参数表单中如何不点击查询按钮自动传参关于润乾报表自定义函数报错的问题决策分析解决方案润乾报表填报处理类问题

超链接中的宏传递

07.23.2009 by fengzhou - 0 Comment - 0
Posted in java报表相关

参数机制给报表设计带来了很大的灵活性,通过使用参数可以实现页面上的动态交互功能。然而,有时候仅仅有参数还是不够的,还需要更加灵活的宏机制。润乾报表的宏机制可以满足此类的需求。宏还分为普通宏和动态宏两种,动态宏可以预先进行运算,与参数机制结合就可以完成复杂的条件设置。

比如,一个查询订单的报表,通过设置参数模板可以在页面上实时选择想要的分组方式(按地区或按运货商),点击查询可以按照所选的方式进行分组。这时,在报表设计中就要用到宏机制。利用动态宏,来根据页面传过来的参数值进行不同的分组。更进一步的,在查询出的每个订单号后面加一个超链接,通过超链接把主页面中的宏传给子页面,并且在子页面中对传过来参数字段的值进行检索。也就是说,当选择按地区分组时,主页面中展现的是按地区的分组列表,点击每个分组后面的超链接时,在子页面中要显示该地区选中字段的详细信息,即通过超链接把主页面中的条件传递给了子页面作为其自身的检索条件,选择按运货商分组时效果也是同样。如下图所示:

1.png

2.png

主页面的报表设计界面及超链接定义如下:

3.png

定义了一个参数arg1接收页面输入的参数值,并定义了与此参数有关的动态宏macro1:

4.png

超链接页面的报表设计与上面的类似,通过设置的超链接接收由主页面传递过去的检索条件。

在实际应用中,灵活的使用参数与宏机制,可以提高整个报表系统的的页面交互性能,不用写脚本而轻松实现许多复杂的需求。
引自:润乾报表知识库
相关文章:显示值or真实值?——谈谈导出excel的数据显示; 可树形展开的折叠报表的制作横向分页报表的标题切分用润乾报表轻松实现动态排序

日期差的计算

07.22.2009 by fengzhou - 0 Comment - 0
Posted in java报表相关

在实际应用中,计算两个日期相差的天数是十分常见的需求。润乾报表中计算两个日期的相差天数在设计器中一般分为两种方法:

第一种是不需要自动计算的,直接从数据集中或者通过参数传递取到两个日期,通过润乾自带函数daysAfter(datetime2(@arg1,’yyyy-MM-dd’),datetime2(@arg2,’yyyy-MM-dd’))进行计算得到两个日期的相差天数(arg2-arg1);

第二种是在填报表中,需要通过自动计算得到两个日期的相差天数,此时就需要在结果的单元格的填报属性-自动计算中加入js,比如fun(${C2}.toString(),${D2}.toString()),来计算C2和D2两个单元格日期的相差天数,同时在发布报表的jsp中加入相应的js脚本:

<script launguage=”javascript”>
function fun(cellOne,cellTwo) {
var now=new Date(cellTwo.substring(0,4),cellTwo.substring(5,7)-1,cellTwo.substring(8,10));
var before=new Date(cellOne.substring(0,4),cellOne.substring(5,7)-1,cellOne.substring(8,10));
var date = now.getTime() - before.getTime();
return Math.floor(date / (1000 * 60 * 60 * 24));
}
</script>
引自:润乾报表知识库
原文链接:日期差的计算
相关文章:显示值or真实值?——谈谈导出excel的数据显示; 可树形展开的折叠报表的制作横向分页报表的标题切分用润乾报表轻松实现动态排序
浏览式报表中如何使用checkbox