2
我的程序可以通过两种方式启动:如何获取ABAP中的程序调用堆栈跟踪?
START OF SELECTION
事件调用了我的一个本地类中的MAIN
函数。 ZAVGTTA4
事务调用了相同的方法。
at PAI
对于BACK事件,当调用LEAVE TO SCREEN '0'.
时,根据它的启动方式,我的程序有两种行为。我想回到选择屏幕(1000)。
我想过要查询堆栈,在那里我一定会找到我的程序是如何被调用的。我可以看到堆栈跟踪是不同的,但我不知道如何从程序中访问我的堆栈。我听说过我认为可以帮助我的RTTI。
Thx。它做到了。顺便说一句,你的解释是,你的意思是在'DATA'部分中声明了一个名为“behavior”的数据对象,并且实现了一些逻辑?因为我是这么做的。但是,如果你和别的东西不同(你认为解释它非常好,P),请提供一些更多细节。无论如何thx很多! – 2012-07-16 11:06:50
我有一些问题要给出一个正确的例子,因为我不太明白,你怎么称呼什么。有什么方法可以调用你的程序?通过提交和交易'ZAVGTTA4'?系统字段SY-TCODE包含实际的事务。如果'SY-TCODE ='ZAVGTTA4',那么你的程序被调用事务'ZAVGTTA4'。 – knut 2012-07-16 20:38:28
我知道它已经回答了,但是我想知道变量SY-CPROG的值是多少(这就是调用程序名)。 – Jorg 2012-07-17 07:18:26