BIRT交叉表中自由格間運算如何做,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
成都創新互聯公司堅持“要么做到,要么別承諾”的工作理念,服務領域包括:成都網站設計、網站建設、企業官網、英文網站、手機端網站、網站推廣等服務,滿足客戶于互聯網時代的達州網站設計、移動媒體設計的需求,幫助企業找到有效的互聯網解決方案。努力成為您成熟可靠的網絡建設合作伙伴!
比如要處理這么個場景:
1、根據明細記錄完成交叉表。
2、在交叉表上統計每行的小計(中間過程)。
3、計算交叉表中每個值占小計的百分比。
計算流程如下圖所示:
BIRT等工具都會提供一些計算列的功能,可以在原始數據基礎上再計算出一些別的列值或統計值,所以很容易實現前面2步。但由于傳統工具(包含BIRT)沒有很好的運算后報表數據項命名機制(一般用列名命名設計階段的數據單元),很難精確描述數據引用關系,只能寫出規律性很強的表達式,而隨意的獨立格運算就使傳統工具難以處理。
常見的解決辦法就是寫自定義數據集(復雜SQL或scripted data sources),把數據事先計算好后再塞入到報表格子中。但自定義數據集方式,代碼非常麻煩,工作量大。
如果使用集算器則會簡單很多,其豐富的集合運算可以方便地完成這類計算,比scripted data sources代碼要短,比SQL寫起來更簡單,比如類似的計算在集算器里可以這樣寫:
A | |
1 | =myDB.query@x("select * from record") |
2 | =A1.pivot(time;department,count) |
3 | >A2.run(t=Admin+Finance+Management,Admin=string(Admin/t,"0.00%"),Finance=string(Finance/t,"0.00%"),Management=string(Management/t,"0.00%")) |
4 | return A2 |
其實還有很多類似的計算問題在BIRT中處理不太方便,但有集算器SPL的輔助卻很簡單。
集算器提供了JDBC驅動,可以很方便的與BIRT等報表工具集成, BIRT調用SPL腳本有使用和獲得它的方法。
看完上述內容,你們掌握BIRT交叉表中自由格間運算如何做的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注創新互聯行業資訊頻道,感謝各位的閱讀!
分享文章:BIRT交叉表中自由格間運算如何做
路徑分享:http://vcdvsql.cn/article4/iiijoe.html
成都網站建設公司_創新互聯,為您提供品牌網站設計、動態網站、響應式網站、云服務器、手機網站建設、網站設計公司
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