<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 對話框編程教程:SAP ABAP 中的模塊池 > 原文: [https://www.guru99.com/dialog-programming-tutorial.html](https://www.guru99.com/dialog-programming-tutorial.html) SAP-ABAP 支持兩種類型的程序-報告程序和對話程序。 如果 ABAP 程序需要用戶輸入,則使用對話框編程。 在本教程中,您將學習: * [報告程序和對話框程序之間的區別](#1) * [對話框編程](#2)中的示例事務處理 * [對話程序](#3)的組件 A? user dialog is any form of interaction between the user and the program and could be any of the following * 輸入數據 * 選擇菜單項 * 點擊一個按鈕 * 單擊或雙擊一個條目 當我們需要在屏幕之間來回導航時,也會使用對話程序。 創建的對話程序的類型為'M'-模塊池。 它們不能獨立執行,必須附加到至少一個您在其中指定初始屏幕的交易代碼。 ## 報告程序和對話框程序之間的區別 ![Dialog Programming Tutorial: Module Pool in SAP ABAP](https://img.kancloud.cn/3a/af/3aafec64d802a6b5ecf613545ac554e7_1000x559.png "sap-dialog-programming") ***報告程序**:* 報告是一種程序,通常在不更改數據庫的情況下讀取和分析數據庫表中的數據。 ***對話程序**:* 對話程序可讓您與系統交互工作并更改數據庫表的內容。 每個對話程序都有一定的屏幕順序,由系統依次處理。 ## 對話框編程中的示例事務處理 ![Dialog Programming Tutorial: Module Pool in SAP ABAP](https://img.kancloud.cn/56/a7/56a70a26a7db920244530bf7cd18f481_934x525.png "sap-dialog-programming") ## 對話程序的組件 與通常需要創建一個可以獨立于其他對象執行的自治程序的報告不同,對話程序開發需要開發多個對象,而這些對象不能單獨執行。 ***而是將所有對象按層次結構鏈接到主程序,并按照對話框主程序*** 規定的順序執行。 對話程序的組件為: **事務代碼** * 交易代碼開始一個屏幕序列。 * 您可以在 ABAP 工作臺的存儲庫瀏覽器中或使用事務 SE93 創建事務代碼。 * 交易代碼鏈接到 ABAP 程序和初始屏幕。 * 您可以使用 CALL SCREEN 語句從任何 ABAP 程序啟動屏幕序列。 **屏幕** * SAP 系統中的每個對話框均由一個或多個屏幕控制。 * 您可以通過事務 SE51 在 ABAP 工作臺中使用 Screen Painter 創建屏幕 * 每個屏幕都屬于一個 ABAP 程序。 * 這些屏幕由“屏幕蒙版”或“布局”及其流程邏輯組成。 屏幕具有確定輸入/輸出字段和其他圖形元素(如復選框和單選按鈕)位置的布局。 流邏輯確定屏幕內的邏輯處理。 **GUI 狀態** * 每個屏幕都有一個 GUI 狀態,它們是程序的獨立組件。 * 它控制*菜單欄,標準工具欄,應用程序工具欄*,用戶可以使用它們選擇應用程序中的功能。 * 您可以使用 Menu Painter 在 ABAP 工作臺中創建它們。 **ABAP 程序** * R / 3 系統中的每個屏幕和 GUI 狀態都屬于一個 ABAP 程序。 * ABAP 程序包含由屏幕流邏輯調用的對話框模塊,并且還處理來自 GUI 狀態的用戶輸入。 * 使用屏幕的 ABAP 程序也稱為對話框程序。 * 在模塊池中(M 型程序); 要調用的第一個處理塊始終是對話框模塊。 但是,您也可以在其他 ABAP 程序中使用屏幕,例如可執行程序或功能模塊。 然后,第一個處理塊被不同地調用; 例如,通過運行時環境或過程調用。 然后使用 CALL SCREEN 語句啟動屏幕序列。 **屏幕流邏輯** 屏幕流邏輯主要分為四個部分。 * 輸出之前處理( **PBO** )事件:在顯示屏幕之前進行處理 * 輸入后處理( **PAI** )事件:用戶在屏幕上執行操作后處理 * 幫助請求中的處理( **POH** ):按下 F1 時處理 * 值請求處理( **POV** ):按下 F4 時處理 **Dynpro** * 屏幕及其流邏輯一起稱為 Dynpro(“動態程序”,因為屏幕流邏輯會影響程序流) * 每個 dynpro 都只控制對話框程序的一個步驟。 * 屬于程序的畫面以**編號為**。 屏幕流序列可以是線性的也可以是循環的。 您甚至可以從一個屏幕鏈中調用另一個屏幕鏈,并在對其進行處理之后返回到原始屏幕鏈。 您也可以從 ABAP 程序的對話框模塊中覆蓋靜態定義的下一個屏幕。 **ABAP 模塊池** * 在 PBO 或 PAI 事件中,Dynpro 會調用 ABAP 對話程序。 此類程序的集合稱為 ABAP 模塊池。 * 例如,在 PAI 事件中調用的模塊用于檢查用戶輸入并觸發適當的對話框步驟,例如更新任務。 * 從**事務中調用的所有 dynpros 均指一個公共模塊池。** ***對話程序的結構*** ![Dialog Programming Tutorial: Module Pool in SAP ABAP](https://img.kancloud.cn/10/ac/10ac2457b0aeef9029c6257e976bba4c_1000x700.png "sap-dialog-programming") ***對話程序*** 的處理流程 ![Dialog Programming Tutorial: Module Pool in SAP ABAP](https://img.kancloud.cn/3d/53/3d5390d0f61e9db350504fc7da8fb3e8_1000x600.png "sap-dialog-programming")
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看