




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第1章簡介本章是對分析報表框架的總述。1.1概述EAS分析報表框架(BIReport)一套分析報表基礎組件,它做了大部分非具體業務的工作,如查詢方案/打印/臨時表/維表操作等,使開發人員能把精力更多地投入到業務相關的開發工作中。開發人員可通過繼承、引用相關組件快速完成分析報表的開發。1.2分析報表預覽以下是分析報表的示例界面:1.2.1主頁面醒金蝶EAS-南車系統系統皆文件(D查看⑦工具CD幫助WB^|*?|%顯示圖形管圖形分析廣行列變換m排序頃;I功能菜單消息中心市場份■甄分析中標單位中標數量中標金額1長春軌道客車股份有限公司30匕400.002中國南車股份有F艮公司1501已600.003南車二七車輛有限公司4齊芥哈爾軌道交通撮備有限責任公司5長春軌道客車裝備有限責任恣司6哈爾濱軌道立通裝備有限責任公司7中國北車集團大連機車車輛有限公司1009,000.001.2.2顯示圖形1.2.3圖形分析1.2.4排序1.2.5篩選第2章開發流程2.1框架描述2.1.1組成框架元數據:主界面UI:com.kingdee.eas.framework.bireport.client.BireportBaseMainUI.ui條件界面UI:com.kingdee.eas.framework.bireport.client.BireportBaseFilterUI.uiFacade功能對象:com.kingdee.eas.framework.bireport.app.BireportBaseFacade.facade維度配置文件:xml文件,放在與app/client同級的config目錄下。相關組件及輔助類。示例:com.kingdee.eas.framework.bireport.app.BireportSample2.1.2類圖2.2步驟概述2.2.1元數據設計設計主界面UI繼承BireportBaseMainUI,根據業務設計界面,要求至少有一個顯示數據的KDTableo設計條件界面UI繼承BireportBaseFilterUI,根據業務設計界面。設計功能對象繼承BireportBaseFacade,通常不再需要添加接口,除非業務上自身的要求。注意界面規范:邊界/Opx,組件間3px,詳見http://uiserver/2.2.2添加未實現方法Facade生成的ControllerBean通常要重載—init和readySchemaSource兩個方法,分別用于初始化條件查詢數據和準備主頁面的維度數據。2.2.3配置維度文件config目錄下新建維度配置文件(xml格式,具體參考相關文檔),根據具體要求設計維度。2.2.4編寫業務相關代碼通常包括處理查詢條件:初始化設置、方案存取等;主頁面:小標題、打印格式、打印變量、自定義圖形等;ControllerBean準備數據。直7:returnconnection直7:returnconnectionxecutemdx&showdataMainUIFi足「UlFacade□1:open>3:returniriitparams<:I4:onlnit:>n5:ok<W>r6:callreadySthemaSource>r第3章維度配置文件3.1多語言目前支持兩種實現方式單配置文件:里面使用屬性、變量來實現多語言。多配置文件,每種語言用一個文件,只需要寫原始一份,通過插件將生成3份文件。3.2資源屬性、變量3.2.1使用資源屬性文件中指定BOS的資源對象名全路徑:<Resourcename="...''/><?xmlvei?sion=r,l.0,rencoding=,rUTF-8r,?><Schei[L.=i><Resou口:二ename=rrcom.kingdee.eas.framework.bireport.app.schema.Macr0Replacerrr/>定義屬性,格式為#{varname}<Dimensionname=,rBank,rcaption=rr#{bank}rrtable=rrBank,rprimaryKey="FID,r>如上圖例,則框架解析此文件時,將獲取MacroReplacer.resource的bank屬性替換#{bank}。3.2.2使用變量有兩種寫法,在tag屬性值里,用${varname}在tag外面,用<Vrname=”...”/>,用于需要動態變動xml結構的情況。如<Measurename=,r$(dyname}r,caption=rr${dycaption},rcolu<Varname=rrdymeasurerr/>服務端用SchemaSource#setMacroVklue(Stringkey,Stringvalue)方法設置變量。3.2.3某一維度統計<?xmlversion="1.0"encoding="UTF-8"?><Schemaname="room"><Parametername="Fact"type="table"/><Parametername="RoomModelType"type="table"/><Dimensionname="RoomModelType"caption="中標單位"table="RoomModelType"primaryKey="FID"><Hierarchy><Levelname="RoomModelType"column="FID"><Propertyname="caption"column="FName"caption="FName"/></Level></Hierarchy></Dimension><Cubename="Fact"caption="Fact"table="Fact"><DimensionUsagename="RoomModelType"foreignKey="FCompetitorsNameID"/>〈Measurename="FCounter"caption="數量"column="FCounter"aggregator="sum"formatString="#,###"visible="false"/><Measurename="FAQty"caption="中標數量"column="FAQty"aggregator="sum"formatString="#,###"visible="true"/><Measurename="FAAmount"caption="中標金額"column="FAAmount"aggregator="sum"formatString="#,##0.00"visible="true"/></Cube></Schema>3.2.1多維度統計(注意紅字)<?xmlversion="1.0"encoding="UTF-8"?><Schemaname="room"><Parametername="Fact"type="table"/><Parametername="RoomModelType"type="table"/><Parametername="TrackModelType"type="table"/>(Dimensionname="RoomModelType"caption="中標單位"table="RoomModelType"primaryKey="FID"><Hierarchy><Levelname="RoomModelType"column="FID"><Propertyname="caption"column="FName"caption="FName"/></Level></Hierarchy></Dimension><Dimensionname="TrackModelType"caption="產品類型"table="TrackModelType"primaryKey="FID"><Hierarchy><Levelname="TrackModelType"column="FID"><Propertyname="caption"column="FName"caption="FName"/></Level></Hierarchy></Dimension><Cubename="Fact"caption="Fact"table="Fact"><DimensionUsagename="RoomModelType"foreignKey="FCompetitorsNameID"/><DimensionUsagename="TrackModelType"foreignKey="FMaterialID"/><Measurename="FCounter"caption="數量"column="FCounter"aggregator="sum"formatString="#,###"visible="false"/><Measurename="FAQty"caption="中標數量"column="FAQty"aggregator="sum"formatString="#,###"visible="true"/><Measurename="FAAmount"caption="中標金額"column="FAAmount"aggregator="sum"formatString="#,##0.00"visible="true"/></Cube></Schema>3.3Schema翻譯插件Schema文件翻譯插件KingdeeToolkit_1.0.0.jar,獲取地址見后面的相關資源vss.[使用方法]如下圖,將生成3個xml文件:schema_L1.xml英文(需手工翻譯里面的多語言屬性)schema_L2.xml簡體中文schema_L3.xml繁體中文TukerJilgi-Errur.jFilacruReplacet^.Echema.xml1.算冊臃?構建路徑里)重構(X)DeleteAlt+Shi£t+TSchem:dJilacruF:ai-eBireportBaseFacade幽]導入(X)?-BireportBaseFacade導出(0)...BireportBaseFacadeBireportBaseFacadeBireportBaseFacadeBireportBaseFacadeBireportS:airipleFacaBireportS:airipleFacaBireportS:airipleFacaBireportS:airipleFacaTi1?LIT?F5復制CVS路徑簡繁體字典能護ForpertyjT件簡繁體轉換轉換SchemajT件為多語言運行方式溟)此插件還提供屬性文件的翻譯,在形如—properties的文件上右鍵菜單可見:3.4使用方法代碼只需要在RptXXXControllerBin里添加(分四步):protectedSchemaSourcereadySchemaSource(RptParamsparams,Contextctx)throwsBOSException,EASBizException{SchemaSourcess=newSchemaSource();1、寫查詢條件2、維度類型3、拼寫SQL語句4、翻譯坐標軸mdx.append("select{[Measures].Members}oncolumns,{[RoomModelType].members}onrowsfromFact");ss.setCaller(this.getClass());ss.setFilename(configFile);ss.setMdx(mdx.toString());returnss;}增加缺省圖片setShowDefaultChart(boolean)是否顯示缺省圖片(整個表數據對應的圖片),在onBeforeQuery()中調用.addDefaultChart()顯示缺省圖片,在onAfterQuery()中調用,與setShowDefaultChart結合可按維度需求實現是否需要缺省圖片.增加自定義圖片在onAfterQuery()中編寫代碼,如代碼說明:addShowMember:設置需要顯示圖片的成員數據,第一個參數為維度名稱,第二個參數是成員名稱,均不區分大小寫.維度名與成員名需與mdx語句中的命名對應addNotShowMember:設置不需要顯示的成員.注意:在同一維度上,不能同時設置addShowMember/addNotShowMember,只設置”顯示”成員,則其它成員(在圖片上)不顯示,只設置”不顯示”成員,則其它成員默認顯示.setReverse(boolean):表示圖形是否顯示為當前行列交換后的圖形(但表的顯示是不需要交換的)finishDataSet():表示圖片數據設置結束(必須調用且在最后)參考代碼:com.kingdee.eas.fm.fin.client.RptLCFrameAnalysisMainUI3.5臨時表的處理com.kingdee.eas.fm.birt.app.BirtBaseFacadeControllerBean提供,建議不要自己寫創建/刪除臨時表的sql,因為臨時表處理EAS系統有專門的管理:獲取臨時表名:getTempTableName使用o...創建臨時表及數據executeSelectInto>釋放臨時表dropTempTable3.6SQL執行接口com.kingdee.eas.fm.birt.app.BirtBaseFacadeControllerBean提供:_executeQuery_executeUpdate3.7打印設置打印表頭格式方法protectedvoidpreparePrintPageHeader(HeadFootModelheader)返回打印表頭變量方法protectedMappreparePrintVariantMap()3.8輔助類的使用1.條件自動存儲類RptConditionManager一般用法〃條件頁面:獲取條件publicRptParamsgetCustomCondition()(RptConditionManagerrm=newRptConditionManager();rm.recordAllStatus(this);returnrm.toRptParams();}〃設置條件publicvoidsetCustomCondition(RptParamsparams)(RptConditionManagerrm=newRptConditionManager(params);rm.restoreAllStatus(this);}[注]用最新的CustomerParams參數的接口,若要條件支持版本升級,則本輔助類無效,請自行處理。框架默認轉調最新接口到setCustomCondition(RptParamsparams)與RptParamsgetCustomCondition(),即使用此兩方法仍可用非字符竄對象作為條件,但條件方案相關類被修改(客戶升級)后可能報版本不一致錯誤。自動存儲的條件獲取方法RptParams.getObjectElement("name.value");name為條件相應控件的名稱,getObjectElement方法可以用屬性來訪問其中的對象,如,name.value為com.kingdee.eas.framework.DataBaseInfo對象,取其編碼:RptParams.getObjectElement("name.value.number");擴展用法示例publicRptParamsgetCustomCondition()(RptConditionManagerrm=newRptConditionManager();rm.recordAllStatus(this);rm.setProperty("companyIdSet",companyIdSet);bankIdSet=AccessHelper.getIds(AccessHelper.getF7Ids(jbpBank));rm.setProperty("bankIdSet",ban
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 定位課程內容課件
- 鄉鎮護理工作總結
- 2025年社區護士工作方案
- 怎樣制定2025年工作銷售方案
- 2025年國慶節創意活動策劃方案
- 2025年元旦團日活動方案
- 直腸癌的護理查房
- 高績效主管的素養與技能
- 室內裝修結構設計
- CATIA初級班培訓教材(運動分析)1224
- 淺談巖溶隧道設計、施工與管理
- 溫室大棚項目績效管理手冊范文
- 叉車技能比武實施方案
- 上海養老機構服務質量日常監測評價指標90項
- 公務員事業單位考試寫作練習紙
- 《電機定子、轉子沖片和鐵芯》團體標準(征求意見稿)
- 瀕危動物保護聯盟之江豚篇-ppt課件
- 學校中層干部民主測評表(一)
- 餐廳服務員中級操作技能考核試卷
- 焊接質量計劃書
- 中建股份《項目管理手冊》印刷版
評論
0/150
提交評論