Java报表软件技术讨论

Style Report报表专题
posts - 97, comments - 3, trackbacks - 0, articles - 3
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

Java报表设计

Java报表设计技巧与应用
     摘要: 固定行行数的分页分组合计报表在某些特定的环境下应用普遍,比如说销售单打印、发货单打印、发货单打印等等,具体说大概就是实现这种效果:根据一张销售单据,如果销售单有19行内容,每8行显示一页。第一、二页完全显示8行,第三页只显示3行,剩下的5行空白填充。


在Style Report中采用“表”元素的编写脚本方式实现固定行数的分页报表,这种方式对完全没有脚本编写基础的人来说,可能有些困难。接下来笔者介绍l一种较为简便的实现方式。   阅读全文

posted @ 2013-10-16 11:27 思达商智 阅读(439) | 评论 (0)  编辑 |

     摘要: BC分类法又称帕雷托分析法,也叫主次因素分析法,是项目管理中常用的一种方法。它是根据事物在技术或经济方面的主要特征,进行分类排队,分清重点和一般,从而有区别地确定管理方式的一种分析方法。由于它把被分析的对象分成A、B、C三类,所以又称为ABC分析法。

ABC法则是帕累托80/20法则衍生出来的一种法则。所不同的是,80/20法则强调的是抓住关键,ABC法则强调的是分清主次,并将管理对象划分为A、B、C三类。1951年,管理学家戴克首先将ABC法则用于库存管理。

ABC分类法的实际应用: 在一个大型公司中,库存存货的种类通常会很多,动则就可能是十几万种甚至几十万种。盘点清查非常困难,而且难以确保准确性。对于非重要的材料,比如低值易耗品,可能影响还不大,但对于重要材料,例如产品关键部件,如果计数错误,却可能导致缺料,生产自然也就不可避免地受到影响。为了保证重要材料的存量不断料又不积压,非重要材料按一定的估计量备货,ABC方法通常适用于此。

如何用Java报表系统Style Report 统计并将库存产品进行分类呢? 接下来,我们  阅读全文

posted @ 2013-09-10 11:35 思达商智 阅读(459) | 评论 (0)  编辑 |

     摘要: 同比就是今年第n月与去年第n月比。

同比发展速度主要是为了消除季节变动的影响,用以说明本期发展水平与去年同期发展水平对比而达到的相对发展速度。如,本期2月比去年2月,本期6月比去年6月等。

其计算公式为:
同比发展速度的公式应该改成:同比发展速度=本期发展水平/去年同期水平×100%;
同比增长速度=(本期发展水平-去年同期水平)/去年同期水平×100%。
在实际工作中,经常使用这个指标,如某年、某季、某月与上年同期对比计算的发展速度,就是同比发展速度。

注:以下文章所指的同比均指“同比增长速度”  阅读全文

posted @ 2013-09-04 10:07 思达商智 阅读(263) | 评论 (0)  编辑 |

     摘要: 环比数据是指与同年的上一期相比的数据。如果做的是周数据比较,环比就是本周数据比上周的数据;如果做的是月数据比较,环比就是本月数据比上月的数据;如果做的是季数据比较,环比就是本季数据比上季的数据。对于某些经济现象,环比更能说明问题。

环比有环比增长速度和环比发展速度两种方法。

计算公式:
环比增长速度=(本期数-上期数)÷上期数×100%  反映本期比上期增长了多少
环比发展速度=本期数÷上期数×100%  环比发展速度是报告期水平与前一期水平之比,反映现象在前后两期的发展变化情况。
环比增长速度= 环比发展速度 - 1 
举例: 本期销售额为500万,上期销售额为350万  。环比增长速度=(500-350)÷350×100%=42.86%  环比发展速度=500/350×100%=142.86%  阅读全文

posted @ 2013-08-14 13:58 思达商智 阅读(307) | 评论 (0)  编辑 |

     摘要: 数据分组,是所有报表中最基本、最常见的数据展现形式,也是所有报表软件中都支持的格式。一般常用的是纵向的数据分组。通常用户在数据列中指定数据分组,汇总字段,就可以生成标准的数据分组表格。

下面介绍用企业报表软件 Style Report 提供的 Web报表设计器制作表格数据分组。下面数据分组是按公司名称进行分组,同时可以查看公司的详细信息:  阅读全文

posted @ 2013-07-24 10:14 思达商智 阅读(177) | 评论 (0)  编辑 |

     摘要: 数据表达式列:

