ABAP - 读取长文本优化

  • 做程序优化的时候发现在循环里面读取长文本,用(READ_TEXT\类的方法)读取太消耗性能了,于是用读取底表的方法去取。
    
    DATA lt_stxl_raw    TYPE TABLE OF ty_stxl_raw.
    DATA ls_stxl_raw    TYPE ty_stxl_raw.

    DATA lt_tline       TYPE TABLE OF tline.
    DATA ls_tline       TYPE tline.

    DATA lt_text        TYPE TABLE OF ty_text .
    DATA ls_text        TYPE ty_text.

    RANGES lr_tdname FOR stxl-tdname.

    " 把内表中的VBELN 放入到ranges里面(  )
    LOOP AT t_data INTO DATA(ls_data).
      lr_tdname = VALUE #( sign = 'I' option = 'EQ' low = ls_data-vbeln ).
      COLLECT lr_tdname.
    ENDLOOP.

    " 获取销售订单文本
    SELECT stxl~tdobject,stxl~tdid,stxl~tdname,stxl~clustr,stxl~clustd
      FROM stxl
     WHERE stxl~tdobject = 'VBBK'
      AND  stxl~tdname IN @lr_tdname
      AND ( stxl~tdid = '0001' OR
            stxl~tdid = 'Z120' )
      AND  stxl~tdspras = @sy-langu
     INTO TABLE @DATA(lt_stxl).

    " 解压长文本
    LOOP AT lt_stxl INTO DATA(ls_stxl).
      CLEAR:ls
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值