SAP QUERY攻略大全
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
繼「SAPWebService開發設定及呼叫」、「SAP權限物件內部運作及機制」、「Web Dynpro Abap與Flash Island應用開發」及「SAP特殊物件傳送」之後,由於擔任公司教育訓練講師,所以推出系列第五及第六作。
第六作:該文件講解SAP QUERY攻略大全(依照情景逐步進行練習以熟悉基礎及進階功能)。
前置說明:由於該文件主要說明功能操作,故利用下列結構簡化主題:
情境1:infoset金額幣別欄位轉換操作(於Query顯示時,幣別位數及格式正確顯示) 操作:
輸入交易代碼SQ02新增InfoSet
選擇表格合併及輸入基礎表ANLA
插入合併表格ANLC
系統由table外鍵設定帶出預設關連,之後按下圖綠色←功能
若無價價值資產也需要出現,則可以於關連右鍵選擇左外部合併,該範例不使用
由於InfoSet產生後會以邏輯群組的方式呈現給Query開發者(SQ01),下列選項就是預設要帶入邏輯群組的欄位:
包括所有表格欄位→帶入所有table欄位到邏輯群組
包括鍵值欄位→只帶入Table的Key欄位到邏輯群組
建立空白欄位群組→不帶入欄位到邏輯群組
利用拖拉方式調整資料欄位及欄位群組
最後結果
接著設定幣別欄位,雙擊累計取得和生產成本欄位如下圖,可知幣別參考欄位為T093B-WAERS
點選「其他」功能→代碼→1資料區塊中填入TABLES T093B.
再來於2start-of-selection區塊中填入T093B-WAERS = ‘TWD’.這是因為確定報表只顯示本國幣,若報表每個ROW可能有多幣別顯示狀況,則需要將相關程式寫在5記錄處理
存檔後按產生→產生InfoSet
輸入交易代碼SQ03設定使用者群組及InfoSet權限關連
輸入交易代碼SQ01→新增查詢報表YTESTDEM1→新增
選擇InfoSet
點選基本清單→設定選擇欄位及清單欄位
存檔後測試,報表金額欄位及幣別正常顯示
情境2:infoset附加欄位設定操作(定義InfoSet附加欄位「單價」=價值/ 數量) 操作:
承情境1,輸入交易代碼SQ02→其他→新增附加欄位
設計附加欄位程式碼
在欄位群組中將附加欄位「單價」拉到02欄位群組供Query(sq01)使用→存檔及重新產生InfoSet
於SQ01的基本清單中點選「清單欄位」
測試結果
注意:若是由SQVI轉換SAP Query的話,其InfoSet的通用屬性→定點運算預設是沒有勾選的,以該情境來說,單價計算結果會和我們預期不同,例如原本A 資產100元數量為2→單價=價值/數量,若定點運算未勾選,則數量2.000會被看為整數2000
→
情境3:sap query(SQ01)附加欄位(定義query附加欄位,若數量大於1則顯示圖示黃燈) 操作:
承情境2,輸入交易代碼SQ01→下一個畫面→下一個畫面
→
於欄位畫面→選單「編輯」→簡短名稱→開
由於數量為判斷條件,故於數量的簡短名稱填入MENGE以便附檔欄位參考
再來建立Query的附檔欄位:選單「編輯」→區域欄位→建立
填入附加欄位的簡短名稱、欄位顯示的種類(該情境為圖示)及計算公式如下圖
選擇複式計算可設定多重條件及查詢可使用的語法類型
點選圖示及符號功能可查詢能使用的圖示及符號
點選欄位可列出目前已設定簡短名稱之欄位
於基本清單中,將本端附加欄位(Query附加欄位)列於清單欄位中
測試結果
情境4:infoset自定義選擇欄位與使用者互動(由使用者決定數量警示的臨界值)
操作:
承情境3,輸入交易代碼SQ02→其他→選擇→新增selection parameter。若有寫過Abap報表,該步驟就是定義Parameter(單一條件)或Select-Option(多重條件),所以也可以在「代碼」→1資料的區塊中自己寫code
設定資料類型(本情境設定1位整數0~9)及強制使用者輸入
增加InfoSet附加欄位,以便隨Row帶入到Query(sq01)中供公式判斷
於附加欄位LIMIT中撰寫下列代碼:將使用者輸入之臨界值指派給附加欄位並隨ROW帶到
Query(SQ01)
將附加欄位拉進欄位群組→存檔→重新產生InfoSet
如下圖操作,先於InfoSet附加欄位加上簡短名稱,再更改原本端附加欄位的數量警示公式
將原來的常數1調整為使用者輸入的LIMIT臨界值
測試結果,原本數量2的黃燈因為臨界值為2,所以不顯示
情境5:sap query統計表(以資產類別為基準,將數量進行彙總)
操作:
承情境4,輸入交易代碼SQ01→統計
設定統計清單依資產類別、數量顯示,同時進行資產類別排序,彙總計算欄位(金額or數量)輸出欄位需要指定顯示單位進行轉換(例如台幣+日幣→換算為美金加總顯示),同時彙總計算欄位預設輸出加總值,可額外設定總件數、平均值或佔比。另外可同時設計多個統計清單於報表顯示
由於報表目前包含了基本清單及統計清單,所以將輸出格式調整為「ABAP清單」以便正常
顯示
可利用輸出順序調整各清單顯示順序
測試結果→下一個區段
統計列表
情境6:sap query等級表(以資產編號為基準,列出價值最高的前10筆資產)
操作:
承情境5,輸入交易代碼SQ01→等級表
輸入等級表標題,並設定資產編號及價值欄位排列
設定等級表清單依資產編號進行數量比較,比較計算欄位(金額or數量)輸出欄位需要指定顯示單位進行轉換(例如台幣與日幣比較→換算為美金再比較後輸出)。另外可同時設計多個等
級清單於報表顯示
可利用輸出順序調整各清單顯示順序,本例將等級表調整顯示順序1
測試結果