2020-09-01 00:41发布
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)朋友, 谁能告诉我如何从sap... 显示全部
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
朋友,
谁能告诉我如何从sap脚本中调用子例程。
谢谢。
马赫什语
hi ..
调用ABAP子例程:PERFORM
您可以使用PERFORM命令从任何程序中调用ABAP子例程(表单),但要遵循常规的ABAP运行时授权 检查。 您可以使用对子例程的此类调用来执行计算,从数据库中获取显示或打印时所需的数据,格式化数据等。
PERFORM命令和所有控制命令一样,是在格式化文档以进行显示或打印时执行的。 调用的子例程与文档之间的通信是通过符号来实现的,这些符号的值在子例程中设置。
系统不会在SAPscript替换模块(例如TEXT_SYMBOL_REPLACE或TEXT_INCLUDE_REPLACE)内执行PERFORM命令。 替换模块只能替换符号值或解析包含文本,而不能解释SAPscript控制命令。
在表单窗口中的语法:
/:在程序 >
/:使用&INVAR1&
/:使用&INVAR2&
......
/:更改&OUTVAR1&
/:更改&OUTVAR2&
...
/:ENDPERFORM
INVAR1和INVAR2是变量符号,可以是以下任何一种 四种SAPscript符号类型。
OUTVAR1和OUTVAR2是本地文本符号,因此必须是字符串。
必须在ABAP报告程序中定义通过上述命令行调用的ABAP子例程,如下所示:
FORM
OUT_TAB结构ITCSY。
ENDFORM。
通过/:USING ...传递的SAPscript符号的值现在存储在内部 表IN_TAB。 请注意,由于结构ITCSY中的字段Feld VALUE具有域TDSYMVALUE(CHAR 80),因此系统将这些值作为字符串传递给子例程。 请参见下面的示例,了解如何访问变量。
内部表OUT_TAB包含PERFORM语句中CHANGING参数的名称和值。 这些参数是本地文本符号,即字符字段。 请参阅下面的示例,了解如何在子例程中返回变量。
从SAPscript形式中,调用了ABAP程序QCJPERFO中的子例程GET_BARCODE。 然后,其中包含的简单条形码("首页","下一页","最后一页")被打印为局部变量符号。
SAPscript形式的定义:
/:在程序QCJPERFO中执行GET_BARCODE
/:使用&page&
/:使用&NEXTPAGE&
/:更改&BARCODE&
/
/&BARCODE&
调用ABAP程序的代码:
报告QCJPERFO。
FORM GET_BARCODE表IN_PAR结构ITCSY
OUT_PAR结构ITCSY。
数据:PAGNUM LIKE SY-TABIX,"页码
类似于SY-TABIX的下一页。"下一页的数目
使用键" PAGE"读取表IN_PAR。
检查SY-SUBRC = 0。
PAGNUM = IN_PAR-VALUE。
使用键" NEXTPAGE"读取表IN_PAR。
NEXTPAGE = IN_PAR-VALUE。
使用键"条形码"读取表OUT_PAR。
如果PAGNUM = 1。
OUT_PAR -VALUE =‘|’。 "首页
ELSE。
OUT_PAR-VALUE =‘||’。"下一页
ENDIF。
如果NEXTPAGE = 0。
OUT_PAR-VALUE + 2 =" L"。 "标志:最后一页
修改OUT_PAR索引的SY-TABIX。
问候
veeresh
最多设置5个标签!
hi ..
调用ABAP子例程:PERFORM
您可以使用PERFORM命令从任何程序中调用ABAP子例程(表单),但要遵循常规的ABAP运行时授权 检查。 您可以使用对子例程的此类调用来执行计算,从数据库中获取显示或打印时所需的数据,格式化数据等。
PERFORM命令和所有控制命令一样,是在格式化文档以进行显示或打印时执行的。 调用的子例程与文档之间的通信是通过符号来实现的,这些符号的值在子例程中设置。
系统不会在SAPscript替换模块(例如TEXT_SYMBOL_REPLACE或TEXT_INCLUDE_REPLACE)内执行PERFORM命令。 替换模块只能替换符号值或解析包含文本,而不能解释SAPscript控制命令。
在表单窗口中的语法:
/:在程序 >
/:使用&INVAR1&
/:使用&INVAR2&
......
/:更改&OUTVAR1&
/:更改&OUTVAR2&
...
/:ENDPERFORM
INVAR1和INVAR2是变量符号,可以是以下任何一种 四种SAPscript符号类型。
OUTVAR1和OUTVAR2是本地文本符号,因此必须是字符串。
必须在ABAP报告程序中定义通过上述命令行调用的ABAP子例程,如下所示:
FORM
一周热门 更多>