


下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、錯誤!未定義書簽。第一章編程簡 介概覽內容事務.動態(tài)程序.ABAP/4 模塊池.動態(tài)程序和 ABAP/4 模塊池之間 的交互作用.本節(jié)介紹編程。將 描述下列:事務 (頁 錯誤!未定義書簽。)事務示例 (頁 錯誤!未定義書簽。)動態(tài)程序 (頁 錯誤!未定義書簽。)ABAP/4 模塊池 (頁 錯誤!未定義書簽。)動態(tài)程序和 ABAP/4 模塊池之間的交互作用 (頁 錯誤!未定義書簽。)錯誤!未定義書簽。事務事務是實施 與用戶的程序。在 典型的中,用戶可 以在系統(tǒng)顯 示的屏幕上 輸入或請求 信息。作為 對用戶輸入 或請求的響 應,程序執(zhí) 行適當?shù)膭?作:轉到下 一個屏幕, 顯示輸出或 更改數(shù)據(jù)庫 。
2、要滿足這樣 的請求,程序必須 提供:友好的用 戶界面對用戶輸 入的數(shù)據(jù)格 式化并作一 致性檢查輸入錯誤 的簡易糾通過將數(shù) 據(jù)在數(shù) 據(jù)庫中來數(shù)據(jù)。ABAP/4 提供不同的 工具和語言 要素以滿足程序中 上述要求。程序的 結構 程序包 含下面的基 本組件:屏幕(動 態(tài)程序)SAP 系統(tǒng)中的每 個都是 由動態(tài)程序 控制的。動 態(tài)程序包含 一個屏幕和 它的流邏輯 并且精確控 制一個步驟。流邏 輯決定在顯 示屏幕前( 輸出前的 PBO 處理)和接 收到用戶在 屏幕上制作 的條目后( 輸入后的 PAI 處理)進行 的處理。在屏幕繪制 器中固定的 屏幕格式決 定輸入/輸 出字段、文 本字段和諸 如單選按鈕以
3、及復選框 之類的圖形 元素的位置 。另外,菜 單繪制器允一個或 多個 GUI 狀態(tài)下菜單、圖表 、按鈕及功 能鍵。動 態(tài)程序和 GUI 狀態(tài)都指向 控制動態(tài)程序和 GUI 狀態(tài)的運行 順序的 ABAP/4 程序。ABAP/4 模塊池每個動態(tài)程 序都精確指 向一個 ABAP/4程序。 這樣的程序也稱為 模塊池,原 因是它包含 交互模塊。 動態(tài)程序的 流邏輯包含 從相應模塊 池中調用模 塊。在 PBO 事件中調用 的交互模塊 依照上下文 進行屏幕模 板的準備, 例如通過設 置字段內容 或通過顯示不需要 的字段等方 式準備屏幕 模板。在 PAI 事件中調用的交互模塊 用于檢查用 戶的輸入并 觸發(fā)合適
4、的步驟, 例如更新任 務。從一個事務 中調用的所 有動態(tài)程序 都指向一個 公用模塊池 。模塊池的 動態(tài)程序是的。默 認情況下, 系統(tǒng)為每個 動態(tài)程序下一個要 顯示的動態(tài) 程序。該動態(tài)程序序列 或鏈可以是 線性的也可 以是環(huán)型的 。在動態(tài)程 序鏈中甚至 可以調用另一個動態(tài)程 序鏈,并且 在處理它之 后返回原始 鏈。傳輸字段數(shù) 據(jù)如何在屏幕 上顯示 ABAP/4 模塊中已知 的字段?如屏幕上 的用戶條目 傳輸給模塊 ?與報表編程相反,不 能用 WRITE 語句將字段 數(shù)據(jù)寫入屏 幕。系統(tǒng)通 過屏幕字和 ABAP/4 變量名的比 較旗 SAP 教育旗 Alex:712635080咨詢:400 686
5、 9778:htt某個旅行社 想預定航班 。旅行社在 屏幕上輸入 相應的數(shù)據(jù) 。系統(tǒng)或者 確認期望的請求,也就 是說,旅行 社可以預定 航班,并且 旅客可以在 期望的日期 、坐預定的 座位到選定 的目的地, 或者系統(tǒng)顯 示航班已經 預定的信息 。來代替數(shù) 據(jù)傳輸。如 果兩個名稱 相同,它將 屏幕字顯示屏幕 之前和之后 立即發(fā)生上 述過程。傳輸給 ABAP/4 程序字段, 反之亦然。 在字段屬性在屏幕制作 器中定義所 有動態(tài)程序 屏幕字段的 屬性。如果 屏幕中的字對應于 某個 ABAP/4 詞典字段的 名稱,則系 統(tǒng)自動建立 這兩個字段 之間的參考 。因此自動 從 ABAP/4 詞典中動態(tài)程序中
6、 的大量字段 屬性。字段 屬性和數(shù)據(jù) 元素以及分 配的詞典字 段形成了動 態(tài)程序在段的自動格 式檢查,自 動值范圍檢 查,聯(lián)機幫 助,等等) 中執(zhí)行的標 準函數(shù)的基 礎。(屏幕字錯誤動態(tài)程序處 理器的另一 個任務是管 理錯誤。使用 ABAP/4 詞典的檢查 表格自動檢 查輸入數(shù)據(jù)或者通過 ABAP/4 程序本身檢 查。動態(tài)程 序處理器包 括接收屏幕 中的錯誤消 息并將屏幕 返回用戶。消息可以是 上下文敏感 的,也就是 說,系統(tǒng)用 當前字段內 容替換消息 文本中的占 位符。另外 ,只有內容 與錯誤有關 并且可以糾 正錯誤的字 段才可以接 收輸入。關 于錯誤處理 的詳細信息 ,請參見處理錯誤和消息
7、 (頁 Error! Not a valid link.) 。數(shù)據(jù)一致性要在復雜的 應用程序中 保持數(shù)據(jù)一 致性,ABAP/4 提供優(yōu)化數(shù) 據(jù)庫更新的 技術,對它 的操作獨立 于下面的數(shù) 據(jù)庫并符合 編程的 特殊請求。關于數(shù)據(jù)庫 更新的詳細 信息,參見 編程數(shù)據(jù)庫更新 (頁 Error! Not a valid link.) 。為了說明事 務的概念和 用法,提供 下面的事務 示例。錯誤!未定義書簽。事務示例事務 TZ10( 開發(fā)級別 SDWA) 是隨系統(tǒng)傳 遞的。該事 務僅包含一 個動態(tài)程序 。用戶可以 輸入一個航 空公司的標 識和航班號 以請求航班 信息:如果用戶選 擇“顯示” ,則系統(tǒng)從
8、數(shù)據(jù)庫中檢 索請求的數(shù) 據(jù)并顯示它 :事務 TZ10 的結構在下 面的中 描述:錯誤!未定義書簽。動態(tài)程序每個屏幕都 包含用于顯 示或請求信 息的字段。 字段可以是 文本串、輸 入或輸出字 段、單選按 鈕、復選框 或按鈕。事 務 TZ10 的屏幕僅包 含文本和輸 入/輸出字 段。SAP 動態(tài)程序包 含幾個組件 :流邏輯: 為屏幕調用 ABAP/4 模塊。屏幕格式 :屏幕上文 本、字段、 按鈕等的位 置。屏幕屬性 :屏幕號、 后續(xù)屏幕號 及其它。字段屬性 :屏幕上單 獨字段的屬 性定義。用戶在屏幕 制作器中創(chuàng) 建或編輯動 態(tài)程序的所 有組件。要 調用屏幕制 作器,在對 象瀏覽器中 創(chuàng)建一個動 態(tài)
9、程序或雙 擊現(xiàn)有的動 態(tài)程序,然 后對象瀏覽 器調用屏幕 制作器。在 那里可以輸 入新動態(tài)程 序的流邏輯 。按相應的 按鈕可以“屏幕屬 性”、轉到 全屏幕編輯 器或者選擇 按鈕“字段 列表”更改 字段屬性。關于屏幕制 作器的詳細 信息,參見 文檔 ABAP/4 開發(fā)工作臺:工具 (頁 Error! Not a valid link.) 。屏幕屬性從用戶的觀 點看,事務 是一系列一 個接一個顯 示的屏幕。 如何決定該 順序呢?事 務的屬性決 定了要顯示 的第一個屏 幕。單個動 態(tài)程序的屬 性決定了在 當前屏幕之 后要顯示的 屏幕。也可 以在 ABAP/4 程序中動態(tài) 設置后續(xù)屏 幕號。因為沒有調
10、 用后續(xù)屏幕 ,所以本示 例不需要更 改屏幕屬性 。布局選擇“全屏 ”轉到屏幕 編輯器。在 此可以決定 屏幕的布局 。對于事務 TZ10, 可以從 ABAP/4 詞典的表格 SPFLI 中所需 的字段。關 于全屏幕編 輯器的詳細 信息,參見 ABAP/4 開發(fā)工作臺:工具(頁 Error! Not a valid link.)字段屬性要顯示和修 改單獨字段 的屬性(輸 入/輸出字 段、請求的 輸入、可能 條目按鈕、 不可見等等 ),請使用 “字段列表 ”。字段“ 公司”(SPFLI-CARRID) 和“航班號 ” (SPFLI-CONNID)定 義為輸入/輸 出字段。所 有其它字段 僅用于航班
11、 數(shù)據(jù)的輸出 。流邏輯動態(tài)程序的 流控制代碼 包括句法上 與 ABAP/4 相似的一些 語句。但不 能在 ABAP/4 中使用流控 制關鍵字, 反之亦然。 在屏幕制作 器中輸入流 控制代碼作 為動態(tài)程序 的一個組件 。旗 SAP 教育旗 Alex:712635080咨詢:400 686 9778:htt事務 TZ10 的動態(tài)程序 的流控制如 下所示:PROS BEFORE OUTPUT. MODULE SET_SUS_0100.*PROS AFTMODULEMAND_0100.PROS 語句序命名事 件類型,MODULE 語句告訴系 統(tǒng)為該事件 調用的 ABAP/4 例程。在該 示例中每個 事
12、件 PBO 和 PAI 只有一個 MODULE。 但一個事件 可以包含帶 有多個關鍵 字的語句。(流控制語 言僅包含幾 種語句類型 。最重要的 是 MODULE、 FIELD、 CHAIN、 LOOP、 CALL SUBSCREEN) 。要顯示流邏 輯中語句的 語法信息, 請選擇流邏 輯編輯器中 的“實用程序 - 幫助 .” 。在后面的 對話窗口中 ,標記“流 邏輯關鍵字 ”,輸入所 需關鍵字的 名稱,然后 按 ENTER。錯誤!未定義書簽。ABAP/4 模塊池在對象瀏覽 器中,模塊 池代碼屬于 下列類別之 一:全局字段 :模塊池中 所有模塊都 可使用的數(shù) 據(jù)模塊:顯示 屏幕前調用 的模塊PA
13、I 模塊:響應 用戶輸入而 調用的模塊子程序: 可以在模塊 池中任何位 置調用的子 程序默認情況下 ,系統(tǒng)將模 塊池分成一 個或多個包 含程序。一 個包含程序 可以包含相 同類型的多 個模塊(僅 PBO 模塊或 PAI 模塊)。然 后主程序包 含一系列將 模塊到 模塊池的 INCLUDE 語句:*&*&*Module poolSAPMTZ10*&*&*&*&*Display data of TableSPFLI*&*&* GlobaaINCLUDE MTZ10TOP.* PAI modules INCLUDE MTZ10I01.* PBO modules INCLUDE MTZ10O01.在
14、ABAP/4 編輯器中, 選擇“編輯 -其它功能 - EXPAND 包含程序” 可以顯示隱 藏在 INCLUDE 語句后的代 碼。帶有所 有擴展的 INCLUDE 語句的模塊 池顯示如下 :*&*& Module poolSAPMTZ10*&FUNCTION: Display data from Table SPFLI*&*&*INCLUDE MTZ10TOP (This is the TOP include:the TOP module contains global data declarations)*PROGRAM SAPMTZ10. TABLES: SPFLI.DATA OK_COD
15、E(4).*INCLUDE MTZ10I01(This is a PAI include.)*&*&*&ModuleMAND_0100 INPUT*Retrieve datafrom SPFLI or leave tranion*-*MODULEMAND_0100 INPUT.CASEWHEN SHOW. CLEAR OK_CODE.SELECT SINGLE * FROM SPFLI WHERE CARRID =SPFLI-CARRIDANDCONNID = SPFLI-CONNID.WHEN SPACE. WHEN OTHERS.CLEAR OK_CODE.旗 SAP 教育旗 Alex:7
16、12635080咨詢:400 686 9778:httSET SCREEN 0. LEAVE SCREEN. ENDCASE.ENDMODULE.*INCLUDE MTZ10O01 (This is ainclude.)*&*&*&Module SUS_0100*Specify GUI sus and titlefor screen 100*MODULE S US_0100. SET PF-SUS TZ0100. SET TITAR 100.ENDMODULE.使用 ABAP/4 詞典集中頻繁使用 的數(shù)據(jù)。在詞典中 定義的對象 在整個系統(tǒng) 中是已知的 ??梢酝ㄟ^ 任何應用程 序活動 詞典定義。
17、 在詞典中定 義的數(shù)據(jù)可 以包括在屏 幕中或由 ABAP/4程序使用。用戶使用 TABLES、STRUCTURE、LIKE 語句和其它 語句,在事 務的 TOP 模塊中全局數(shù)據(jù)。 事務 TZ10表格 SPFLI 的詞典定義 ,提供所需 的航班數(shù)據(jù) 顯示。如果 TOP 包含程序包括 TABLES: SPFLI,那么 模塊池中的 所有模塊都 可以表 格 SPFLI 的表格字段 。PAI 模塊MAND_0100 檢查用戶激 活了哪個按 鈕 (CASE OK_CODE)。 事務 TZ10 中的“顯示 ”按鈕有函 數(shù)代碼SHOW 。(關于處 理函數(shù)代碼 的詳細信息 ,參見 處理用戶請求 (頁 Error
18、! Not a valid link.) )。然后程 序在 SPFLI 數(shù)據(jù)庫中選 定對應戶輸入數(shù)據(jù) 的。WHERE 條件通過比較字段 SPFLI-CARRID 及 SPFLI-CONNID 與數(shù)據(jù)庫關 鍵字段 CARRID 及 CONNID 來決定匹配 記錄。一旦 找到了匹配,數(shù)據(jù) 庫將所有伴 隨 SPFLI 的字段都傳 輸給程序表 格。再次顯示屏 幕時,在屏 幕的輸出字 段中出現(xiàn)完 整的信息。 系統(tǒng)自動顯 示這些字段 ,原因是 ABAP/4字SPFLI-CARRID 及 SPFLI-CONNID 和屏幕字段 的相同。在事務 TZ10 的 PBO 模塊 SUS_0100 中,屏幕 100 接
19、收 GUI 狀態(tài)(使用 SET PF-SUS) 和GUI 標題(使用 SET TITAR) : SET PF-SUS TZ0100. SET TITAR 100.“GUI 狀態(tài)”是用 于某屏幕的 界面元素的 子集。狀態(tài) 包括當前事 務所需的元 素。事務的 GUI 狀態(tài)可能由 下列元素組 成:GUI 標題是顯示 在窗口標題 欄中的屏幕 標題。與 GUI 狀態(tài)相反,GUI 狀態(tài)可用于 多個屏幕,而 GUI標題只屬于 一個屏幕。要創(chuàng)建并編 輯 GUI 狀態(tài)和 GUI 標題,請使 用菜單制作 器。要啟動 菜單制作器 ,請在對象 瀏覽器的對 象列表中創(chuàng) 建 GUI 狀態(tài)或 GUI 標題(或雙 擊現(xiàn)有的狀 態(tài)或標題) 。關于菜單制 作器的詳細 信息,參見 文檔 ABAP/4 開發(fā)工作臺:工具 (頁 Error! Not a
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年廣西制造工程職業(yè)技術學院單招職業(yè)技能測試題庫含答案
- 2025年福建農林大學金山學院單招職業(yè)傾向性測試題庫1套
- 2025年貴州省六盤水市單招職業(yè)適應性考試題庫一套
- 2025年成都外國語學院單招綜合素質考試題庫往年題考
- 2025年福建水利電力職業(yè)技術學院單招綜合素質考試題庫完整版
- 2025年阜陽科技職業(yè)學院單招職業(yè)傾向性測試題庫完整版
- 2025年大連航運職業(yè)技術學院單招職業(yè)傾向性考試題庫帶答案
- 2025年廣西機電職業(yè)技術學院單招職業(yè)技能測試題庫a4版
- 2025年常德科技職業(yè)技術學院單招職業(yè)適應性測試題庫及答案一套
- 工程簡易施工電梯租賃合同書
- 借哪吒精神燃開學斗志 開學主題班會課件
- 2025年初中主題班會課件:好習慣成就好人生
- 學校教職工代表大會全套會議會務資料匯編
- 中華人民共和國監(jiān)察法宣貫培訓
- 2025年山東傳媒職業(yè)學院高職單招高職單招英語2016-2024歷年頻考點試題含答案解析
- 2025年春新教科版物理八年級下冊課件 第10章 流體的力現(xiàn)象 1 在流體中運動
- 屋面種植土垂直施工方案
- 2025年新人教PEP版英語三年級下冊全冊課時練習
- 《愛耳日課件》課件
- 《中醫(yī)基礎理論》課件-中醫(yī)學理論體系的基本特點-整體觀念
- 全國職業(yè)院校技能大賽高職組(商務數(shù)據(jù)分析賽項)備賽試題及答案
評論
0/150
提交評論