润乾集算报表使用远程HTTP数据源的示例

报表的数据来源多种多样,有时会接收来自HTTP服务器的数据进行报表展现,一般报表工具只能通过报表自定义数据源使用高级语言(如JAVA)进行处理,实现较为复杂。集算报表简单地通用集算器接收HTTP数据源完成报表展现。这里通过一个实例说明。

学生成绩信息存储在远程的JSON格式文件中,其所在HTTP服务器对外提供统一HTTP访问接口,现需要读取学生成绩信息开发报表,汇总学生成绩并按总成绩排名。报表样式如下:

JSON文件中包含班级、编号、姓名、学科、成绩等信息,格式如下:

[

{

"class": "Class one",

"id": 1,

"name": "Emily",

"subject": "English",

"score": 84

},

{

"class": "Class one",

"id": 1,

"name": "Emily",

"subject": "Math",

"score": 77

},

......

{

"class": "Class one",

"id": 7,

"name": "Nicholas",

"subject": "PE",

"score": 60

}

]

以下为实现步骤。

编写集算器脚本

首先使用集算器读取远程HTTP文件,并计算结果

A1:通过httpfile函数读取远程HTTP文件score.json;

A2:以字符串格式读入json格式文件后,使用[email protected]()将json串解析成序表;

A3:对学生ID分组,在A4中汇总总成绩;

A5:按照总成绩降序排列,并通过A7中result为报表返回结果集

需要指出的是,httpfile参数中的URL串指向任何HTTP服务器,如某个servlet,这样可以访问带有参数的WEB服务返回的数据,比如:

