我编写了一个程序,使用WRITE
输出设备编号列表。事务 IE03
让用户输入设备编号,执行,然后显示该设备的一大堆信息。
我想要做的是能够双击我的程序输出的数字之一,然后显示 IE03
将提供的数据。
如何将我的自定义程序与标准显示功能集成?
最佳答案
首先,不要使用WRITE
来创建列表 - 这是石器时代的技术。将数据存储在基于字典结构的内部表中,然后使用 SALV 库创建列表。查看示例程序 SALV_DEMO_TABLE_EVENTS
以了解如何显示列表并对双击使用react。请注意,您可以扔掉演示程序的大部分内容,因为它显示了很多不同的功能。
然后,您不会将任何内容“转发”到交易。您可以使用ABAP语句CALL TRANSACTION
(这应该是显而易见的)来调用事务,您甚至可以使用SPA/GPA参数的扭曲组合和附加来传递一些值...并跳过第一个屏幕
。请注意,这仅适用于某些类型的交易,并且仅当它们被编程为这样做时才有效。为此,您需要使用以下方法将设备编号存储在全局变量中
SET PARAMETER ID 'EQN' FIELD l_my_equipment_number.
然后调用交易
CALL TRANSACTION 'IE03' AND SKIP FIRST SCREEN.
请注意,此语句不会执行默认的授权检查 - 如果您需要这样做,请使用关键字文档指定的功能模块 AUTHORITY_CHECK_TCODE
。
关于abap - 双击将输出转发到交易,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13382656/