- 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 脚本 - 输出模式假脱机
- 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(使用假脱机打印)、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/
你最后调用这个函数模块,它没有导出参数。