SAP Query Reproting的製作(簡單範例)

1.概述

SAP Query爲我們提供了三種Query工具 SAP Query、InfoSet (Ad Hoc) Query、QuickViewer。通常在不特指的情況下我們所說的Query Report就是SAP Query,因爲它的功能較其它兩個工具更加強大些。

InfoSet Query的特點:
¾ Quick Viewer所生成的報表是用戶自定義的報表,只能由此用戶自己使用、維護。
¾ Quick Viewer只能使用存於數據庫內的數據,不能進行計算(除小計、累計) 。
¾ 提供與 SAP內部工具如EIS,ABC,ALV及外部工具如 Word,Excel接口 。
¾ 無須也無法利用用戶組、Functional area統一管理 
¾ 無法傳輸

SAP Query的特別:
¾ Query的管理包括建立 Functional area(功能區)和User Group(用戶組),並將功能區分配到相應的用戶組中去。 
¾ Functional area(功能區)中定義query中需引用的表和字段。 
¾ 只有當一個用戶屬於至少一個用戶組纔可以創建、運行 Queries。一個用戶可以屬於幾個用戶組。用戶組中的用戶享有相同的權力。 
¾ 當 Functional area(功能區)分配給了某用戶組,該用戶組的成員即可以訪問此功能區。 
¾ 一個 Functional area(功能區)可以分配給多個用戶組;多個Functional area(功能區)可以分配給一個用戶組。 
¾ Queries通常爲特定的用戶組和特定的功能區而建立。這個用戶組的用戶可以訪問所有分配給這個用戶組的Queries。

2.實例操作講解SAP Query

簡單來講,製作SAP Query可以用到SQ03(創建用戶組並分配用戶)、SQ02(創建InfoSet並分配到用戶組)、SQ01(在分配好的用戶組中使用信息集來生成Query Reporting)這三個事務代碼。

2.1 創建用戶組並分配用戶 Tcode:SQ03  


Figure1-1:創建新的用戶組 
Figure1-2:保存新的用戶組
Figure1-3:爲新的用戶組分配用戶


2.2 創建InfoSet並分配到用戶組 Tcode:SQ02  

Figure2-1:創建新的InfoSet
Figure2-2:保存
Figure2-3:將InfoSet分配到用戶組


Figure3:指定數據源及其類型。


Figure4:如果使用“包括關鍵字段”,則InfoSet會自動帶入數據源的Key值字段,當然也可以使用其它另外兩個選擇項,不過那樣看上去會有些怪異。


Figure5-1:轉換顯示與更改
Figure5-2:檢查是否有錯誤
Figure5-3:生成信息集InfoSet(重要)
Figure5-4:連接(可以添加數據源連接,較重要)
Figure5-5:附加(可以添加全局字段、對字段進行代碼控制、對選擇屏幕進行控制等,重要)
Figure5-6:查看附加代碼
Figure5-7:增加字段組(當信息集字段相當多時,可以使用它對字段進行分組管理)

Figure6-1:新增字段組並且拉入了一個新的字段Bseg-DMBTR。 用鼠標拖拽的方式把左側的字段拉入右側的信息集InfoSet,或者右擊信息集InfoSet字段進行刪除。操作完成點擊保存按鈕並點擊生成按鈕以生成信息集。

點擊Figure2-3,將信息集InfoSet分配到用戶組。

2.3 創建Query Reporting Tcode:SQ01


Figure7-1:轉到信息集所在的用戶組(Query Reporting可以看做是信息集的派生出的報表,所以第一步應先找到信息集的所在,SQ02把它分配到某個用戶組了,所以這裏應先用這個按鈕轉到此用戶組,重要)
Figure7-2:對Query Reporting進行測試
Figure7-3:爲新的Query Reporting命名
Figure7-4:點擊創建
Figure7-5:快速瀏覽器(這裏就是概述裏講到的QuickViewer)
Figure7-6:信息集查詢(這裏就是概述裏講到的InfoSet)
Figure7-7:Query Reporting列表

Figure8:變更查詢的標題及格式 完成後點擊下一頁或者按F6


Figure9:更改快速瀏覽的選擇字段組(這一頁可以保持默認不變,因爲它的下一頁還要再設置)

Figure10:選擇搜索字段。


Figure11-1:如果將檢查標記放在此複選框中,那麼在選擇字段中只准備一個條目字段.選擇"多選擇"附加字段的按鈕,是可用的,以確保您使用此功能來進行多項選擇. 如果要撤銷激活多選擇功能,那麼將檢查標記放在複選框中.
Figure11-2:若選擇此複選框,就能在選擇屏幕上指定單一值或間隔.選擇額外屏幕的按鈕"多重選擇"不可用,有效預防進行多重選擇.   若想限制選擇以致僅允許選擇單一值,也要在首個複選框中安置一個檢查標記.
注:這裏不能設置搜索條件是否必輸。如需設置,可到SQ02信息集中去設置,我們將在後面講到。

