在SAP脚本中,如何定义将哪些数据发送到元素



>我需要对SAPScript进行一些更改。我有程序和表单名称

节目: RBOSORDER01形式:RBOSORDER02

我希望更改表单中显示的一些数据。我已经调试了程序,我看到调用写入表单,例如:

 CALL FUNCTION 'WRITE_FORM'
       EXPORTING
            ELEMENT = 'ITEM_TEXT'
       EXCEPTIONS
            ELEMENT = 1
            WINDOW  = 2.

但是数据如何在程序和表单之间传递。我无法在两者之间链接。我希望看到一个带有"ITEM_TEXT"传递的结构或数据元素,然后将这些数据打印在表单中的该元素"ITEM_TEXT"处,但我不清楚链接。

我也看过 SE71 中的表格,但看不到您在哪里定义它。这里的链接在哪里,我错过了什么?

这是形式,所以 SE71 是你需要的。您必须先找到显示此元素 (ITEM_TEXT) 的窗口,然后查找元素并查看其中显示的内容。默认情况下,SAPSript 表单直接使用打印程序的全局变量(结构、内部表)(还有一些其他选项,例如 INCLUDE 文本)。因此,例如,如果在打印程序中声明了一个全局变量gv_text,并且它显示在SAPScript中,那么它将在表单中看起来像&GV_TEXT&。

如果在 SE71 中打开调试,也可以调试 SAPScript(如果表单很大,可能会很痛苦)。

函数'WRITE_FORM'在这种情况下,只是使用ELEMENT='ITEM_TEXT'调用表单的入口点(SE71/RBOSORDER02)。

因此,您最终将在主窗口中找到:

/E      ITEM_TEXT
/:      INCLUDE &VBDPA-TDNAME& OBJECT VBBP ID 0001 PARAGRAPH IT

在这种情况下,您必须调试此时"VBDPA-TDNAME"是什么,然后您将通过事务"SO10"(标准文本)找到它的值

INCLUDE 可以是复杂的文本,并且可以有自己的格式字符串。

正如Jozsef之前所说,VBDPA-TDNAME在打印程序中是全局定义的。(SE38n/RBOSORDER01)

相关内容

  • 没有找到相关文章

最新更新