ABAP--如何获取ABAP的程序事件顺序的调用堆栈 .

本文深入探讨了ABAP编程中的加法运算实现和利用系统调用堆栈进行详细跟踪的方法。通过具体代码示例,详细解释了如何定义形式、变量和执行加法操作,并最终输出结果。同时,展示了如何通过系统调用堆栈获取和展示调用过程中的关键信息,包括事件类型和事件名称。这为理解和调试ABAP程序提供了实用的工具。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

report yhk.

data: num1 type i,
      num2 type i,
      sum  type i.

num1 = 2. num2 = 4.
perform addit.

*&---------------------------------------------------------------------*
*&      Form  addit
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
form addit.
  sum = num1 + num2.
  perform out.
endform.                    "addit

*&---------------------------------------------------------------------*
*&      Form  out
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
form out.
  field-symbols: <fs> type any.
  data: l_cstack_tab  type sys_callst,
        ls_cstack_tab like line of l_cstack_tab.

  write: / 'Sum of', num1, 'and', num2, 'is', sum.
  call function 'SYSTEM_CALLSTACK'
    importing
      et_callstack = l_cstack_tab. " internal table
* l_cstack_tab 里就是abap的调用堆栈
  write: sy-uline.
  loop at l_cstack_tab into ls_cstack_tab.

    write: / sy-tabix, ls_cstack_tab-eventtype,  ls_cstack_tab-eventname.

    clear: ls_cstack_tab.
  endloop.


endform.                    "out

 

Result.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值