在本章中,我们将详细讨论SAP Smart Forms的高级开发概念.本章还将介绍特殊节点,表单处理和功能模块等方面.
SAP智能表单 - 特殊节点
在SAP智能表单中,您有不同的特殊节点,可以用作高级开发概念的一部分.要以智能形式添加特殊节点,您应该将其移动到导航树.
在每个页面上,右键单击 → 打开上下文菜单 → 创造 → Flow Logic → 命令.
以下特殊节点类型列表可以使用 :
命令节点
这通常用于为不同的应用程序插入命令.您可以使用命令节点在主窗口中插入动态分页符.您可以在命令节点下使用不同的选项来应用动态分页符和减号;
转到新页面 : 此命令用于提供分页符,仅允许在主窗口中使用.
重置段落编号 : 此选项可用于设置指定大纲段落的计数器.
包含打印机控制 : 此选项用于将打印控制发送到输出设备.
假脱机请求的自由属性 : 此选项可用于定义假脱机请求的属性.
程序行
程序行可用于执行总计和小计的计算.您可以在树结构中插入程序行.
在"常规属性"选项卡上,使用表输入参数和输出参数来传递全局字段.使用ABAP代码,您可以访问在这些表中输入的全局字段.
复杂部分
您可以使用此选项组合节点的选项卡页面类型,创建复杂节节点单击Create → 复杂部分.
在复杂部分的"常规属性"选项卡中,您可以定义用于组合不同选项卡页面的设置,例如 :
事件选项卡
表格标签和
模板标签.
SAP智能表单 - 表单处理
在智能表单中,使用表单构建器下的树结构来定义表单逻辑以打印文本,图形和智能形式的不同元素.激活智能表单时,会生成一个功能模块,SAP智能表单处理表单的树结构,并使用ABAP编程代码打印表单内容.
输出智能表单由树结构中的劣等节点确定,该结构构成表单构建器中的页面和Windows.对于树中的每个节点,您可以定义输出选项和条件.
在以下方案中处理节点 :
条件 :
当为节点设置条件并且系统评估条件时.如果发现为false,则不处理树结构中的节点及其下级节点.
可以根据节点类型直接处理劣质节点./p>
也可以处理分配给节点的操作.
定义时节点及其下级节点的输出选项和单个输出选项分配给下级节点,然后选项覆盖上级节点的输出选项.
以下条件类型可用于处理节点.
简单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 .