与一些数据库一样,数据集中的数据表可以包含值由计算所得而不是从存储区读取的列。例如,在订单明细记录中,定义一个 ExtendedPrice 列可能有意义,即通过将数量和价格相乘,而不是将总数实际存储在记录中。计算列也可以添加或计数子记录中的值并筛选其他记录。可以用表达式定义计算列。

表达式的语法由标准算法、布尔值和字符串运算符与文本值组成。可以用数据值的列名称引用数据值(与在 SQL 语句中一样)并包括 Count 这样的聚合函数。

例如,基于当前记录的 UnitPrice 和 Quantity 列的 ExtendedPrice 列的表达式可以仅仅是:

UnitPrice * Quantity

若要引用子表中的列,可以使用保留字“Child.”后跟列的名称。例如,以下表达式返回所有相关子记录中 Price 列的平均值:

Avg(Child.Price)  阅读全文

posted @ 2013-04-22 15:57 思达商智 阅读(179) | 评论 (0)  编辑 |

     摘要: 我们曾经就Java报表工具Style Report 探讨过自定义报表的新思路,那么如何运用Style Report制作自定义报表并未提及,此篇将循序渐进地从用Style Report简单的图表开始,用户如何自主完成一份简单的图表

第一步:在Style Report 产品web端首页(localhost:8080/sree/)通过“用户入口” 进入,点击“设计”标签后,选择“报表”,将会显示一系列的可使用的向导,如下图所示:  阅读全文

posted @ 2013-04-16 16:19 思达商智 阅读(276) | 评论 (0)  编辑 |

     摘要: 听说报表软件Style Report能连接各种关系型数据库和非关系型数据库,在使用过程中到如何配置倒成了个问题。

特此研究了下关系型数据库的配置方法,以Oracle 10g的数据库连接方式为例,特此与大家分享。

在连接Oracle 10g之前,首先要将数据库的驱动路径找到,并将其增加到Style Report的类路径中。就像我们要去拜访一个朋友,首先您得知道去他们家的路怎么走,然后才能上路。

第一步,打开报表软件Style Report的报表设计器,增加Oracle 10g的数据库驱动到类路径中。具体操作步骤如下:点击“文件>>配置”,在弹出的窗口下选择“类路径”标签,选择“添加JAR”,如下图所示:  阅读全文

posted @ 2013-03-28 14:08 思达商智 阅读(211) | 评论 (0)  编辑 |

     摘要: 在报表软件和报表工具领域,报表套打是最为常见的一个用户需求,例如发票、支票、信封、对账单、保单以及各类证件表格的打印都需要根据既定的表格样式快速批量打印出结果。报表套打功能也是各种报表工具必备的功能之一,如果做到精准打印、不错位,能套打各类表格、打印模版自定义设定等要成为选择报表套打工具的必备因素。

报表行业内的人很多都知道Java 报表工具--Style Report,其功能的完善性和可集成性有口皆碑,特别是它的套打功能更得到很多人的青昧。接下来我们就共同看一下它是如何对套打的表格进行模版设定的。

本例将以发票套打来说明Style Report的套打模板设计,拿一张北京市的增值税发票作为票样,如下图:   阅读全文

posted @ 2013-01-15 15:51 思达商智 阅读(427) | 评论 (0)  编辑 |

     摘要: 标签(label)是个翻译名词,普遍的意思是对事物所额外加上的识别用信息纸卡或牌子。它包含事物的诸多关键信息,例如上图的标签中不仅含有价格、产品型号、条形码还包含着价格有效日期等等,这些信息都是被分别记录在数据库的不同列,如何将这些信息快速地打印到一个拟定好尺寸大小的标签里或许是很多企业要解决的实际问题。  阅读全文

posted @ 2012-12-25 14:08 思达商智 阅读(451) | 评论 (0)  编辑 |

     摘要: 报表打印是报表输出的一种方式,在银行、电力、金融等等行业仍需要大范围的票据或者单据的打印,报表的套打功能成为某种行业内特别的需求,客户在选择套打工具的时候尤其关注打印的精度以及打印过程中的自定义设计。

市场上能够实现套打的报表工具很多,快逸报表、Style Report等都能实现套打功能,甚至有绿色的免费套打软件。依据每个产品设计的理念和初衷不同,各种套打工具在功能实现和可视化设计上都有其各种特色。

