SAP 脚本教程:SE71、SE78、SCC1、VF03、SO10
SAP 脚本是 SAP 系统自己的文本处理系统。它的外观和感觉与其他领先的文本处理系统非常相似。
它用于以预格式化的形式打印预格式化的文本。
组件 SAP脚本
SAP 脚本由五个主要部分组成:
- 用于输入和编辑文本行的编辑器
- 打印布局的样式和布局集。这些是使用相应的维护事务独立于各个文本创建的,稍后分配给文本
- 作曲家是一个中央输出模块。 SAP 剧本作者对外界来说是看不见的
- 编程接口允许您包含 SAP 脚本组件到您自己的应用程序中,并从程序内部控制布局集的输出
- 用于存储文本、样式和布局集的多个数据库表
布局集
为了使用编程接口输出文档,R/3 应用程序需要所谓的布局集(一种表格)。 SAP 脚本布局集描述了各个打印页面的布局,并使用文本元素来提供可定义的输出块,打印程序可以调用这些输出块。布局集可以定义为文档的页面设计
布局集本身不包含任何数据。文档的数据选择是通过打印程序完成的。打印程序从数据库表中选择数据并将其提供给布局集。执行打印程序时,文档将打印在屏幕或打印机上。
通常是 SAP脚本布局由以下组件组成
- 标题数据:报头数据用于信息和控制 SAP 打印。标题数据由 2 部分组成 - 设备无关 - 存储诸如起始页、默认段落、语言属性等信息。设备相关存储诸如页面格式、方向、每英寸行数等信息
- 段落和字符格式: 段落使用各种属性进行格式化。例如,标准段落属性指定左边距或右边距、对齐方式、行距等。字体属性指定字体系列、字体大小等。字符格式允许格式化段落内的整个文本块
- Windows 和文本元素: Windows 是页面中的单独文本区域(页眉地址、日期、页脚)。它有助于将文档中包含的信息组合成某些组,并使每个组出现在打印页面上的单独区域中。您可以为每个窗口定义文本元素(窗口文本)。打印程序按名称访问文本元素,对其进行格式化并在相应的窗口中打印它们。必须在表单中定义使用的段落和字符格式。
- 页数: 它们是文档的独立页面,必须具有唯一的名称。您经常会发现各个页面的布局不同:发票的第一页与后续页面不同,您无需在后续页面上重复一般信息,例如地址或客户数据。
- 页 Windows: 在定义窗口和页面时,您尚未确定要输出的文本的位置和间距。页面窗口通过指定输出区域的左上边缘及其宽度和高度来定义输出介质中的矩形输出区域
控制命令
“控制命令”的目的是允许控制输出格式。这些命令不由 SAP 脚本编辑器,但传递到 SAP 脚本编辑器进行处理。例如,这包括行和页面格式化、根据指定的段落和字符格式格式化文本。
句法
Enter /: in the paragraph format
例子
- NEW-PAGE – 明确分页符
- 保护………结束保护 – 在一页上打印整个段落。
- INCLUDE – 将另一段文本的内容包含到当前文本中
- 执行——调用任何 ABAP 程序的子程序
打印程序
脚本的执行是通过 ABAP 程序,即打印程序。每个打印程序应该有一个ENTRY表单,它将从定制中调用。
对于标准配置,我们可以在 TNAPR 表中看到表单名称(脚本名称)、打印程序名称和输出类型。打印程序使用表单控制函数来调用脚本。
打印程序调用全部或部分表单控制函数来执行脚本
- OPEN_FORM(强制)打开布局集输出
- CLOSE_FORM(强制)结束布局集输出
- START_FORM(可选)启动新的布局集
- WRITE_FORM(强制)调用布局集元素
- END_FORM(可选)结束当前布局集
输出类型
输出类型可以指定您需要内部使用的打印表格或您想要发送给客户或供应商的表格。输出类型也可以是您想要发送给其他部门员工的内部电子邮件消息。
例如,“打印输出”可以归类为发票凭证的一种输出类型,即执行此输出类型时,将打印发票凭证。同样,“传真”也可以是一种输出类型,即执行此输出类型时,将发送发票凭证的传真
任何文档(例如,发票文档)的所有输出类型都将存储在表 NAST 中。输出类型通过程序 RSNAST00 执行。
示例:发票文件中的输出类型-
- 前往 VF03
- 输入账单单据号码并再次按回车键
- 在菜单 Goto -> Header 下选择 Output
- 这里 Z101 是打印输出的输出类型
标准文本和图形
可以使用事务创建报告的标准文本 SO10
图形和打印机宏通过以下方式上传: 报告 RSTXLDMC 转换为单独的标准文本文档或通过事务 SE78。 图形以“Baseline TIFF 6.0”格式上传(PC 上的 .tif 文件)
SAP 可以使用 RSTXSCRP 程序在两个系统之间导出或导入脚本和标准文本元素
跨客户端复制脚本:
SAP 脚本是客户端依赖的对象。与程序不同,对脚本所做的更改 SAP 一个客户端中的脚本不会反映在其他客户端中。要将脚本从一个客户端复制到另一个客户端,请转到 SE71 并使用实用程序菜单下的“从客户端复制”选项,或使用事务从原始客户端导入保存了脚本的传输请求 SCC1。
注意事项
- SAP 脚本不维护任何版本。因此,在修改 SAP 脚本,确保更改在脚本中得到充分记录。这也适用于标准文本。
- 表单的输出在屏幕上和在打印机上显示时会有所不同。因此,请务必在打印机上测试脚本的输出。