- SAP智能表单教程
- SAP智能表单 - 首页
- SAP智能表单 - 概述
- SAP智能表单 - 架构
- SAP智能表单 - 结构
- SAP智能表单 - 表单逻辑
- SAP智能表单 - 导航
- SAP智能表单 - 表单构建器
- SAP智能表单 - 样式构建器
- SAP智能表单 - 输出类型
- 高级开发概念
- SAP智能表单 - 表单图形
- 应用与迁移
- SAP智能表单有用资源
- SAP智能表单 - 快速指南
- SAP智能表单 - 有用资源
- SAP智能表单 - 讨论
SAP智能表单 - 快速指南
SAP智能表单 - 概述
您可以使用智能表单技术在SAP系统中设计和打印表单。您的ABAP程序调用智能表单,然后生成打印作业(spool)。您可以在智能表单中嵌入文本、图像和其他元素,例如条形码。SAP智能表单是SAP脚本表单的高级版本,它取代了SAP系统中用于表单打印和将输出集成到HTML格式的脚本。
您可以在智能表单中使用不同的输出格式,其中一些包括:
- 打印
- 电子邮件
- 传真或
- 以HTML/XML输出格式通过互联网发送。
智能表单工具允许您使用简单的图形工具修改表单,而不是使用任何编程工具。这意味着没有编程知识的用户可以轻松地为业务流程配置这些表单数据。
在智能表单中,数据从静态和动态表中检索。表标题和子总数由触发的事件指定,然后在最终输出之前对数据进行排序。智能表单允许您合并图形,这些图形可以作为表单的一部分或作为背景显示。您也可以在打印表单时根据需要隐藏背景图形。
SAP智能表单因采用了Adobe的交互式表单而感到惊讶。
SAP系统中提供的一些标准智能表单示例如下:
SF_EXAMPLE_01表示包含客户航班预订的表格输出的发票。
SF_EXAMPLE_02表示类似于SF_EXAMPLE_01的发票,但包含小计。
SF_EXAMPLE_03指定类似于SF_EXAMPLE_02的发票,但其中可以在应用程序程序中选择多个客户。
SAP智能表单与SAP脚本
SAP脚本自20世纪80年代以来一直在使用。然而,智能表单的概念始于2001年。智能表单在SAP中取代了脚本表单。
以下是它们之间的主要区别:
在SAP脚本中,您必须编写打印程序。但是,在智能表单中,不需要编写打印程序。
SAP脚本依赖于客户端。但是,智能表单独立于客户端。
您可以创建不使用主窗口的智能表单。但是,使用脚本是不可能的。
在SAP脚本中,您可以使用最多99个主窗口。但是,智能表单可以拥有一个主窗口。
当您在SAP系统中激活智能表单时,它会生成功能模块。但是,在脚本执行的情况下不会生成。
还可以使用智能表单创建和设计Web表单,但您无法使用脚本设计Web表单。
智能表单的概念完全基于图形用户界面。但是,脚本包含一些编程。
您可以使用事务SMARTFORMS创建、更改和显示智能表单。要为智能表单设置样式,可以使用事务SMARTSTYLES。要编写SAP脚本,请使用事务代码:SE71打开表单画家,并使用SE72在脚本表单中添加不同样式的文本和字体。
可以使用智能表单维护背景图形,但SAP脚本无法实现。
要在SAP系统中设计智能表单布局,请使用事务代码:SMARTFORMS。
要设置智能表单的样式,请使用事务:SMARTSTYLES。
SAP智能表单 – 用途
智能表单比脚本具有许多优势。这些包括易于设计的图形用户界面、动态文本框架和表格结构的使用。
以下是使用智能表单的好处:
它不需要任何编程知识来设计智能表单,因为它基于图形工具。这允许高级用户在SAP系统中设计智能表单,并且只有在特殊情况下才需要专家。
当您激活智能表单时,它会在运行时自动生成功能模块。
您可以向智能表单添加背景图形,这些图形可以作为表单的一部分显示。
您可以使用智能表单显示表格结构和动态文本框架。您可以使用SMARTSTYLES添加彩色文本、图像、条形码等。
在6.10版本中,您可以生成HTML格式的输出。
使用拖放或剪切粘贴功能,可以轻松地对现有智能表单进行更改。这不需要您输入脚本代码来进行更改。
您可以将SAP脚本表单转换为智能表单,但反之则不可行。
SAP智能表单 - 一般概念
在SAP系统中,表单打印意味着创建和设计表单的布局以进行批量打印。这包括表单结构、设计和布局以及用于动态格式化的表单逻辑。表单布局说明了表单的结构,例如 - 不同结构页面的数量以及使用表格、段落和字符格式来格式化表单中的文本。
表单的动态格式化取决于表单逻辑,表单逻辑允许您在表单布局中添加条件文本,该文本仅在满足特定条件时才会显示。您可以根据条件类型定义变量字段 - 第一次催款使用此文本,第二次催款使用其他文本等等,以处理动态格式化。
可以使用智能表单在SAP系统中创建不同类型的表单,并且您可以根据需要添加条件文本和不同的布局。
- 发票
- 账户报表
- 工资单
- 质量表单
- 清单
- 订单处理
- 订单确认
- 交货单等等
在下一章中,我们将详细讨论SAP智能表单的架构。
SAP智能表单 - 架构
在SAP智能表单中,您有多个组件,其中应用程序数据与表单定义不同。激活智能表单时,会生成一个功能模块,并从数据库中检索数据。
在SAP智能表单中,使用以下组件:
表单布局 - 表单布局定义元素在页面上的位置以及对象将在表单输出中显示的位置。
表单逻辑 - 表单逻辑定义要从数据库中读取的数据,定义条件以及控制表单输出流。
单个元素 - 它包括要在表单输出中显示的元素。常见的元素类型包括文本、表格、图形等。
表单接口 - SAP智能表单中的表单接口用于将应用程序数据传输到表单定义。
在上图中,您可以看到智能表单架构。激活智能表单时,会生成一个功能模块。当应用程序程序调用功能模块时,模块接口用于根据表单描述传输表数据并打印表单。
您还可以将语句嵌入到表单描述中以选择表单处理的数据。但是,当您必须打印大量表单结果时,不建议这样做,因为会导致性能下降。
还可以将数据作为表格打印在表单上,并与智能表单的应用程序数据合并。对智能表单的单个调用始终生成一个用于打印的表单。始终可以选择不同的输出类型,例如 - 传真、打印、电子邮件或以HTML/XML格式发送到Web浏览器。
SAP智能表单 - 结构
智能表单包含多个页面。有一些不同的图形,例如标题和公司徽标,而输出区域和要显示的文本位于输出中。您可以使用动态表格结构以列、单元格格式等显示数据或文本。
一个常见的智能表单示例是航班预订的客户发票。航班预订的价格详细信息显示在主窗口的表格中,其他窗口包含不同的元素,例如公司名称徽标、客户地址以及其他公司或客户特定详细信息。
航班预订发票的第一页包含预订公司详细信息、客户信函(如有)以及包含预订项目数量的表格。表类型是动态的,其长度取决于表中预订项目的数量。表标题包括列标题:
- 序列号
- 票号
- 航段
- 航班名称或编号
- 乘客姓名等。
而表脚注包含 - 以卢比计价的金额、净额等。
当由于项目数量过多导致表格延续到第二页时,表标题和脚注也会在下一页重复。此智能表单的页面布局将页面结构定义为A4,而A5是每个页面上要显示数据的窗口的位置。
SAP智能表单 - 屏幕导航
要设计新的智能表单或更改或显示现有的智能表单,您应该使用事务:SMARTFORMS。
输入如下屏幕截图所示的事务:
在主屏幕上,您可以看到三个不同的选项卡:
- 更改
- 显示
- 创建
输入表单名称,然后单击“创建”按钮,如以下屏幕截图所示:
单击“创建”按钮后,将打开SAP表单构建器屏幕,该屏幕分为三个部分
在左侧,您有一个**导航窗口**。此窗口包含所有元素,例如文本和图形,它们是 SAP 智能表单的一部分。您可以在导航窗格下看到节点和子节点的层次结构。
在中间,您有一个**维护窗口**。此窗口用于设置智能表单中每个元素的属性值。您可以定义输出选项,例如:
- 位置和大小(左边距、上边距、宽度和高度)
- 框和阴影
- 框架
- 阴影等。
预览和条件选项卡包括 - 字段名称和比较值。
在右侧,您有**表单绘制器**。表单绘制器定义 SAP 智能表单中页面的布局。当您在 SAP 系统中创建智能表单时,会生成一个功能模块。在导航窗格下,您默认在每个表单中都有两个文件夹,它们是:
- 全局设置
- 页面和窗口
现在让我们详细讨论这两个文件夹。
全局设置
它包含智能表单的全局设置,例如:
- 表单属性
- 表单接口和
- 全局定义
在表单接口中,您可以看到从打印程序传递到智能表单的所有数据。而全局定义包含可在整个智能表单中使用的数据。
页面和窗口
使用页面和窗口,您可以创建新的对象,例如:
- 页面
- 窗口
- 图形
- 地址
智能表单的打印按照下一页字段进行。而智能表单的处理取决于导航窗格中定义的顺序。
SAP 智能表单 - 表单页面
在任何 SAP 智能表单中,您都可以为每个页面定义不同的页面布局。页面布局定义页面格式,其一些选项为:
- 横向
- 纵向
- A4 尺寸
- A5 尺寸等。
智能表单中每个页面可以具有不同的结构。例如,第一页可以包含地址、关于公司、徽标、业务条款或应出现在第一页上的任何其他信息。
在智能表单中,您需要为每个页面定义下一页和清晰的页面顺序。您还可以多次调用同一页面以使输出递归。页面中断在表单逻辑中使用手动编码定义,或者您也可以通过主窗口和子窗口定义它。
每个页面包含两种类型的输出区域,它们是 - 主窗口和子窗口。这些窗口可以放置在页面的任何位置,您甚至可以重叠它们。单个窗口可以在多个页面上使用。
SAP 智能表单 - 主窗口和子窗口
在本节中,我们将详细了解主窗口和子窗口。
主窗口
在 SAP 智能表单中,主窗口用于保存文本和数据。由于这是主窗口,因此它会填充系统文本和数据。它显示下一页主窗口中的文本,同时自动触发页面中断。
**注意** - 检查以下关于主窗口和子窗口的关键要点。
每个页面的主窗口应具有相同的宽度,但高度可以不同。
当您没有定义页面的主窗口时。该页面将调用自身,这将导致无限循环。
子窗口
在 SAP 智能表单中,子窗口用于在输出的预定义区域显示文本和数据。不适合子窗口的文本和数据会被截断,不会显示在表单输出中。
当每个页面上都放置了一个具有相同名称的子窗口时,该子窗口的内容将显示在每个页面上。
要在主窗口或页面中创建窗口,请右键单击页面或主窗口,然后选择窗口类型。
输入窗口名称、含义和窗口类型。在此窗口中输入的名称显示在导航窗格中。您可以拖动窗口并将其放置在主窗口的任何位置。
当窗口重叠时,您还可以将一个窗口发送到后台,通过右键单击复制或删除节点。
SAP 智能表单 - 文本和数据
您可以在智能表单中输入文本和数据,并根据需要放置它们。在此智能表单中输入的数据为字符串格式,可以从数据库中提取。您还可以以表格格式输入文本和数据以将其显示为表格。
您可以使用表单绘制器在智能表单中将窗口、图形等放置在页面上。
PC 编辑器用于编写文本。
智能表单窗口中的表格绘制器用于格式化表格。
使用 PC 编辑器在智能表单中输入文本
要使用 PC 编辑器输入文本,您应该在导航树中创建文本节点。还可以使用表单中的系统字段和参数将系统中的数据包含到文本中。在处理智能表单时,系统会将数据替换为系统字段中的值。
要在导航窗格中创建文本节点,请右键单击→创建→文本,如下面的屏幕截图所示。
输入节点名称和描述,如下面的屏幕截图所示:
转到“常规属性”,并将“文本类型”选择为“文本元素”。您可以直接在 PC 编辑器中输入文本,也可以以全屏模式打开文本编辑器。
当您单击绿色箭头标记(F3 按钮)时,文本编辑器中的文本将传输到内联 PC 编辑器。
要将文本突出显示为 URL,请标记此文本并单击顶部的“插入 URL”。
SAP智能表单 - 表单逻辑
在 SAP 智能表单中,表单逻辑定义要从数据库中读取的数据,然后定义条件,最后控制表单输出的流程。表单逻辑在表单构建器中定义,其中表单结构定义在 SMART FORMS 接口的左侧。打开智能表单创建窗口时,左侧有默认节点。
全局设置节点,并具有以下三个子文件夹:
- 表单属性
- 表单接口和
- 全局定义
这些会在您创建新的智能表单时显示。
要定义表单逻辑,您应该在导航窗格中的“页面”节点下定义层次结构,此结构定义智能表单处理规则。此表单逻辑可用于控制表单输出。
您应该记住以下关于表单逻辑的要点:
在树结构中,为每个节点定义了一个选项卡,并且每个节点都可以链接到一个条件。当表单中满足条件时,系统会处理该节点;如果不满足,系统将不会处理该节点。
在一般情况下,树结构中的节点从上到下处理。
每个页面的页面中断取决于当前页面上剩余多少空间。
为每个页面定义了流程控制;但是,您也可以转到任何页面。
SAP 智能表单 - 流程控制
您还可以控制 SAP 智能表单中为导航窗格中定义的树层次结构定义的流程处理。
有不同的选项可用于定义流程控制,其中一些列出如下:
**输出条件** - 根据输出条件定义节点/子节点的处理。
**备选方案** - 它可用于处理两个下级节点之一。
**重复输出** - 您可以使用循环重复处理输出。
**动态处理** - 您还可以通过使用命令行定义页面顺序来动态处理页面。
输出条件
您可以传递输出条件以抑制节点/子节点处理。要为节点输入输出条件,请转到**条件选项卡**。
在条件选项卡中,您可以为每行传递一个具有两个操作数的条件。操作数可以是字段或值。
您还可以传递逻辑运算符;最重要的运算符是:
- AND
- OR
您还可以执行本地检查以验证输出条件。要执行条件检查,请单击“检查”按钮,如下面的屏幕截图所示。
您还可以将输出条件链接到页面和窗口的输出事件。您可以使用“附加事件”框,这些事件使用 AND 条件链接。
当条件满足时,系统会根据条件值处理节点/子节点。当条件失败时,系统会忽略节点并处理流程控制中的下一个值。
要重复处理输出,必须使用读取内部表中数据的循环节点。您可以使用循环读取客户数据并显示。要显示重复输出,您可以创建一个节点 - 类型循环并输入唯一的名称和描述。
下一步是从内部表读取数据到工作区,并在其中显示读取的表行的字段中创建下级节点。
SAP智能表单 - 导航
在本章中,我们将详细讨论 SAP 智能表单的导航、用户界面、节点类型和表单参数。
SAP 智能表单 - 用户界面
要在 SAP 智能表单中设计表单,您需要创建和维护表单的布局并定义表单逻辑。您不需要任何编程和脚本语言的知识。
SAP 智能表单图形用户界面包含以下字段:
**表单绘制器** - 要创建表单布局,请使用表单绘制器。
**PC 编辑器** - 它可用于将文本和字段输入输出区域。
**导航树** - 在左侧,您有导航树,它定义了智能表单的层次结构。这定义了处理的表单逻辑。
**表格绘制器** - 表格绘制器用于创建模板和表格。
**表单检查** - 检查表单一致性。
在 SAP 智能表单中,您可以使用**事务:SMARTFORMS**。在第一页上,您可以选择**表单、样式**或**文本模块**,具体取决于您要创建、更改或显示的对象。
输入名称并选择要创建的类型,然后单击“创建”按钮,这将打开 SAP 表单构建器。
在 SAP From 构建器中,您在左侧有树导航。要选择树中的节点,您必须双击该节点。您还可以通过右键单击并使用复制/粘贴操作来拖放或复制子树。
当您右键单击任何节点时,您可以看到上下文菜单。根据节点类型,上下文菜单下的选项会有所不同。
上下文菜单下有以下选项:
- 根据所选节点类型创建或删除。
- 仅根据所选节点类型显示有效的节点类型。
- 剪贴板功能 - 剪切或复制到剪贴板,粘贴到剪贴板。
- 展开和折叠。
SAP 智能表单 - 节点类型
在本节中,我们将详细讨论不同类型的节点选项,这些选项列出如下。
**输出区域** -
- 页面
- 窗口
**基本节点** -
- 文本
- 图形
- 地址
**表格输出** -
- 模板
- 表格
节点类型的属性
在 SAP 智能表单中,每个表单包含以下通用属性:
**常规属性** - 智能表单中的常规属性定义所选节点的名称和描述。它还可以包含节点的一些通用属性,例如在文本节点的情况下 - 文本类型等。
**输出选项** - 在此选项卡中,为在导航窗格中选择的每个节点定义各种输出选项。常用选项卡包括:
- 位置
- 样式框
- 阴影等。
带有文本输出的节点也具有一个 Style 属性。如果您不喜欢之前在表单中设置的样式,则可以使用此属性覆盖当前子树的样式。
条件 - 在条件选项卡中,您可以传递在满足某些条件时显示节点的条件。
错误列表 - 在对智能表单进行检查时,如果存在任何不一致,系统将在维护屏幕窗口底部显示错误和警告列表。
要查找错误或警告,您应该选择节点,然后系统将带您进入树结构,以便您可以修复错误。
SAP 智能表单 - 表单参数
您也可以在智能表单中传递参数并将数据合并到表单中。可以合并的数据可能来自数据库或 SAP 系统的标准数据的一部分。
以下数据可以在智能表单中合并 -
您可以合并来自数据库表的数据并将其传递到表单接口。
标准 SAP 系统提供的数据可以在智能表单中合并。例如:日期。
在表单中执行的任何计算
您合并的数据在运行时显示。您使用占位符来确定在表单中放置对象的位置,以定义数据将显示的位置。
激活智能表单时,会生成一个函数模块。您可以在智能表单中传递不同的标准参数。创建表单时,这些参数会出现在表单中,并且无法更改。这些是可用于不同操作的导入和导出参数,例如 - 指定输出设备类型等。
以下是智能表单中常见的参数 -
DOCUMENT_OUTPUT_INFO
类型:导出
描述 - 用于提供有关打印表单页数的信息。
JOB_OUTPUT_INFO
类型:导出
描述 - 可用于确定哪个操作在智能表单中创建什么输出。
JOB_OUTPUT_OPTIONS
类型:导出
描述 - 这是字段 OUTPUT_OPTIONS 的一个子集,它确定设置是否已更改。
USER_SETTINGS
类型:导入
描述 - 当此参数的值为“X”时,智能表单将采用系统 -> 用户配置文件 -> 自己的数据下定义的“作业控制”的默认值。
默认值 - 输出设备 -> 立即打印并在输出后删除。
当未设置值时,智能表单改为评估结构的以下参数以获取输出选项 - SSFCOMOP。
- 打印机设置 (TDDEST、TDPRINTER、RQPOSNAME)
- TDIMMED(立即打印)
- TDDELETE(输出后删除)
您可以在智能表单的“字段列表”选项卡下查看不同的导入和导出参数。
SAP智能表单 - 表单构建器
在本章中,我们将详细讨论表单构建器中的导航、表单构建器的功能、表格绘制器的用法以及 SAP 智能表单的输出选项。
SAP 智能表单 - 表单构建器中的导航
要设计新的智能表单或更改或显示现有智能表单,必须使用事务:SMARTFORMS。
输入以下屏幕截图中所示的事务 -
在主屏幕上,您可以看到三个不同的选项卡:
- 更改
- 显示
- 创建
输入表单名称,然后单击“创建”按钮 -
单击“创建”按钮后,将打开一个 SAP 表单构建器屏幕。表单构建器的图形界面屏幕用于表单设计。
它包含三个工作区 -
- 导航树(左侧)
- 维护屏幕(中间窗格)
- 表单绘制器(右侧)
也可以从顶部菜单隐藏/显示表单绘制器。在顶部菜单中,您可以选择打开/关闭表单绘制器,如下面的屏幕截图所示。
在“维护”选项卡中,您还有其他与表单构建器集成的工具。
PC 编辑器 - 用于管理文本节点。
表格绘制器 - 用于管理表格和模板节点。
SAP 智能表单 - 表单构建器中的功能
表单构建器中提供了一组不同的功能。
字段列表
此功能列出智能表单的所有字段。
单击“字段列表”(ctrl+shift+F4) 时,它将在主屏幕上打开“字段列表”文件夹。以下值显示在“字段列表”下 -
- 导入接口
- 导出接口
- 全局数据
- 系统字段
撤消/重做
您还可以逐步撤消对表单的更改。在智能表单中,表单构建器会存储您自上次保存以来对表单所做的任何更改,无论更改发生在以下哪些位置
- 导航树
- 表格绘制器
- 表单绘制器
- PC 编辑器
- 维护屏幕的输入字段。
您可以逐步撤消这些更改。撤消后,您还可以重做更改。
转到实用程序 -> 设置 -> 撤消/重做表单更改。在“常规”选项卡下,您有此选项。
默认情况下,当您导航到“常规”选项卡时,这些选项会被选中。
下载/上传表单
也可以在本地存储表单或子树。它保存为 XML 文件,您可以将此 XML 文件上传到同一表单甚至不同的表单中。
上传子树时,需要确保此下载的子树的样式和字段存在于目标系统中。
要下载智能表单,请转到实用程序 -> 下载表单。
要下载子树,请转到导航窗格并双击页面和窗口节点的从属节点作为表单的根节点。转到实用程序 -> 下载子树。
要上传表单,请转到实用程序 -> 上传。
上传时,它会知道是否有要上传的表单/子树。如果是表单,则会覆盖表单构建器中的当前表单。当文件包含子树时,智能表单会将此子树复制到剪贴板,要粘贴此子树,您可以导航到树结构并使用上下文菜单插入子树。
注意 - 在插入之前,您应确保子树的所有目标和样式都存在。如果不存在,则应创建它们。
活动版本
您还可以直接返回到表单的最后一个活动版本。但是,该表单的所有更改都会丢失。要还原活动版本,请转到实用程序 -> 返回活动版本。
SAP 智能表单 - 使用表格绘制器
智能表单中的表格绘制器用于设计窗口中的模板和表格。模板和表格的布局使用线条类型完成。您可以通过转到SMARTFORMS GUI屏幕中维护窗口下的“表格”选项卡来打开/关闭表格绘制器。
表格绘制器在智能表单中提供不同的功能 -
- 您可以绘制线条和列。
- 您可以剪切、复制、删除或插入线条。
- 您可以删除单元格。
- 您还可以更改单元格大小。
- 您还可以拆分单元格。
- 可以使用不同的表格模式。
注意 - 您应该检查比例中的大小,因为设计区域不会根据窗口大小进行缩放。
以下节点类型可用于以表格格式显示数据 -
模板节点 - 您可以使用本质上是静态的模板,因为列和行是预先确定的。
表格 - 智能表单中的表格本质上是动态的,因为表单中表格的大小取决于运行时选择的数据量。
您可以在屏幕的下部看到表格绘制器。而在顶部,您有表格绘制器功能,可用于提供线条类型。
定义表格布局
要定义表格布局,您需要在导航树结构下创建模板或表格。此表格布局确定 -
- 每个单元格的高度和宽度。
- 线条和单元格的数量。
- 每个单元格的宽度。
在定义表格布局时,您可以使用“从”和“到”列来指定定义适用的模板线条。
高度值应用于线条的所有单元格,您可以为要显示的每个单元格指定宽度。宽度值的总和必须等于模板的指定宽度。
还可以通过在线条的参考列中输入值来重用模板线条的名称。
以下是表格控件中的示例线条。
| 名称 | 值从 | 值到 | 高度 | 1. | 2. |
|---|---|---|---|---|---|
| 线条 1 | 1 | 1 | 1 | 1 | 1 |
| 线条 2 | 2 | 2 | 2 | 2 | 2 |
| 线条 3 | 3 | 3 | 1 | 1 | 2 |
在表格绘制器中定义线条类型
模板或表格中的线条类型指定线条的单元格数量和大小。您可以通过在“详细信息”设置中输入值以图形方式输入线条类型,如下面的屏幕截图所示。
使用表格绘制器定义线条类型,请转到模板或表格。在表格绘制器中,存在一条宽度对应于窗口宽度的线条。表格绘制器设计区域中的宽度与窗口宽度相同。
要绘制线条,请选择绘制线条和列笔,然后绘制线条类型,如下所示。
您还可以使用上下文菜单插入空白线条。将鼠标指针放在要插入空白线条的线条上,然后右键单击以打开上下文菜单。
您可以选择插入 -> 下方插入新空白线条或插入 -> 上方插入新空白线条。这将在表格中插入一条与单击的线条具有相同高度的新线条。
您还可以拆分现有线条类型。将铅笔放在要水平拆分的位置,然后将线条向右拉。表格绘制器将自动拆分线条。您也可以使用上下文菜单拆分线条。
您还可以使用复制或剪切线条来移动或复制现有线条,如上下文菜单所示。
SAP 智能表单 - 输出选项
您可以在表单构建器下使用不同的输出选项。这些属性在智能表单中表单属性的“输出选项”选项卡下可用。
组件类型:SSFCOMPOP。
您可以使用表单属性控制表单输出,以定义输出格式和介质的默认设置。这些设置可以通过在调用智能表单时使用标准参数来覆盖,并且被称为动态设置选项。
注意 - 表单中输出格式的默认选项是标准输出 (OTF),此输出格式以及介质被称为静态设置。
下图显示了输出选项的覆盖设置 -
当您在“输出格式”中使用覆盖选项时,智能表单会忽略表单中的所有静态设置。
SAP智能表单 - 样式构建器
在本章中,我们将详细讨论 SAP 智能表单中的样式构建器。本章还将介绍各种智能样式、样式构建器导航以及样式构建器的段落和字符格式。
SAP 智能表单 - 智能样式
通过使用样式构建器,您可以在智能表单中定义智能样式。要打开样式构建器,请运行事务:SMARTSTYLES。使用这些智能样式,您可以创建段落和字符格式,这些格式可以分配给智能表单中的文本和字段。智能样式在样式构建器中维护。
运行事务代码:SMARTSTYLES。
要创建新的智能样式,请输入样式名称并点击“创建”按钮。要显示/更改现有样式,请从搜索样式中搜索并点击“显示/更改”按钮。
每个智能表单都应分配一个智能样式,这可以通过转到表单属性来全局完成。智能样式也可以分配给文本节点。
智能样式包含以下字段:
您有段落格式,其中包含字体属性、制表符、编号和其他格式化字段。
智能样式可以包含字符格式,例如:上标和下标、条形码等。
在智能样式中,您有一个标题数据,其中包含智能样式的默认值。
您可以添加颜色,对段落或字符格式进行下划线。
预览选项。
智能样式的默认值保存在标题数据中。您也可以在智能表单中为字符和段落格式分配不同的值,但如果未分配,系统将计算默认值。
可以在智能样式的标题数据中分配以下值:
标准段落 - 您需要分配一个现有的段落作为默认段落。此标准段落可以使用智能样式标题中的段落格式进行分配。
默认制表位 - 当您未分配任何其他定义的制表位时,这些值将用于智能样式。
每英寸字符数/每英寸行数 - 您还可以在智能样式中定义特定的测量值(例如边距等),测量单位为 CH(字符)和 Line(LN)。在表单构建器中,字符和行节点使用此样式。将应用以下属性。
在智能表单中,每英寸字符数通常与行式打印机一起使用。
每英寸行数定义智能样式的行距。
字体系列和字体大小 - 您可以定义智能样式的字体大小、下划线和颜色,这可以在字符/段落格式中被覆盖。
SAP 智能表单 - 样式构建器导航
在样式构建器工具中,您可以创建可以分配给智能表单的智能样式。要打开样式构建器,请使用事务代码:SMARTSTYLES。
在左侧,您会看到样式树,其中包含标题数据、字符格式和段落格式文件夹。您可以在不同的节点之间导航,或使用上下文菜单创建/删除节点。
在右侧,您有维护屏幕。此样式树的每个文件夹在维护屏幕下包含不同的选项卡。标题文件夹下的“标准设置”选项卡可用于定义字体大小和颜色。
每个段落节点在维护窗口下包含不同的选项卡,并且对于字符文件夹下的节点而言是不同的。
在底部,您可以使用字体设置检查所选节点的预览。
还可以重复使用不同智能表单中的样式。要下载样式,请转到实用程序→下载。
要上传样式,请选择实用程序→上传。
SAP 智能表单 - 段落格式
段落格式定义有关间距、字体、文本、颜色和编号的信息。您可以将这些段落分配给文本或字段,并且每个段落都有一个唯一的名称。
当您选择段落文件夹下的任何节点时,您可以定义以下方面:
- 缩进和间距
- 字体
- 制表符
- 编号
- 维护选项卡中的大纲
要导航到缩进和形状选项卡,您有以下选项卡:
- 对齐方式
- 缩进
- 间距
- 文本流
对齐方式选项卡定义段落的对齐方式,可以是:
- 居中
- 两端对齐
- 左对齐或
- 右对齐
缩进选项卡定义段落从两个轴的左侧边距和右侧边距。段落后间距和段落前间距定义段落中每行之后的间距/之前的间距。
页面保护
如果您不希望段落被分页符分割,可以选择此复选框。当选中此选项并且如果一页没有太多空间来显示整个段落时,这将使整个段落出现在下一页上。
下一页中的下一个段落
如果您希望连续的段落不以分页符分隔,并且它们应该出现在同一页面上,可以选择此复选框。
您可以导航到字体选项卡以定义以下方面:
- 字体系列
- 字体大小和
- 字体样式
您还可以选择段落的下划线和颜色。
导航到制表符选项以定义段落格式中的制表符数量。
编号和大纲
这可以用来允许段落和段落结构中的编号。可以在“编号和大纲”选项卡中设置各种属性,其中一些如下:
- 列表
- 左右分隔符
- 输出长度
- 编号的字符格式
- 链接大纲编号
当您激活编号链接时,您可以使每个段落前面都有段落层次结构中上级段落的编号。
创建段落节点
点击段落文件夹,右键点击→创建。
在段落格式中,您需要输入一个2 字符键。转到每个单独的选项卡以定义不同的属性。定义属性后,点击“激活”以激活段落节点。
SAP 智能表单 - 字符格式
样式构建器中的字符格式可用于为段落中的文本或字符串分配特殊属性。在样式树下的字符格式中,可以定义以下属性:
- 字体设置
- 条形码
您可以选择样式树中字符格式下的任何字符节点。它具有不同的属性选择和描述。
您可以选择不同的字体系列、字体大小和字体样式。您也可以导入您自己的字体。您还可以选择下划线和字体颜色等属性。
在“标准设置”下,您可以为系统条形码定义字符格式。
点击字符文件夹,然后右键点击→创建节点。
在字符格式中,您需要输入 2 字符键。转到每个单独的选项卡以定义不同的属性。定义属性后,点击“激活”按钮以激活字符节点。
SAP智能表单 - 输出类型
在本章中,我们将详细讨论 SAP 智能表单的不同输出类型。本章还将涵盖各种输出格式和输出介质,以及了解如何在 SAP 智能表单中运行跟踪。
SAP 智能表单 - 输出格式
您可以以输出文本格式打印智能表单,以及许多其他具有不同用途的输出格式,例如:智能表单的 XML 格式和 HTML 以在 Web 浏览器中显示表单。
以下输出格式是一些最常用的格式:
输出文本格式 - 这是标准的输出文本格式,它是 SAP 系统中打印表单的既定格式。您还可以将其转换为其他格式,例如 PDF。
XSF 输出 - 这是智能表单的 XML 格式。它包含已处理表单的表单内容,而不显示任何布局信息。
HTML 格式 - 也可以在 Web 浏览器中显示表单。它是 XSF 输出和 HTML 格式的组合,其中内容在没有任何布局信息的情况下进行处理,并且数据以表单格式显示到 Web 浏览器。
XDF 输出 - 它采用 XML 格式,既不包含表单也不包含其布局,并且显示表单接口处传递的数据应用程序。
输出格式设置在表单属性下定义。当您调用智能表单时,您可以使用标准参数来覆盖输出设置。
SAP 智能表单 - 输出介质
您可以将智能表单发送到不同的输出介质。一些不同输出介质的示例包括:
- 打印机
- 传真
- 电子邮件或
- XML 格式
智能表单被转发到其他接口以将表单传输到不同的输出介质。
示例 - 要在打印机上获取打印输出,您需要先设置打印机。
要控制输出,您需要在智能表单的接口处传递不同的参数。SAP 智能表单将参数值传递到不同的输出介质。
您可以为每个输出格式设置不同的输出介质:
OTF 格式
您可以使用不同的输出处理方法,例如:
- 后台打印处理
- 通过电子邮件
- 到传真机
通过电子邮件发送表单的参数值 - 当您想通过电子邮件发送智能表单时,应为生成的函数模块填写以下电子邮件参数。
MAIL_SENDER/MAIL_RECIPIENT - 您应设置这些参数以传递文档的发件人和收件人。要设置参数值,您需要创建对象类型为RECIPIENT的 BOR 对象并输入参数。
MAIL_APPL_OBJ 参数 - 您可以使用此参数将应用程序对象与发送的文档链接。您也应该为此参数创建一个BOR对象。
通过传真发送表单的参数 - 要以传真格式发送表单,您需要将设备参数设置为TELEFAX而不是后台打印模式。它将打开一个对话框,用户可以在其中输入传真号码以使用传真作为输出介质。
XSF 格式
您可以将此输出格式传递到不同的输出介质,例如:
- 后台打印处理
- 在应用程序程序中作为表返回
要传递用于后台打印处理的输出格式,您需要将参数传递到 SAP 系统的后台打印对话框。此对话框可用于控制表单输出。后台打印对话框中可以使用不同的选项:
- 新的后台打印请求
- 定义队列中请求的保留时间
- 选择页面
- 将授权链接到后台打印请求
- 指定存档设置
HTML 格式
您可以使用此输出介质将其作为表返回到应用程序程序中。
SAP 智能表单 - 运行跟踪
此功能允许您跟踪智能表单的打印功能。使用此功能,它可以跟踪如何处理智能表单的打印请求。
事务:SFTRACE
要对打印请求执行跟踪,可以使用事务:SFTRACE。
当使用为智能表单生成的函数模块激活跟踪时,它会将跟踪存储在每个输出的数据库中。
使用此跟踪选项,您可以确定处理节点的顺序或处理因错误而终止的时间。此选项特定于用户,并且仅记录为激活它的用户。
跟踪级别
跟踪级别用于确定跟踪的详细程度。跟踪级别 5 包含一般信息,跟踪级别 80 确定最详细的跟踪级别。要激活跟踪级别,请单击下面屏幕截图中给出的打开选项。
当跟踪处于活动状态时,以下设置是可能的 -
级别 - 跟踪输出中的详细级别。
逻辑页面 - 用于将跟踪输出限制到特定页面。这在跟踪级别 30 时很有用。
窗口 - 用于将跟踪输出限制到智能表单中的特定窗口。
ABAP 断点 - 这些选项在执行跟踪级别时内部使用。
跟踪设置
在跟踪设置中定义了各种跟踪级别。下面列出了一些最常见的级别 -
警告或错误(跟踪级别 5) - 跟踪级别、跟踪版本、日期和时间以及系统信息。
文档信息(跟踪级别 15) - 包含其他信息 - 输出通道、表单属性、表单结构和输出结果。
页面(跟踪级别 30) - 用于包含已处理页面的名称。
窗口(跟踪级别 40) - 包含有关已处理窗口名称的信息。
输出区域(跟踪级别 45) - 包含有关表输出区域的信息。
单元格更改(跟踪级别 47) - 此跟踪级别用于包含表中处理的行类型和单元格的输出。
文本信息(跟踪级别 50) - 用于包含已处理输出节点的属性值。
字段(跟踪级别 60) - 用于包含输出文本中字段的名称和值。
扫描仪标记(跟踪级别 80) - 这是最大跟踪级别,定义在分析文本节点中的文本时扫描仪的输出。
在下一章中,我们将详细讨论 SAP 智能表单中的高级开发概念。
高级开发概念
在本章中,我们将详细讨论 SAP 智能表单的高级开发概念。本章还将涵盖特殊节点、表单处理和功能模块等方面。
SAP 智能表单 – 特殊节点
在 SAP 智能表单中,您可以使用不同的特殊节点作为高级开发概念的一部分。要在智能表单中添加特殊节点,您应该将其移动到导航树中。
在每个页面上,右键单击 → 打开上下文菜单 → 创建 → 流程逻辑 → 命令。
可以使用以下特殊节点类型列表 -
命令节点
这通常用于插入用于不同应用程序目的的命令。您可以使用命令节点在主窗口中插入动态分页符。在命令节点下,您可以使用不同的选项来应用动态分页符 -
转到新页面 - 此命令用于提供分页符,并且仅允许在主窗口中使用。
重置段落编号 - 此选项可用于设置指定大纲段落的计数器。
包含打印机控制 - 此选项用于将打印控制发送到输出设备。
打印请求的自由属性 - 此选项可用于定义打印请求的属性。
程序行
程序行可用于执行合计和子合计的计算。您可以在树结构中插入程序行。
在“常规属性”选项卡上,使用“输入参数”和“输出参数”表传递全局字段。使用 ABAP 代码,您可以访问在这些表中输入的全局字段。
复杂区段
您可以使用此选项组合节点类型的选项卡页,要创建复杂区段节点,请单击“创建”→“复杂区段”。
在“复杂区段”的“常规属性”选项卡中,您可以定义用于组合不同选项卡页的设置,例如 -
- 事件选项卡
- 表选项卡和
- 模板选项卡。
SAP 智能表单 – 表单处理
在智能表单中,您使用表单生成器下的树结构来定义表单逻辑,以打印智能表单中的文本、图形和不同元素。当智能表单被激活时,会生成一个功能模块,并且 SAP 智能表单处理表单的树结构并使用 ABAP 编程代码来打印表单内容。
智能表单的输出由树结构中的下级节点决定,这些节点构成表单生成器中的页面和窗口。对于树中的每个节点,您都可以定义输出选项和条件。
节点在以下场景中处理 -
条件 -
当为节点设置条件并且系统评估条件时。如果发现为假,则不处理节点及其在树结构中的下级节点。
下级节点可以根据节点类型直接处理。
还可以处理分配给节点的操作。
当您为节点及其下级节点定义输出选项,并且将单个输出选项分配给下级节点时,则该选项会覆盖上级节点的输出选项。
以下条件类型可用于处理节点。
简单 IF 条件 - 使用 AND 或 OR 选项完成。
复杂 IF 条件 - 使用程序行。
事件查询组合
SAP 智能表单 – 功能模块
激活智能表单时,会生成一个功能模块。功能模块上可以应用各种标准参数。这些参数直接出现在表单界面中,无法更改。要激活智能表单,请单击顶部的激活按钮。
当从应用程序调用功能模块时,您可以使用这些参数定义输出格式或打印请求或其他各种目的。
报表 - zcall_smartform。
调用功能 - '/1BCDWB/SF00000279'
这里 SF00000279 - 代表功能模块。
但这并不是调用功能模块的推荐方法,因为功能模块名称是根据系统中的编号范围生成的。当您将智能表单传输到生产系统时,会生成一个新的功能模块。
为了解决这个问题,建议使用函数 - SSF_FUNCTION_MODULE_NAME 来动态获取功能模块名称。
报表 - zcall_smartform。
数据 - fname TYPE rs38l_fnam。
调用功能 - 'SSF_FUNCTION_MODULE_NAME’
如何获取功能模块名称?
要检查智能表单的功能模块名称,请导航到顶部的“环境”选项卡 →“功能模块名称”。
功能模块显示在下一个窗口中 -
您还可以使用事务 SE 11执行反向操作,并转到表 - STXFADMI。
SAP智能表单 - 表单图形
在本章中,我们将详细讨论在 SAP 智能表单中使用表单图形。本章将涵盖预览图形、导入图形和传输图形等方面。
SAP 智能表单 – 预览图形
您可以在智能表单中添加不同的图形,例如公司徽标、背景图形等。您可以使用图形节点在智能表单中显示图形,并通过在树结构中添加节点类型图形。
要在 SAP 系统中查看图形,请使用事务 SE78。这将打开“管理表单图形”对话框。在左侧,双击文档服务器上的存储文件夹 → 图形 → BMAP 位图图像。
选择图形并单击屏幕信息。
单击“屏幕信息”按钮时,它会显示 SAP 系统中图形的技术属性和管理数据。
SAP 智能表单 – 导入图形
要包含背景图形,请使用页面节点的背景图形节点。您可以使用事务 SE78将图形导入 SAP 系统。
要导入图形,请双击文档服务器上的存储文件夹 → 图形 → 通用图形中树结构中的图形格式。
要导入,请选择图形 → 导入。
要在表单生成器中使用图形,请转到左侧的导航树并创建节点类型 → 图形。
图形节点可以直接在页面节点下创建,或者您可以在布局中使用上下文菜单放置图形节点。
输入节点的唯一名称和描述。
在“常规属性”选项卡上 → 您可以包含彩色图形或黑白图形。您可以输入“对象”、“ID”和“名称”字段来识别图形。
在“技术属性”下,您可以根据打印机设置定义分辨率。当您使用较小的分辨率时,它会增加表单上图形的大小。
打印机驱动程序或打印机支持以下分辨率 -
- 75 dpi
- 100 dpi
- 150 dpi
- 200 dpi
- 300 dpi
- 600 dpi
SAP 智能表单 – 传输图形
在 SAP 系统中,可以将图形从一个系统传输到另一个系统。转到事务 SE78,您可以在那里选择“传输”选项将图形从一个系统移动到另一个系统。
事务:SE78 将打开“管理表单图形”。
这将打开“管理表单图形”,并在树中选择所需的图形。
选择图形 → 传输按钮,然后您应该输入工作台请求。
您可以使用现有请求或创建新请求来执行传输,然后单击“继续”。
SAP 智能表单 - 应用程序和迁移
在本章中,我们将详细讨论在 SAP 智能表单中如何在应用程序中使用表单。此外,我们还将了解如何将 SAP 脚本表单迁移到 SAP 智能表单。
SAP 智能表单 – 在应用程序中使用表单
您还可以在 Web 浏览器的业务应用程序中使用智能表单,这些表单称为 Web 表单。Web 表单是具有与智能表单相同布局的 HTML 表单,可用于在 Internet 中打印表单。
当您将智能表单用作 Web 表单时,它会将 XSF 输出转换为 HTML 格式。智能样式用于格式化 Web 表单。
还可以从浏览器获取 Web 表单的打印输出,为了保持良好的质量,建议以 PDF 格式将表单发送到 Web 浏览器。
SAP 智能表单 – 迁移
也可以将 SAP 脚本表单迁移到智能表单,并将 SAP 脚本样式迁移到智能样式。当系统将 SAP 脚本样式转换为智能样式时,系统会转换所有段落和字符格式及其属性。
当 SAP 脚本表单迁移到智能表单时,会执行以下操作 -
所有页面和窗口的属性都将迁移。
文本复制到表单中。
语言属性和输出选项将被复制。
转换SAP脚本命令行并以文本格式显示它们。
您还可以执行脚本表单的大规模迁移。
事务:SMARTFORMS 并输入要创建的表单的名称。
转到实用程序 → 迁移 → 导入SAPscript表单。
这将打开迁移SAP脚本表单窗口对话框。您需要选择源表单的名称和语言 → ENTER。
您可以看到表单构建器的更改模式。您还可以更改表单逻辑和表单样式。要激活智能表单,请点击激活按钮。
同样,您可以将SAP脚本样式转换为SAP智能样式。
SAP智能表单 – 迁移到PDF表单
您可以将现有的SAP智能表单迁移到Adobe提供的交互式PDF表单。要使用此功能,您需要执行所有图形的迁移。
要执行迁移,您应该使用事务:SMARTFORMS。
导航到实用程序 → 迁移 → 交互式表单 → 导出。
在下一个对话框中,您应该输入要迁移的智能表单的名称、基于PDF的目标和目标接口。默认情况下,系统会为交互式PDF表单建议与智能表单相同的名称。
点击继续按钮,如下面的屏幕截图所示。
在下一个窗口中,系统将显示设置对话框,您可以在其中检查不同的迁移选项。
在下一个窗口中,选择创建对象目录条目,为接口输入包并将其保存为本地项目。
下一步是将表单分配给包或将表单保存为本地对象,然后迁移完成。
这就是您如何执行SAP智能表单到Adobe交互式表单的迁移。