网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

BIRT中文本与JSON关联该怎么做

这篇文章给大家介绍BIRT中文本与 JSON 关联该怎么做,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

成都创新互联公司成立与2013年,先为鸡西等服务建站,鸡西等地企业,进行企业商务咨询服务。为鸡西企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

BIRT对于两个数据源的联合提供了Joint DataSet的解决方案,它具有图形化的操作界面,可以完成简单的内外关联,但功能非常局限(几乎没有二次计算的能力,Join 后再计算只限于简单查询和固定查询,难以实现自由的组合查询和变量查询,更不能进行分组汇总再过滤这类多步骤计算)。

BIRT虽然支持CSV/TXT等文件作为数据源,但不能构建JSON数据源,一些开源社区提供了解析JSON数据源插件,几乎所有插件都非常底层,使用起来很不方便。

从能力上讲,只有自定义数据源可以完整的解决这个问题,但BIRT JAVA bean data source这种硬编码方式比较复杂,工作量巨大。

比如要处理这么个场景:sales.txt是tab分割的结构化文本,city.json是非结构化的JSON串,sales.txt的第2列和city.json的部分文本存在外键关系,需要将两个文件连接为二维表。示意图如下:

BIRT中文本与 JSON 关联该怎么做

建议使用集算器,它是独立的数据计算引擎,拥有不依赖于数据库的计算能力,可以从多种多样的文件获取数据并混合关联运算,事实上,可以把集算器看作是语法更简单的BIRT JAVA bean data source。比如实现上面的问题,集算器脚本只需5行:


A

1

=json(file("/workspace/city.json").read())

2

=A1.new(name,#1.(#1):desc,(firstblank=pos(desc," "),left(desc,firstblank-1)):key,right(desc,len(desc)-firstblank):value)

3

=file("/workspace/sales.txt").import@t()

4

=join(A3:sales,#2;A2:city,key)

5

=A4.new(sales.OrderID,sales.Client,sales.Amount,sales.OrderDate,city.name,city.value)

关联之后还能更方便地实施计算,比如:统计每个城市的销售额;只需在此基础上增加1行:=A5.groups(name;sum(Amount):amount)

关于BIRT中文本与 JSON 关联该怎么做就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


本文名称:BIRT中文本与JSON关联该怎么做
当前链接:http://bjjierui.cn/article/jphgsj.html

其他资讯