接下来,我们仅研究Style Report在套打中的功能和特色:  阅读全文

posted @ 2012-12-03 13:36 思达商智 阅读(233) | 评论 (0)  编辑 |

     摘要: 报表工具 Style Report能够将数据自动分发至指定地址,例如邮箱、某账号等等,本例将以制作一个全体职工的工资单,然后通过人员信息的自动匹配,将工资单按照各个员工进行切割,最后通过邮件发放到各个员工的邮箱中。

制作过程如下:


1. 打开报表设计器,点击“文件→ 新建”,在创建表格向导中,选择“空白表格式报表”,打开一个新的报表页面。


2. 在打开的页面中,点击左边导航栏中的“表格向导”,弹出数据绑定界面,选择需要的数据源,在这里我们选择的是“burst→query1”,如图1所示  阅读全文

posted @ 2012-11-27 15:00 思达商智 阅读(245) | 评论 (0)  编辑 |

     摘要: 地图是一种图表类型,它显示并总结了以地理地图的形式分布的数据。它具有很多其他图表类型相同的属性,但在有些时候能更加直观的表现数据。

本例是创建能在U.S.地图上显示各个地区的顾客数量的报表,步骤大致分为创建地图和数据分析两步。具体步骤如下:
  阅读全文

posted @ 2012-11-16 10:24 思达商智 阅读(338) | 评论 (0)  编辑 |

     摘要: 双Y轴的图表经常被很多BI厂家当成一个高级的功能。进而引导用户感到如果有两组数值在一个图表上同时显示,用两个Y轴来控制数据的位置是一个最佳的方案。但是其实在可视化的领域,对双Y轴的使用一直有很大的争议。大部分的观点是双Y轴的使用往往弊大于利。我们在此来对这个问题做一个大致的分析,看看双Y轴是不是真正需要。

把两组数据同时在一个图表上显示,自然是因为需要对它们进行有效比较。但这样可能会遇到两种问题。第一,如果两组数据的单位不同,那用一个Y轴来代表这两个不同的概念无疑会让读者困惑。比如我们把盈利和折扣率放在一个图表上,一个是绝对值,另一个是百分比。用一个轴来代表在概念上就完全错误了。

就算两组数据使用的是同样单位,但如果它们的值的区间差别很大,用同一个轴达到的效果往往是一直数据把难以组数据压缩到不能分辨的地步。比如营业额和盈利,可能是10比1的关系。把它们放到一起,营业额会决定Y轴的区间,盈利就会被压缩成基本一条直线。  阅读全文

posted @ 2012-11-05 12:03 思达商智 阅读(247) | 评论 (0)  编辑 |

     摘要: 在报表工具制作报表时,通常会用到图表,而Y轴是绝大多数图表都会遇到的,有时候因为数值跨度过大Y轴显示的刻度点会让制表者纠结好久。Style Report报表软件在处理此问题时,有自己的思路:

Y轴断点是指在Y轴上加上一个断口。这主要用于解决数据分散过大的问题。比如销售额按区划分,很可能出现一些区是另一些区的数倍甚至数十倍的情况。如果所有的数据的放在一个图表上,小的数据就会被挤压得基本看不到区别。  阅读全文

posted @ 2012-10-24 14:52 思达商智 阅读(225) | 评论 (0)  编辑 |

     摘要: 数据建模器是用来建立各种数据库的连接(数据源),用户通过可视化的界面在数据源的基础上建立数据查询,还可以在数据源的基础建立符合业务逻辑的数据模型以及基于用户权限的数据过滤项。


数据建模器提供访问关系型数据库,数据对象和文件的功能。其中数据库包括数据仓库,数据集市,大型机,操作数据存储(ODS),多维数据库(OLAP),事务处理数据库(OLTP)。数据对象包括Web服务,XML,CORBA,EJB的,和普通Java对象(POJO)。文件包括电子表格Excle,CSV和文本。

数据建模器通过JDBC跟数据库建立连接,同时也支持通过ODBC连接数据库,可连接的关系型数据库包括:Oracle、SQL Server、MySQL、DB2、Ingres、Sybase、Derby、Informix。同时还可以连接非关系型数据库的数据资源其中包括EJB、Corba、Object、Soap、XML、XMLA、Text、Excel、SAP。同时还提供开放式的数据接口,用户可以扩展数据接口来导入各种数据。

数据建  阅读全文

