




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、自由報表技術紅皮書NC-UAP用友NC-UAP2020-04-041.可擴展區域管理錯誤!未定義書簽2.排序錯誤!未定義書簽3.篩選錯誤!未定義書簽4.固定成員錯誤!未定義書簽5.分組錯誤!未定義書簽6.分組統計錯誤!未定義書簽7.排名函數錯誤!未定義書簽8.TopN分析錯誤!未定義書簽9.交叉錯誤!未定義書簽第三章分析功能綜合應用錯誤!1.分組功能應用錯誤!未定義書簽列表中的多級分組錯誤!未定義書簽交叉表結合分組應用錯誤!未定義書簽2.數據依賴處理區域拼接錯誤!未定義書簽1.報表穿透錯誤!未定義書簽2.報表聯查錯誤!未定義書簽接口 TraceDatalnterfaceTraceDatalnt
2、erface 錯誤!未定義書簽注冊方式錯誤!未定義書簽第一章刖百錯誤!未定義書簽。1.2.3.背景入門自由報表的新建自由報表的格式設計.語義模型的使用可擴展區域數據預覽功能分析功能小結錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽第二章基本功能錯誤!未定義書簽。第四章報表發布節點.錯誤!未定義書簽。1.報表發布2.發布后節點錯誤!未定義書簽錯誤!未定義書簽第五章穿透和聯查錯誤!未定義書簽。1.手工導入導出錯誤!未定義書簽2.安裝盤腳本錯誤!未定義書簽構造平臺中支持自由報表(以及語義模型)的腳本導出
3、.錯誤!未定義書簽發布的報表節點導出錯誤!未定義書簽3.安裝程序錯誤!未定義書簽第六章聯查的執行.工具方法.報表節點的擴展.1.查詢動作擴展2.查詢條件3.區域條件4.業務格式5.格式調整器6.工具方法第七章輔助開發工具.錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽。錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽錯誤!未定義書簽。第一章前言1.背景為滿足各類用戶在報表分析方面的綜合要求,NCMNCM 表產品 IUFOIUFO 從版本開始提供了一個分析型報表的解決方案:自由報表。本文針對 V6V6 自由報表功能進行介紹,但是使用了部分版本的產
4、品截圖,后續會逐步替換。自由報表具有以下特點:1 1 . .針對企業不同業務角色,提供多樣使用方式:報表數據查詢人員可以在報表數據查詢結果上直接構建分析型報表, 而不需具備較深技術背景; 專業的分析報表設計人員則可以全面使用設計功能實現復雜報表的定義和發布;2 2 . .支持多種數據來源:系統內置報表數據提供者和多種語義模型提供者,還支持注冊其他類型語義模型提供者,多來源數據都可以在一張自由報表中進行數據分析和展現;3 3 . .報表支持多區域模型,多個區域按照數據分析結果各自動態展開;多區域和多數據來源之間均可以設置依賴關系,能靈活組合拼裝出各類樣式的復雜報表;4 4 . .格式設計和報表展
5、現效果一致:各種數據分析和格式設置都在設計界面有直觀展現,特別是交叉表的設計方式突破以往,能夠可視化的直接定義維度指標及各類展現效果;5 5 . .提供了分析圖表功能:提供了各類常見圖表分析功能;6 6 . .分析功能和交互性加強: 全面支才 I I 排序/ /過濾/分組/統計/ /交叉/ /排名函數/TopN/TopN 等分析功能, 并具有頁維度和待定參數等交互特性。7 7 . .支持數據追蹤:自由報表中的明細數據和統計數據都支持追蹤到原始數據。8 8 . .針對大數據量的處理:利用數據庫的處理能力進行多級匯總數據的處理,展現層在電子表格中實現平滑分頁,可以分頁加載明細數據。2 .入門使用自
6、由報表的基本流程介紹。2.1自由報表的新建1 1)選擇自由報表功能節點,就會出現如下界面:2 2)接下來我們選中左面目錄樹中的一個目錄,選擇工具欄上的“新增”,如下圖:3 3)報表卡片界面中填寫“自由報表名稱”、“自由報表編碼”,如下圖:4 4)點擊工具欄中“保存”之后,該目錄下的報表列表中就會出現剛才新建的報表,如下圖:2.2自由報表的格式設計1 1)在自由報表界面選中需要格式設計操作的報表,點擊工具欄中的“格式設計”如下圖:2 2)報表的“格式設計”主界面如下:3 3)主界面中主要包含菜單、工具欄、自由報表導航區域、數據顯示區域以及語義模型視圖等部分。如下圖:2.3語義模型的使用1 1)點
7、擊“數據集視圖區域”上方的工具欄中的“插入語義模型”,出現選擇語義模型界面,如下圖,選中已經定義好的語義模型“useruser”。2 2)點擊“確定”,報表設計界面的語義模型信息框中就會出現被選擇的語義模型,如下圖:2.4可擴展區域1 1)可擴展區域是為了放置語義模型的區域,有兩種定義方式,一種是選中一定區域,然后右鍵菜單中選擇“設置可擴展區域”,如下圖:2 2)可擴展區域定義界面如下圖,填寫相應的信息。3 3)點擊“確定”之后,數據顯示區域就會出現此可擴展區域,如下圖:4 4)拖動右面語義模型信息框中語義模型的元數據,放入設置的可擴展區域中,如下圖:5 5)設置可擴展區域的另一種方式:直接拖
8、動右面語義模型信息框中的語義模型,放入數據顯示區域,如下圖:2.5數據預覽功能1 1)定義完可擴展區域,并且放置語義模型之后,就可以對數據進行查看了,點擊工具欄中的“預覽”按鈕,如下圖:2 2)點擊“預覽”之后,數據就會顯示在數據顯示區域,如下圖:2.6分析功能以排序功能為例,介紹分析功能的使用方法1 1)選中可擴展區域中的某一元數據,然后選擇工具欄上的數據分析功能按鈕,如下圖:2 2)點擊工具欄中的“排序”,數據顯示區域顯示如下:3 3)點擊“預覽”,會看到數據按升序來顯示,如下圖。如果此時保存了報表格式,則報表瀏覽時也會按照此排序設置進行報表數據展開。3 .小結自由報表基于語義模型,以電子
9、表格的方式進行報表格式設計,并可以設置各種分析功能。在報表瀏覽狀態依然可以更改各類分析功能,達到實時交互分析數據的效果。第二章基本功能1.%2.可擴展區域管理下面詳細介紹可擴展區域的定義,拆分,合并,移動,復制,刪除等管理介紹。2.%2. .定義可擴展區域選擇一個區域,右鍵設置可擴展區,即可定義個可擴展區。各設置項說明:可擴展區名稱:用于標識和區分各可擴展區,為空時系統默認名稱為其擴展區域。可擴展區域:標記可擴展區在自由報表中的區域。擴展方向:標記區域是橫向擴展還是縱向擴展。限定區域大小: 當選擇“固定大小”時, 可通過“限定行數”和“限定列數”來限制可擴展區擴展后的區域大小。擴展依賴:定義當
10、前區域擴展時依賴的可擴展區域以及依賴擴展點。依賴具體規則參見擴展規則介紹部分的擴展依賴介紹。3.%2. .拆分可擴展區域定義好可擴展區域后,可以對可擴展區域按行或按列進行區域拆分,將當前可擴展區拆分成兩個可擴展區域。4.%2. .合并可擴展區域選中兩個或兩個以上的可擴展區域,可以對這多個可擴展區域進行區域合并,可以指定新合并區域的名稱,并指定要合并到主合并區域,用于可擴展區模型的處理。5.%2. .管理可擴展區域右鍵管理可擴展區域,用于快速管理多個可擴展區域,包括添加,修改,刪除等管理功能。6.%2. .移動可擴展區域可通過修改可擴展區域的區域設置來進行區域移動,也可以直接剪切然后粘貼來移動可
11、擴展區域。7.%2. .復制可擴展區域全選可可擴展區域,然后復制,粘貼即可完成可擴展區域的復制粘貼。可以用 ctrl+c,ctrl+c,ctrlctrl+ +v v 進行快速操作。2.排序可以針對某個擴展區域中的語義模型設置多個排序字段,支持設置排序字段的升降序。在排序字段上顯示升序或降序標記,重復點擊按照升序、降序、取消排序的順序依次變化。多個排序字段時按照從上至下,從左至右的順序確定排序次序。若有分組,排序排序前:排序后:則在組內排序,對分組字段也可以排序,也可以按照分組統計字段進行1 .篩選可以針對某個擴展區域中的語義模型設置篩選,支持使用語義模型的待定參數,給參數設置默認值,在數據態下
12、可以重新設置篩選條件值。支持頁維度。根據選定的擴展區,設置篩選條件,篩選條件作為單獨的功能,在格式態和數據態下都可以使用。語義模型的待定參數可以針對使用語義模型的區域設置默認值。參數值設置與篩選條件作為兩個菜單項,在數據態和格式態都可以使用。在從格式態切換到數據態時以及打開報表預覽數據時自動出參數值設置界面。支持從語義模型中拖拽字段到頁頭形成頁維度,頁維度相當于給所有使用了與頁維度相同語義模型的區域設置了篩選條件。語義模型設置的待定參數與擴展區域的篩選條件以及頁維度一起篩選數據。圖例如下:第一步:給一止一點擊“篩選條件”第.步.瀏覽數據:2 .固定成員對于自由報表的數據展現,我們還提修一種叫做
13、洞定成員”的功能。當對某個字段設置固定成員后, 顧名思義就是在數據展現的時候會按照該字段設置的幾個固定的成員和其順序來展現數據。 其類似于篩選(如同 SQLSQL 中的 inin)但又不同于篩選,如果查詢的數據中沒有固定成員中某個成員,在展現的時候仍然會出現該固定成員,只不過其他的字段沒有記錄而已。比如用戶希望只展現單位 1 1、單位 2 2、單位 3 3 的數據,那么就可以通過對單位設置固定成員來實現用戶希望看到的數據。固定成員的設置過程如下:1 1、打開任意的一張自由報表,選中擴展區域中的任何一個字段,在工具欄中選擇“固定成員設置”按鈕,可對所選擇的字段進行固定成員設置。如下圖 1 1圖
14、1 12 2、如下圖 2 2 是固定成員設置的對話框。當用戶選中“固定成員”復選框后就可以對所選擇的字段設置固定成員了。用戶可通過“添加”、“刪除”按鈕增加和刪除固定成員,同時可以通過“讀取數據”按鈕裝載數據庫中存在的所有成員;通過“向上”、“向下”按鈕調整固定成員的順序,同時可以通過固定成員列表的表頭來對固定成員進行排序,點擊“成員”表 9 9就會按成員值進行排序, 點擊“顯示名稱”表頭就會按成員顯示名稱進行排序; 可以編輯成員的顯示名稱來改變成員在數據展現的時候的顯示名稱。數據已經按條件進行了過濾圖 2 23 3、設置完固定成員后,在自由報表中瀏覽出的數據就僅僅含固定成員的數據記錄,如果數
15、據庫中沒有某個成員的記錄就會出現空行(下圖的302302 單位的數據就是),如下圖 3 3。圖 3 31. .如果想取消字段的固定成員設置,可在固定成員設置對話框中重新選中“默認成員”復選框,就取消了固定成員設置。如圖 4 4、圖 5 5圖 4 4圖 5 52. .以上演示的是普通的行列表的字段的固定成員的設置,交叉表緯度的固定成員設置是相同的操作。注意:1 1、不能對統計字段(一般是數值型的字段)設置固定成員2 2、如果設置固定成員的時候修改了成員的顯示名稱,然后又取消了固定成員設置,但是設置的顯示名稱仍然會生效,除非在默認成員設置列表中將該成員與顯示名稱記錄刪除。3.分組可以針對某個擴展區
16、域中的語義模型設置分組,支持多個分組字段,支持分組統計字段,支持分組內細節數據的交叉。1 1)在一個擴展區域內,如果設置分組字段,則根據分組字段,將數據分組。如果有 2 2個以上的分組字段,則根據分組字段所在的位置確定分組次序,處于最外層的字段作為第一分組順序。如果多個分組字段在 1 1 行,則根據多個分組字段的組合值分組。2 2)可指定放置在區域中的語義模型字段為分組字段;3 3)可在擴展區域的單元中直接定義分組統計函數(會隱含確定一個分組字段),支持的統計函數列表:求和、計數、平均、最大、最小;4 4)設置了多個分組字段時,按照它們放置的位置從上到下、序;5 5)分組字段和統計函數可以指定
17、是否自動合并單元分組操作的界面如下:分組后:從左到右,作為其分組順6.分組前自由報表的分組統計,例是對自由報表的分組數據進行統計分析,分為合計、計數、平均、最大、最小五種類型1 1、建立自由報表 y y 進入格式設計,創建行列區。2 2、然后對擴展區進行分組:3 3、將字段拖入擴展區,插入統計函數:其中,合計、平均是針對數據型,對分組數據進行求和和求平均值;計數是對分組數據進行進行數目統計,最大和最小是對求分組數據的最大值和最小值。4 4、數據預覽,計數函數:7.排名函數排名函數用于計算出某個報表數據在指定范圍內的排名。自由報表在多級分組區域中支持對明細數據字段或者分組統計字段計算排名。1.%
18、2. .排名函數的設置此功能按鈕位于工具欄中,如圖 1-11-1 所示。圖 1-11-1圖 1-21-2設置界面如圖 1-2,1-2,“從大到小”表示按照數據從大到小進行排名; “允許并列”表示數據大小相同時排名相同;“排名范圍”可以在語義模型的字段中進行選擇,如果選擇了某個分組字段,則表示在此分組級次中進行排名,如果非分組字段或者不選擇,則為所有數據范圍內進行排名。2.%2. .明細字段的排名函數圖 2-12-1 是自由報表的格式設計界面,我們選中 F4F4 單元的“貨幣資金”字段,將其設置為排名函數(設置內容同圖 1-21-2)。圖 2-12-1圖 2-22-2圖 2-22-2 是報表瀏覽
19、效果,F F 列就是計算出的貨幣資金在單位范圍內的從大到小排名。如果設置了“允許并列”,并且將排名范圍設置成空(所有數據范圍內排名),則報表效果有所變化,見圖 2-3:2-3:圖 2-32-33.%2. .分組統計字段的排名函數如圖 3-13-1, ,我們也可以將按單位統計的貨幣資金小計(F5F5 單元格)設置為排名函數,這次我們設置的是從小到大進行排名。圖 3-13-1報表瀏覽效果見圖 3-2,3-2,紅色字體的就是貨幣資金單位小計的排名。圖 3-23-28.TopN分析TopNTopN 分析是一種常見的報表數據分析功能,可以按照數據大小過濾出前 N N 行用戶最關注的業務數據。自由報表在多
20、級分組區域中支持 TopNTopN 分析功能,在明細數據字段或者分組統計字段上均可設置。2 .TopNH.TopNH的設置此功能按鈕位于工具欄中,如圖 1-11-1 所示。1-11-11-21-2設置界面如圖 1-21-2,數據分析行數”表示用戶關注的數據行數;可選擇數據排列方式;“補足行數”的意思是當數據不足時,是否要用空數據補足數據分析行數,這個設置有助于報表結果的工整和美觀;設置“顯示“其他”表示多于分析行數的數據會進行匯總并顯示為“其他”行。設置完成后,在所設置的單元格的右上角會顯示 topNtopN 標記:1-31-33 . .在明細數據中設置了 TopNTopN析的效果圖 2-12
21、-1 是自由報表的格式設計界面,我們選中“貨幣資金”字段,為其設置 TopNTopN 分析(設置內容同圖 1-21-2)。2-12-12-22-22-32-3我們對比一下設置前后的報表瀏覽效果(分別是圖 2-22-2 和圖 2-32-3), ,可以發現,貨幣資金值最大的前 3 3 行數據依然顯示,而其他數據行匯總后顯示成了一行數據。4 . .分組報表中明細數據設置 TopNTopN析的應用效果這一次,我們對數據按照單位編碼進行分組,圖 3-13-1 顯示區域中已經設置單位編碼字段為分組字段。3-13-13-23-2圖 3-33-3我們再來對比一下設置前后的報表瀏覽效果(分別是圖 3-23-2
22、和圖 3-33-3), ,可以發現,每個分組內部貨幣資金值最大的前 3 3 行數據依然顯示,而其他數據行匯總后顯示成了一行數據。如果我們在 TopNTopN 分析中選擇“補足行數”,就會發現報表變得非常工整了,見圖 3-4:3-4:圖 3-43-45 . .分組報表中對小計字段設置 TopNTopN析的應用效果可擴展區域中已經設置了按照單位編碼進行分組,如圖 4-14-1 所示。我們對按單位統計的貨幣資金小計(D5D5 單元格)設置 TopNTopN 分析,為了數據對比方便,這次的分析行數設置為 2 2。4-14-14-24-24-34-3我們再來對比一下設置前后的報表瀏覽效果(分別是圖 4-
23、24-2 和圖 4-34-3), ,單位貨幣資金小計值最大的前 2 2 個分組數據依然顯示,而其他分組數據小計匯總后顯示成了一行數據。6 . .需要注意的規則為了用戶設置方便,我們并不限制設置 TopNTopN 分析的字段個數。但是實際上在每個分組級次中,只有檢測到的第一個 TopNTopN 分析生效。例如圖 2-12-1 中的一個普通列表,如果對后面的 4 4 個字段都設置了 TopN,TopN,最終的報表展示也是圖 2-32-3 的效果,系統會將統一級次的其他 TopNTopN 分析自動置成不啟用。9.交叉交叉表制作一般流程:1 1)選定合適的區域設置成擴展區域;2 2)將語義模型中的數據
24、通過拖拽操作放置在設置好的擴展區域中的相應位置;3 3)根據需要選擇適當的交叉點設置交叉區域;4 4)設置好交叉表后進行數據的瀏覽;2.%2. .擴展區域的設置選中區域鼠標右鍵點擊設置可擴展區域,如下圖:點擊確定如下圖所示3.%2. .擴展區域字段的設置將語義模型中的字段通過拖拽操作放置在設置好的擴展區域中的相應位置如下圖:4.%2. .交叉區域字段的設置選中擴展設置好的擴展區域進行交叉區域的設置,如下圖:A1:C5A1:C5 為交叉區域、B2B2 及貨幣資金為交叉點、B2:C5B2:C5 為指標區域,交叉點相當于行列維度坐標軸的原點(交叉區)5.%2. .進行交叉區域數據的瀏覽點擊瀏覽后數據
25、展現如下圖,同一單位同一年度不同月份的合計值第三章分析功能綜合應用自由報表還支持設置區域之間的數據依賴關系,各種分析功能結合起來,靈活應用就可以組裝出較為復雜的報表。*.分組功能應用分組常見的應用有兩種,一是對列表中的分組應用;二是對交叉表結合分組應用。*列表中的多級分組1 1)如下一組數據(圖 1 1), ,直接預覽時數據就是自由展現,那么用戶就需要對數據利用單位名稱、幣種、會計期間等字段進行一些分組加工以便能讓更容易對數據進行分析比較。圖12 2)首先我們先對單位名稱字段設置分組,那么數據按單位進行分組,并且得出按單位分組合計值3 3)在單位下還有幣種和會計期間字段,可以根據需要再設置分組
26、,對數據繼續細化(圖4 4、圖 5 5)。圖54 4)另外一種格式展現效果如下(圖 6 6)是 1 1 單位 20092009 年 3 3 月的銷售清單,為了更直觀的掌握銷售情況可以進行如下多層分組(圖 7 7)。圖6格式設計如下:圖7數據展現如下(圖 8 8): :圖8*交叉表結合分組應用圖 1 1 中的數據用交叉表展示時,分組也可以和交叉表結合在一起使用(圖 9 9)圖9展示如下:圖10*.數據依賴處理區域拼接用戶可能會需要設計一些較為復雜的統計表,例如數據來源于不同的系統,或者對于數據有不同的統計口徑,而這些數據又要集中體現在一張統計報表中。之前的產品,如果用戶想處理復雜數據,只能利用查
27、詢引擎的功能,做數據表的關聯或者定義復合查詢,然后才能把一個查詢引入到報表中來。查詢的設計太過復雜,針對一個查詢的報表設計的靈活性和直觀性又都比較差。V55V55 自由查詢中使用多個可擴展區域的數據依賴功能解決了這個難題。交叉表是一種常用的報表統計樣式。自由報表中交叉表的設計比較直觀:在一個可擴展區域內,可以拖入行列維度字段和設置統計指標,并可以直接設置各類指標名稱和單元格式。還可以設置是否顯示行列標題。由此,對于復雜的統計報表,我們給出的解決方案是:根據報表數據內容,將其拆分成多塊,這樣每一塊的數據來源單一且統計口徑簡單。每一塊都可以利用一個可擴展區域來設置,而各塊之間,只要通過設置數據依賴
28、關系,并且選擇性地隱藏某些塊的行列表頭,就能使這些數據對應起來,最終拼接成一個無縫復雜報表。交叉表如圖 3-013-01, ,單個交叉表的設計界面比較直觀。圖3-01交叉表的設計界面圖 3-023-02 是交叉表的數據瀏覽結果。圖3-02交叉表展開效果復雜報表的拼接如圖 3-033-03, ,設置兩個交叉表,并設置其數據依賴關系,同時設置右邊的區域“不顯示行表頭”。數據依賴關系的內容是(地區名稱依賴于區域 1 1.地區名稱客商名稱依賴于區域 1 1.客商名稱)圖 3-033-03 兩個區域設置數據依賴關系如圖 3-04,3-04,這樣的兩個交叉表最終瀏覽結果看起來就是一個統計表啦。圖 3-04
29、3-04 拼接的展開效果第四章報表發布節點#.報表發布在自由報表管理功能中,可以對設計好的自由報表進行“發布節點”,對于第一次發布的節點,可以在發布向導中同時進行功能和菜單的設置。如果希望將多張自由報表繼續發布到同一個功能節點,則可以選擇“追加”方式,然后選擇一個已有節點進行發布即可。發布設置界面如下:#.發布后節點自由報表發布后的節點成為一個普通 N8N8 能,功能注冊、菜單注冊和功能權限控制都是 NCNC統一機制管理的。這個節點我們一般稱之為一個報表節點。報表節點中的多張報表共用查詢條件,這意味著查詢條件或者查詢方案的變化會作用到本節點的所有報表上面。報表節點的典型界面如下:報表節點的主要
30、交互方式:打開節點節點內所有報表在右邊以多頁簽形式打開,顯示報表基本格式,但是不加載報表數據。點擊查詢根據節點的查詢模板配置等內容,如果有查詢條件輸入界面,則彈出界面供用戶設置。根據查詢條件進行報表數據的加載和顯示。選擇查詢方案對于左側面板顯示的用戶已保存的查詢方案,鼠標點擊時直接按照查詢方案內容進行報表數據加載和顯示。切換報表頁簽按照當前的查詢條件/查詢方案內容,進行對應報表數據加載和顯示。第五章穿透和聯查.報表穿透自由報表穿透是指按照用戶在報表格式中設定的穿透規則,進行關聯報表的數據查看。報表穿透暫時沒有提供業務擴展機制。目前支持兩種方式:穿透到單張自由報表直接瀏覽;穿透到自由報表發布后節
31、點。.報表聯查報表聯查是根據業務需要進行當前報表的關聯數據查看等動作,這是一個業務擴展機制,需要業務產品根據擴展機制進行聯查功能的開發。接口TraceDatalnterfacepackage*業務聯查接口,由業務組根據具體業務去實現*authorwanyonga*/publicinterfaceTraceDatalnterface(ITraceDataOperator口provideTraceDataOperator();聯查操彳接口ItraceDataOperator主要方法有:/*業務聯查菜單下注冊菜單項的名字*return*/publicStringgetMenuItemName();/
32、*擴展追蹤動作*return*/publicAction口ctreateExtensionActions();/*執行業務聯查各業務模塊根據需求執行聯查操作paramcontainer聯查過程中彈出對話框等需要的父組件Oparamparam聯查參數*/publicvoidtraceData(Containercontainer,TraceDataParamparam);注冊方式業務模塊需要首先將接口 TraceDataInterfaceTraceDataInterface 的實現類注冊到iufo_tracedataregister1然后在“報表平臺-分析建模-語義模型管理”節點中,為已經建立的
33、語義模型配置聯查接口實現類。聯查的執行報表節點中,如果引用的語義模型中配置了聯查接口實現類的話,會在聯查菜單下出現具體業務聯查菜單項,每個菜單項會調用到對應的聯查動作 ActionAction。工具方法在報表節點內進行報表切換,可使用報表平臺提供的工具方法:publicclassFreeReportFuncletUtil/*在發布后節點內切換報表顯示*paramcontainerparamreportIDparamdrillParamreturn/publicstaticbooleanshowReport(Containercontainer,StringreportID,FreeReport
34、DrillParamdrillParam)方法參數說明:Containercontainer:父窗口。StringreportID:目標報表的id。FreeReportDrillParamdrillParam:自由報表打開時的穿透參數。穿透參數是自由報表進行報表數據加載的一種參數條件。在報表執行的時候,如果發現上下文中有報表穿透參數,則會執行查詢交互接口IQueryAction的doQueryByDr川方法。此方法具體內容詳見第六章的擴展機制介紹。如果需要打開另一個報表節點,則推薦使用下面的工具方法:publicclassFreeReportFuncletUtil/*通過聯查參數打開報表節點中
35、的指定報表*paramfuncodeparaminitDatareturn/publicstaticbooleanopenReportNode(Stringfuncode,FuncletInitDatainitData)方法參數說明:Stringfuncode:目標節點的功能編碼。FuncletInitDatainitData:這是UAP封裝的打開節點時的初始數據對象。對于報表節點的打開,要求這個FuncletInitData對象的initData屬性實現IReportNodelnitData接口,便于從中獲取穿透參數:/*自由報表發布節點的初始數據對象接口,用于傳遞報表穿透參數*/publi
36、cinterfaceIReportNodelnitData/*返回自由報表通用的穿透參數*return/publicFreeReportDrillParamgetReportDrillParam();第六章報表節點的擴展除了上面介紹的聯查外,報表節點支持以查詢菜單的動作為入口的一系列業務擴展機制。.查詢動作擴展查詢動作接口為:,主要完成查詢菜單和查詢方案等界面交互功能。其實現類應該在 clientclient 中。報表平臺提供了此接口的默認實現:DefaultQueryAction。/*“查詢”交互的擴展*/publicinterfaceIQueryActionpublicstaticfina
37、lStringKEY_IQUERYACTIONKEY_IQUERYACTION/*“查詢”菜單的執行動作*paramparentparamcontextparamreportModelparamoldConditionreturn/publicabstractIQueryConditiondoQueryAction(Containerparent,IContextcontext,AbsAnaReportModelreportModel,IQueryConditionoldCondition);/一二查詢交互的對話框,需要從中獲取查詢方案面板paramparentparamcontextpara
38、mreportModelparamoldConditionreturn/publicabstractQueryConditionDLGgetQueryConditionDlg(Containerparent,context,AbsAnaReportModelreportModel,IQueryConditionoldCondition);/*根據指定查詢方案進行查詢paramparentparamcontextparamreportModelparamquerySchemereturn/publicabstractIQueryConditiondoQueryByScheme(Container
39、parent,IContextcontext,AbsAnaReportModelreportModel,IQuerySchemequeryScheme);根據外部送入的穿透參數進行查詢*paramparentparamcontextparamreportModelparamdrillParamreturn/publicabstractIQueryConditiondoQueryByDrill(Containerparent,IContextAbsAnaReportModelreportModel,FreeReportDrillParamdrillParam);*paramreportModel
40、*/publicabstractvoiddoPageDimFilter(Containerparent,IContextcontext,AbsAnaReportModelreportModel);一頁維度過濾的事件處理*paramparent*paramcontextIContextcontext,2.查詢條件查詢擴展中查詢交互、按方案查詢和按穿透參數查詢三個方法的返回值都是查詢條件。報表執行過程中會使用此查詢條件,并將其放在上下文中進行傳遞。例如語義模型執行時就可以使用鍵值FreeReportContextKey.KEY_IQUERYCONDITION從上下文中獲取此條件對象。此接口的實現類
41、應該在 publicpublic 中。報表平臺提供了此接口的默認實現:BaseQueryCondition。/三四*“查詢”交互返回的條件*/publicinterfaceIQueryConditionextendsSerializable,Cloneable/*是否繼續本次查詢*returnboolean*/publicabstractbooleanisContinue();返回針對各個區域的條件設置*paramareaName報表擴展區域名稱paramsmartModel引用的語義模型returnIAreaCondition/publicabstractIAreaConditiongetA
42、reaConditions(StringareaName,SmartModelsmartModel);/*返回報表格式模型的調節器三returnIReportAdjustor*/publicabstractIReportAdjustorgetReportAdjustor();/*返回業務邏輯對報表單元格式(包括精度)的處理器*returnIBusiFormat*/publicabstractIBusiFormatgetBusiFormat(StringareaName,SmartModelsmartModel);3.區域條件自由報表中語義模型的執行是以擴展區域為單位的,獲取其語義模型執行條件。
43、此接口的實現類應該在 publicpublic 中。所以查詢條件中需要針對每個擴展區域報表平臺提供了此接口的默認實現:/*為報表中各個區域設置的“查詢”條件*BaseAreaCondition。*/publicinterfaceIAreaCondition/*返回額外設置的語義模型描述器數組,包括:排序、篩選、匯總等returnDescriptor*/publicabstractDescriptorgetAllDescriptors();/*/返回外部設置的報表區域參數數組returnParameter口publicabstractParametergetParameters();4.業務格式
44、業務格式接口用于實現業務邏輯對報表數據的特殊格式要求。此接口的實現類應該在 publicpublic 中。/*業務邏輯對報表格式的處理接口*/publicinterfaceIBusiFormatpublicstaticintBUSIFORMAT_TYPE_NOBUSIFORMAT_TYPE_NO 佻 E E*paramareaname擴展區域名稱paramanaModel報表模型paramdoSetParamValue是否設置該擴展區域參數的值取新報表參數的值return/publicstaticbooleanaddReportParameter(AbsAnaReportModelanaMod
45、el,booleandoSetParamValue);/*根據交叉區內容設置重新設置交叉區*paramcrossAreaContentSetparamanaModelreturn/publicstaticbooleanresetCrossAreaByCrossAreaContent(CrossAreaContentSetcrossAreaContentSet,AbsAnaReportModelanaModel);/*根據區域內容設置某些字段進行隱藏*paramareaContentSetparamanaModelreturn/publicstaticbooleanresetExCellByHi
46、deFields(AreaContentSetareaContentSet,booleanhideCalcFields,AbsAnaReportModelanaModel);/*直接設置表格中指定單元位置的內容*paramcellInfosparamanaModelreturn/publicstaticbooleanresetCellInfo(ExCellInfoSetcellInfos,AbsAnaReportModelanaModel);/*直接設置頁維度項目*paramsmartIDparamcondItemsreturn/publicstaticbooleanresetReportCondition(StringsmartID,ReportConditionItemcondItems,booleanclear,AbsAnaReportModelanaModel);/*設置指定字段的固定成員*paramfieldNameparamfixVal
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 河南省青桐鳴2024-2025學年高二下學期3月聯考 數學人教版【含答案】
- 濰坊食品科技職業學院《互動光媒與空間》2023-2024學年第一學期期末試卷
- 山東省臨沂市臨沂市蒙陰縣達標名校2025年中考物理試題命題比賽模擬試卷(13)含解析
- 江西科技師范大學《萬物互聯的通信時代》2023-2024學年第二學期期末試卷
- 內蒙古機電職業技術學院《典型優化問題的模型與算法》2023-2024學年第二學期期末試卷
- 山西省臨汾市古縣2024-2025學年數學三下期末調研試題含解析
- 嘉興南洋職業技術學院《BIM技術與應用C》2023-2024學年第二學期期末試卷
- 上海市上外附中2024-2025學年高三第一次段考物理試題含解析
- 廈門市重點中學2024-2025學年招生全國統一考試仿真卷(十二)-高考英語試題仿真試題含解析
- 江蘇省南京玄武區重點中學2025屆初三英語試題下學期第一次月考試題含答案
- 《中外建筑史》課程標準
- 這個殺手不太冷解析
- 造口袋技術要求
- 國家開放大學(江西)地域文化(專)任務1-4試題及答案
- QCR 409-2017 鐵路后張法預應力混凝土梁管道壓漿技術條件
- 南師地信培養方案
- 采購工作調研報告(3篇)
- 10KV高壓開關柜操作(培訓課件PPT)
- 希爾國際商務第11版英文教材課件完整版電子教案
- 《學弈》優質課一等獎課件
- 2023年6月大學英語四級考試真題(第1套)(含答案)
評論
0/150
提交評論