真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

BIRT中文本與JSON關(guān)聯(lián)該怎么做

這篇文章給大家介紹BIRT中文本與 JSON 關(guān)聯(lián)該怎么做,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

成都創(chuàng)新互聯(lián)公司成立與2013年,先為雞西等服務(wù)建站,雞西等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為雞西企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

BIRT對(duì)于兩個(gè)數(shù)據(jù)源的聯(lián)合提供了Joint DataSet的解決方案,它具有圖形化的操作界面,可以完成簡(jiǎn)單的內(nèi)外關(guān)聯(lián),但功能非常局限(幾乎沒有二次計(jì)算的能力,Join 后再計(jì)算只限于簡(jiǎn)單查詢和固定查詢,難以實(shí)現(xiàn)自由的組合查詢和變量查詢,更不能進(jìn)行分組匯總再過濾這類多步驟計(jì)算)。

BIRT雖然支持CSV/TXT等文件作為數(shù)據(jù)源,但不能構(gòu)建JSON數(shù)據(jù)源,一些開源社區(qū)提供了解析JSON數(shù)據(jù)源插件,幾乎所有插件都非常底層,使用起來很不方便。

從能力上講,只有自定義數(shù)據(jù)源可以完整的解決這個(gè)問題,但BIRT JAVA bean data source這種硬編碼方式比較復(fù)雜,工作量巨大。

比如要處理這么個(gè)場(chǎng)景:sales.txt是tab分割的結(jié)構(gòu)化文本,city.json是非結(jié)構(gòu)化的JSON串,sales.txt的第2列和city.json的部分文本存在外鍵關(guān)系,需要將兩個(gè)文件連接為二維表。示意圖如下:

BIRT中文本與 JSON 關(guān)聯(lián)該怎么做

建議使用集算器,它是獨(dú)立的數(shù)據(jù)計(jì)算引擎,擁有不依賴于數(shù)據(jù)庫(kù)的計(jì)算能力,可以從多種多樣的文件獲取數(shù)據(jù)并混合關(guān)聯(lián)運(yùn)算,事實(shí)上,可以把集算器看作是語法更簡(jiǎn)單的BIRT JAVA bean data source。比如實(shí)現(xiàn)上面的問題,集算器腳本只需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)

關(guān)聯(lián)之后還能更方便地實(shí)施計(jì)算,比如:統(tǒng)計(jì)每個(gè)城市的銷售額;只需在此基礎(chǔ)上增加1行:=A5.groups(name;sum(Amount):amount)

關(guān)于BIRT中文本與 JSON 關(guān)聯(lián)該怎么做就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。


本文標(biāo)題:BIRT中文本與JSON關(guān)聯(lián)該怎么做
本文來源:http://weahome.cn/article/jphgsj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部