posted @ 2012-10-17 10:42 思达商智 阅读(293) | 评论 (0)  编辑 |

     摘要: 在总汇大批量数据时,难免会发现一些重复行和重复数据,这时我们就应该将那些重复的数据进行整理,以免会影响我们的工作,来具体讲讲如何在Style Report 中做报表过程中如何从存在重复的数据列中整理数据。

学过Java编程的人对tolist函数应当不陌生,本文要涉及到的函数就是它。

ToList函数,该函数的参数为一组记录,它的功能是把保存在这些记录的特定字段的数据组合到一个用逗号做分隔符的清单中(成组), 简单的说它是个合计函数。下面我们就toList函数在报表制作中的使用,做个简单的演示,  阅读全文

posted @ 2012-10-10 17:01 思达商智 阅读(207) | 评论 (0)  编辑 |

     摘要: 分组报表,是所有报表当中最普通,最常见的报表类型,也是所有报表工具都支持的一种报表格式。从一般概念上来讲,分组报表就是只有纵向的分组。传统的分组报表制作方式是把报表划分为条带状,用户根据一个数据绑定向导指定分组,汇总字段,生成标准的分组报表。

笔者曾经给大家分先过《如何在style Report中制作交叉分组报表》 重点讲的实现交叉报表的制作过程,现介绍下如在Style Report中实现简单分组报表以及多层分组报表:  阅读全文

posted @ 2012-10-08 17:49 思达商智 阅读(286) | 评论 (0)  编辑 |

     摘要: 一维条形码是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符。 现在越来越多的行业及公司在使用条形码,条形码在信息汇总以及报表表单打印中成为一部分企业的特殊需求。我们将演示在style report报表工具中制作和打印条形码的过程:

二维条形码是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息。二维条形码在信息载体成本、信息量、保密性、抗污染和抗干扰及标准化等方面具有明显的优势,随着科学与信息技术的发展,二维条形码已经开始在国内的很多行业得到应用。

在Style Report报表工具中同样支持设计和打印各种二维条形码,打开报表设计器,点击左边导航栏中的“段向导”,弹出报表数据绑定界面,选择需要的数据源,然后点击“完成”。


  阅读全文

posted @ 2012-09-19 15:23 思达商智 阅读(988) | 评论 (0)  编辑 |

     摘要: 曾经讨论过自定义报表设计的思路,此篇文章旨在用Style Report创建用户自定义报表模板的过程,体验一下自定义报表设计的新思想。

目标:用户自定义Web报表

2. 点击“保存”,存为“abc123”。如下图所示:
技术:采用标准的B/S架构,通过易用、高效的向导式报表设计方式帮助用户完成自定义Web报表的制作。

向导式自定义报表功能在使用时,需要设置一个用于制作报表的模板。下面我们将具体介绍如何使用报表工具 Style Report创建向导式自定义报表功能中的报表模板。  阅读全文

posted @ 2012-09-17 13:02 思达商智 阅读(1220) | 评论 (0)  编辑 |

     摘要: java报表软件技术发展到今天,已经从传统的静态数据展现逐步向动态交互功能演进。用户在已经不再满读取静态报表软件所提供的图表、表格来展现和现实数据展现效果,更多的用户希望通过图表上的交互性实现数据分析,更好地为企业的经营决策提供帮助。

通过以下某公司两年内销售分析图,让我们了解下Style Report是如何实现数据的监控以及对报表的动态分析过程。  阅读全文

posted @ 2012-09-12 12:27 思达商智 阅读(294) | 评论 (0)  编辑 |

     摘要: 上篇文章以一个实例介绍Style Report的报表数据填报过程,接下来我们共同了解下Style Report的智能填报特点:


通用性:flex应用提供了平滑的易用性,同时也提供了跨浏览器的支持
零客户端:数据集成性得到大大增强
可扩展性:通过简单搭配的java script,方便应用扩展
多源填报:与各种数据源相关联,实现异构数据源之间的表关联
处理数据灵活,通过java script改动数据结构随时适应业务需求。
支持离线填写,可以导出excel文档,符合目前很多企业的填报流程,分发excel文档给分支机构,收上来之后直接倒入,完成数据入库功能。这意味着不联网时也可以填写,在联网后再上报数据。
提供合法性检查功能,判断事先定义好的检查条件是否满足,如不满足则拒绝接收数据且给出提示。
提供类EXCEL的自动计算
提供多种多种编辑控件,如编辑框、下拉框等
基于拖拽和类似于excel的页面布局功能,使得最终用户都能制作填报界面。
完善的权限控制,支持强大的权限控制功能,包括LDAP  阅读全文

