在ABAP method中传递internal table

标签:ABAP

今天又遇到奇怪的情况,method中传递internal table时,没法写type table of。
例如:
METHODS save IMPORTING itab TYPE STANDARD TABLE of sflight.
是无法通过语法检查的。

于是可以改成:
METHODS save IMPORTING itab TYPE ANY TABLE.
但如果要对这个internal table排序,ANY TABLE和HASHED TABLE是不行的,于是可以写成这样
METHODS add IMPORTING wa TYPE sflight
          CHANGING itab TYPE STANDARD TABLE.
可是如果要用delete...where语句的话,又会报错。
于是改成这样,终于OK了:
TYPES ty_sflight TYPE STANDARD TABLE of sflight WITH KEY
      mandt
      carrid
      connid
      fldate.
METHODS del IMPORTING wa TYPE sflight
          CHANGING itab TYPE ty_sflight.

0条评论 你不来一发么↓

    想说点什么呢?