當“下一頁”的按鈕變灰,點擊“基本清單”。基本清單的顯示有兩種格式,一種是圖形查詢繪製器格式設計,另一種是非圖形查詢繪製器格式設計。它們可以通過選中菜單“設置- 設置- 圖形查詢繪製器”的複選框,SAP V4.6或高版本的SAP Query是默認選中此選項的,選中即代表所見即所得的設計格式。


Figure12-1:打開或關閉所有工具(包括排序字段、總計字段、計算字段、工具箱等。重要)
Figure12-2:Query Reporting的顯示字段(打勾的順序是很重要的)
Figure12-3:Query Reporting的搜索字段
Figure12-4:字據字段的下面方框中可以設置字段顯示的寬度、位置甚至顏色等)
Figure12-5:已經打開的小工具(可以拖拽的字段值到小工具欄中,例如將“憑證號碼”字段下方的“ABCDEFGHIJ”拖拽到排序小工具中)
小竅門:如果Query Reporting的字段非常多,顯示順序不太容易設定,可以點擊Figure7-6然後用鼠標去拖動列直到你滿意爲止,這樣是方便的。

測試或保存Query Reporting。


 

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

 


3.Query Reporting高級應用

3.1添加全局字段並使用代碼控制值(多表關聯) TCODE:SQ02


Figure13-1:點擊“附加”
Figure13-2:新建字段(此字段是全局字段,非本地字段。所有使用此信息集InfoSet生成的Query Reporting都可以看到此字段)

Figure14:添加Z_period,意爲顯示憑證的會計期間。(因Bseg中不包含會計期間的信息,而BKPF包含)

Figure15:設置Z_period的簡單參數。

點擊Figure13-3:轉到附加代碼


Figure16:在代碼附加框中錄入上面的代碼,點擊保存並檢查。把左側數據源中自動新增的“附加字段”下面的“Z_period ”字段拉到信息集中,保存並生成。

Figure12-2:下面的Z_period選中打勾即可。


3.2添加全局字段並使用代碼控制值(對查詢結果進行算數運算)    TCODE:SQ02

Figure17:可以在代碼附加中使用簡單的語句實現對查詢結果的算數運算。其它操作如3.1操作。

3.3 對搜索字段設置單選必輸    TCODE:SQ02

Figure18-1:點擊“附加”
Figure18-2:選擇“選擇”頁籤
Figure18-3:新建
Figure18-4:在“創建選擇”窗口輸入名稱,並選擇“選擇指標”

Figure19:格式 “FOR” 輸入 將要設爲單選必輸的字段;附加中輸入“OBLIGATORY NO-EXTENSION NO INTERVALS” 。 保存即可。

3.4 新增本地字段並設置簡單屬性 SQ01

在Figure10中點擊菜單:編輯---短名---打開/關閉

Figure20:輸入自定義短名。

點擊菜單“編輯---局部字段---創建”。

Figure21:在“字段定義”窗口中輸入以上內容。

Figure22:在“基本清單”中選擇剛剛創建的“本地附加字段--金額(局部)”,測試運行。

Figure23:添加了“金額(局部)”的查詢結果。

3.5 新增本地字段並設置圖標屬性 SQ01




Figure24:屬性選擇“符號”,在條件框中輸入條件,並選擇一種符號,保存。

Figure25:輸出結果

3.6 對查詢結果附加操作(使用TR)

點擊Figure5的菜單 “轉到--報表分配”


Figure26-1:點擊"插入行"
Figure26-2:點擊"其它報告類型"


Figure27-1: 選擇TR 事務

Figure28:輸入 FB03   並保存 可以實現雙擊查詢結果聯查到憑證.

3.7 對查詢結果附加操作(使用RT)

如果要實現對查詢更加複雜的操作,那就要選擇Figure27-2使用"RT ABAP報表程序".,選擇這種類型的前提是你已經寫好了一個ABAP報表程序。 如本例,我使用SE38寫了一個小小的程序來實現雙擊查詢行項目聯查到憑證。

*&---------------------------------------------------------------------*
*& Report   Z_QUERY_DELANO1
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT   Z_QUERY_DELANO1.

PARAMETER:   z_BELNR like bseg-BELNR,
             z_BUKRS like bseg-BUKRS,
             Z_GJAHR like bseg-GJAHR.
  set PARAMETER ID 'BLN' FIELD Z_BELNR.
  set PARAMETER ID 'BUK' FIELD z_BUKRS.
  set PARAMETER ID 'GJR' FIELD Z_GJAHR.

call TRANSACTION 'FB03' AND SKIP FIRST SCREEN.



點擊Figure27-2後,在Figure29中錄入你提前寫好的Report名稱,保存。


在查詢結果中雙擊行項目會跳出這樣的窗口來讓你選擇要執行的動作。“顯示憑證”便是使用TR事務添加的FB03,“Z_QUERY_DELANO1“ 是使用RT ABAP報表程序 添加的程序,這兩個都可以實現對查詢結果的附加操作(比如聯查憑證)。



收藏於 2011-02-12

來自於百度空間


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章