posted @ 2012-09-05 16:17 思达商智 阅读(302) | 评论 (0)  编辑 |

     摘要: 报表软件数据填报从广义上讲实际上涵盖了数据从收集到进入数据库这样一个广泛的范围,涵盖了填报模板制作、分发、收集、填报、导入、校验、审核、发布、权限控制等一系列功能。狭义的数据填报只包含数据在线填报功能,指用户在线填写一定的数据,然后点击提交将数据录入数据库。

鉴于目前数据填报软件的功能范围,本文将讨论广义的数据填报。


在填报人员进行数据填报之前,一般应由IT人员或者业务人员针对填报需求进行填报模板的制作,根据将来填报模式的不同,应该制作符合不同填报方式的模板。在填报模板的制作过程中,用户将设计填报页面(在线)或表格(离线)的样式,数据项目的名称、数据项目之间的逻辑关系、数据校验的逻辑以及数据库维护的代码。这部分工作将在基于Java的图形用户界面中完成。

在Style Report中,填报模板的制作有worksheet制作完成,填报界面以及布局安排由viewsheet中完成,接下来,我们就简单了解下Style Report的报表数据填报过程:

此报表数据填报的要实现目标:  阅读全文

posted @ 2012-09-03 17:50 思达商智 阅读(1800) | 评论 (0)  编辑 |

     摘要: 交叉表(Cross Tabulations)是一种常用的分类汇总表格。使用交叉表查询,显示源于表中某个字段的汇总值,并将它们分组,其中一组列在数据表的左侧,另一组列在数据表的上部。行和列的交叉处可以对数据进行多种汇总计算,如:求和、平均值、记数、最大值、最小值等。使用交叉表查询数据非常直观明了,被广泛应用。

交叉报表是报表当中常见的类型,属于基本的报表,是行、列方向都有分组的报表。这里牵涉到另外一个概念即分组报表。这是所有报表当中最普通,最常见的报表类型,也是所有报表工具都支持的一种报表格式。从一般概念上来讲,分组报表就是只有纵向的分组。传统的分组报表制作方式是把报表划分为条带状,用户根据一个数据绑定向导指定分组,汇总字段,生成标准的分组报表。


例如下图是典型的分组交叉表格是一份销售人员销售情况的汇总表,其中垂直方向是对销售收入来源进行的分组(包括销售地区、客户信息), 而水平方向中则是对销售收入和平均价格进行汇总。此汇总表复杂百出,涉及到纵向分组,又涉及到横向求和。
  阅读全文

posted @ 2012-08-29 14:12 思达商智 阅读(791) | 评论 (0)  编辑 |

     摘要: 在我们认识java报表工具功能篇中提及,大多的Java报表软件都支持各种图表的运用,如饼图、折线图、条形图、柱状图等。图表的运用可以化冗长为简介,化抽象为具体,化深奥为形象,让阅读者更容易理解你要表达的主题和观点。

当然,java报表工具使用者运用恰当、得体的图表将有效的信息清晰明确地表达出来,能大大提升个人的职场竞争力,为个人发展加分,为进一步成功创造机会。java报表工具试用者都知道通过运用图表中数据的颜色和字体等可视化的特别设置,可以在报表中把问题的重点更有效地表达出来。

使用过Style Report的java报表工作人员都非常赞赏它的精美表现效果,尤其是在可视化的元素运用中具有更加科学合理的见解。

管中窥豹,可见一斑。下面我们从对折线图的加粗设计这个细节来看一下报表软件Style Report是如何做到的。  阅读全文

posted @ 2012-08-13 16:39 思达商智 阅读(630) | 评论 (0)  编辑 |

     摘要: Style Report 作为国内首屈一指的 Java 报表软件在对中国式报表的支持上一直都有着先进的理念和独到的技术。中国式报表的特点在于表格的复杂性及任意性,然而复杂表格并不是中国人的专利。

中国式报表的需求是不容质疑的。Style Report 在中国式报表需求方面有着强大的技术支持,其中可视化的编辑器帮助提高复杂报表的开发效率。独特的向导式和拖拽式的报表设计帮助技术人员减少编写程序的工作量,简化报表调试过程。
  阅读全文

posted @ 2012-08-08 14:23 思达商智 阅读(371) | 评论 (0)  编辑 |