- SAP指令碼教程
- SAP指令碼 - 首頁
- SAP指令碼 - 概述
- SAP指令碼 - 智慧表單
- SAP指令碼 - 表單繪製器
- SAP指令碼 - 佈局集
- SAP指令碼 - 列印程式
- SAP指令碼 - 建立視窗
- SAP指令碼 - 輸出區域
- SAP指令碼 - 文字模組
- SAP指令碼 - 文字分組
- SAP指令碼 - 格式選項
- SAP指令碼 - 輸出型別
- SAP指令碼 - 控制列印輸出
- SAP指令碼 - 資料格式
- SAP指令碼 - 匯出
- SAP指令碼 - 匯入
- SAP指令碼 - 控制表
- SAP指令碼 - 文字和圖形
- SAP指令碼 - 控制命令
- SAP指令碼 - 複製指令碼
- SAP指令碼 - 標準文字
- SAP指令碼 - 文字處理
- SAP指令碼 - 建立文件
- SAP指令碼 - 更新文件
- SAP指令碼 - 查詢文件
- SAP指令碼 - 儲存文件
- SAP指令碼 - 刪除文件
- 文件列印預覽
- SAP指令碼 - 格式轉換
- SAP指令碼 - 原始資料介面
- SAP指令碼 - 輸出模式SPOOL
- SAP指令碼 - 輸出模式IDOC
- 在系統中建立指令碼
- SAP指令碼實用資源
- SAP指令碼 - 快速指南
- SAP指令碼 - 有用資源
- SAP指令碼 - 討論
SAP指令碼 - 列印程式
在SAP指令碼中,**列印程式**用於列印實際表單並從資料庫表中獲取資料,選擇表單並以定義的格式列印文字元素。它從資料庫中檢索資料並將其與使用者輸入結合,格式化資料並列印。
所有列印程式和表單都儲存在表**TNAPR**中。
列印程式中使用了不同的功能模組。要啟動列印程式,使用OPEN_FORM功能模組,要結束程式使用CLOSE_FORM功能模組。
**OPEN_FORM** - 在列印程式中,在進行任何列印之前,應首先呼叫此函式。您指定表單的名稱和列印語言。
CALL FUNCTION 'OPEN_FORM'
**START_FORM** - 此函式用於在一個請求中使用具有相似特徵的不同表單。
CALL FUNCTION ’START_FORM’
**WRITE_FORM** - 此函式用於使用文字元素在表單的視窗中寫入文字。
CALL FUNCTION ‘WRITE_FORM’
**CONTROL_FORM** - 此函式用於在ABAP程式中插入SAP指令碼控制命令。
CALL FUNCTION ‘CONTROL_FORM’
**END_FORM** - 此函式在最後呼叫,並且沒有匯出引數。
CALL FUNCTION ‘END_FORM’
**CLOSE_FORM** - 要檢視標準表單和標準列印程式,請執行**事務程式碼:NACE**
輸入應用程式型別,然後單擊頂部的輸出型別。
在下面的螢幕截圖中,您可以看到所選服務的應用程式名稱。
列印程式 - 示例
以下是一個示例列印程式,它建立包含公司相關資訊(如客戶資料、日期、航班預訂等)的發票。
第1部分 - 獲取客戶資料
TABLES: zcustom, zbook, zpfli. DATA: bookings like zbook... select * from... /In this section, you are reading the data from tables in database./
第2部分 - 開啟表單
CALL FUNCTION 'OPEN_FORM' EXPORTING DEVICE = 'PRINTER' FORM = 'EXAMPLE1' DIALOG = 'X' OPTIONS = EXCEPTIONS CANCELLED = 1 DEVICE = 2 FORM = 3 OTHERS = 11 /In this section, you are calling OPEN_FORM function module to initialize print output./
在上述功能模組中,引數 -
**FORM**顯示錶單的名稱。
**DEVICE**可以是PRINTER(使用SPOOL列印)、TELEFAX(傳真輸出)或SCREEN(輸出到螢幕)
**OPTIONS**顯示型別為ITCPO的結構,用於控制各種屬性 - 列印預覽、副本數量。
第3部分 - 打印表格標題
CALL FUNCTION 'WRITE_FORM' EXPORTING ELEMENT = 'textelement’ TYPE = 'TOP' WINDOW = 'MAIN' FUNCTION = 'SET' ... /In this section, you use WRITE_FORM function to output general text elements and column heading/
**ELEMENT**功能模組顯示要列印的“textelement”,而“WINDOW”顯示要列印的表單的哪個視窗。
**TYPE**顯示視窗的輸出區域,如TOP、BOTTOM或BODY。
**FUNCTION**指示要替換、新增或附加的文字。
第4部分 - 列印客戶預訂
LOOP AT bookings WHERE CALL FUNCTION 'WRITE_FORM' EXPORTING ELEMENT = 'BOOKING' TYPE = 'BODY' WINDOW = 'MAIN' ... ENDLOOP /In this section, text element BOOKING is used to output the bookings of a customer from the loop from BOOKING table in database./
第5部分 - 關閉表單
CALL FUNCTION 'CLOSE_FORM' IMPORTING * RESULT = EXCEPTIONS UNOPENED = 1 OTHERS = 5 /To end the Print Program/
您在最後呼叫此功能模組,它沒有匯出引數。