httpfile(“http://192.168.1.101:6001/demo/Servlet?action=4&name=report1&excelFormat=2003”,GBK)

返回的结果是Excel。当然,返回的结果可以是普通格式的文本(如csv),也可以是json串或xml串,集算器都可以处理。

新建报表

打开集算报表设计器,菜单栏选择文件-新建报表,点击“生成空白报表”,新建一个空白报表。

设置数据集

菜单栏选择报表-数据集,数据集类型选择“集算器”,在弹出的集算器数据集设置窗口中选择dfx文件,创建数据集ds1。

编辑报表模板及表达式

报表模板第一行为报表头,第二行为表达式。

通过B2取学生编号列表,C2、D2根据B2扩展取值姓名和总成绩,A2中排名使用&B2表达式并设置其左主格为B2可以实现排名。

展现报表

在报表设计器中,选择工具栏中的“预览报表”,即可在设计器中查看报表展现结果。

此外,集算报表设计器内置了Tomcat,允许用户将报表发布到web端查看页面效果,点击工具栏右上角的IE图标,设置报表主目录和DFX主目录(可采用默认),完成报表发布。

润乾集算报表使用远程HTTP数据源的示例,布布扣,bubuko.com

时间: 2024-08-24 09:33:36

润乾集算报表使用远程HTTP数据源的示例的相关文章

润乾集算报表实现多数据集关联的示例

多数据源混合的场景在报表开发中非常常见,如:数据来源于多个数据库.数据库和文件混合的场景.传统报表工具在处理这种问题时往往采用两种方式:1将数据统一到一个数据库中,来避免跨库查询或数据库文件混合查询:2使用高级语言为报表自定义数据集,在程序中完成多数据源关联运算.上述做法除了对数据库产生影响.增加实现难度外,往往报表性能也不理想. 使用润乾集算报表对异构数据源的有效支持可以很方便完成多数据源关联报表,这里通过示例说明. 跨库数据源 企业员工每月应发工资跟员工的基本工资.考勤以及绩效有关,考勤信息

润乾集算报表非常规统计之数据源再计算

有这么一些报表,取数后还需要进行一定计算后才能供报表展现输出,这要求报表工具具有数据源再计算的能力. 传统工具会依赖报表工具自身的计算能力,但报表工具计算能力弱导致很多计算完不成:或者借助存储过程完成(如果数据来源于数据库),且不论存储过程的编写难度,像跨库或数据库文件混合数据源,存储过程根本无法完成:不得已使用高级语言为报表自定义数据源提供数据源再计算,但Java做诸如集合运算的难度并不轻松. 集算报表在完成这类时则比较简单,本文通过一个例子来了解解决办法. 报表说明 根据学生成绩表列出指定班

润乾集算报表的层次数据集理解

润乾集算报表提供了层次数据源支持,在集算器中完成表间关联后可以将带有主从结构的数据集(如关联后的维表.事实表)直接给报表使用,而不需要在报表中再次关联:同样集算报表接收到事先在集算器中完成带明细的分组数据集也可以直接使用,而不必再次分组. 什么是层次数据源? 层次数据源是指在集算报表中使用集算器数据集类型,接收集算器脚本返回的带有层次的结果集,作为报表的数据来源. 如上图,脚本返回的结果集A6包括销售姓名.按销售汇总的订单金额以及对应分组下的订单明细:订单明细指向了另外一个集合,该销售下包含订单

润乾集算报表多样性数据源之json

多样性数据源在报表开发中越来越常见,润乾集算报表对多样性数据源的有效支持使得这类报表开发变得非常简单,目前集算报表支持的数据源类型除传统的关系型数据库外,还支持:JSON.HTTP.TXT文本.Excel.Hadoop.mongodb等. JSON作为一种轻量级数据格式应用非常广泛,报表读取json数据源进行报表开发的需求也很常见,另外有些报表还会接收来自HTTP服务器的数据进行报表展现.这里通过例子分别来看一下集算报表使用json数据源和http数据源的过程. 一般JSON数据源 报表说明 学

润乾集算报表的集算器数据集部署(I)

润乾集算报表提供了集算器数据集,允许用户使用集算器脚本完成数据的进一步计算和加工,为报表提供数据源支持,从而简化报表开发,提升报表性能. 集算器脚本的编辑需要借助第三方集算编辑器(非报表工具)完成,而后嵌入到报表工具和报表应用中完成报表开发和部署. 下面来看一下集算器数据集的使用和以及报表部署过程. 1.开发环境使用 集算报表使用集算器数据集时,首先需要设置集算器授权信息和配置数据源连接(如果需要从数据库中取数). 1.1.设置授权信息 启动集算报表设计器,选择工具-选项,切换到"集算器选项&q

润乾集算报表应用开发之参数输入

参数对于报表的重要性不言自明,润乾集算报表支持两种参数输入方案,可以使用集算报表设计参数模板联合报表一同发布,还可以自定义参数输入后与报表结合.二者并没有显著的差异,前者在开发使用上更加方便快捷,而后者则在灵活性上更胜一筹,用户在使用集算报表参数输入时可以根据实际需要进行选择. 下面就上述两种参数输入方式的使用分别来看一下. 使用参数输入模板 集算报表提供了"参数模板"的报表类型,使用参数模板可以制作参数输入表单,而且其内置了多种编辑风格,如下拉树.下拉日历.列表框.下拉数据集等.使用

用润乾集算报表实现实时报表(T+0)的方案

在报表项目中,客户越来越关注源数据的实时性,希望看到最新发生的数据在报表中体现出来.但是,传统的报表工具+数据仓库+ETL方式很难做到这一点,往往是只能看到昨天.上周甚至是上个月的情况,也就是T+1.T+7.T+30统称T+n报表.很难实现T+0报表,也就是能体现实时信息的报表. 分析其原因在于:1.如果报表的历史数据和最新数据都从客户的生产系统读取,虽然可以实现T+0报表,但是会对生产数据库造成压力,影响客户的业务.2.如果采用数据仓库的方式,那么ETL从生产库中取出数据,需要较长的"窗口时间

润乾集算报表优化应用结构之混合数据源

在报表项目中,报表源数据常常会来自于多种异构数据源.例如:关系型数据库(oracle.db2.mysql),nosql数据库(mongodb),http数据源,hadoop(hive.hdfs)甚至是excel或者文本文件.通常的做法是采用ETL工具,将这些数据源都同步到数据仓库中.但是这样做的问题在于:1.配置复杂,难度较大:2.成本较高:3.数据无法实时访问,需要有较长时间的延迟:4.数据仓库的建设和管理都比较复杂:5.如果数据量很大效率会很低,而且要不断的ETL去各个应用系统同步数据:6.

润乾集算报表交互分析之多层自动钻取

交互分析过程中报表多层钻取的情况很常见,如从一级汇总数据钻取到二级汇总数据,从二级汇总数据钻取到三级汇总数据-.,钻取时可以从表格到表格,也可以从统计图到统计图.开发这类报表时如果每个层级都需要制作不同的报表,在层数较多时,无论对于开发还是维护都是很麻烦的事,如果能制作一个通用的模板完成所有层级报表的展现则事半功倍. 润乾集算报表通过内置的集算引擎可以快速完成多层钻取通用报表模板的开发.下面通过一个示例说明使用过程. 多层钻取往往在一个维度上逐级细化,如这里我们以订单表中5个地区层级为例(可以扩