• 关于使用READ TABLE语句


    READ tabe 是用来遍历内表,取第一条符合条件的记录。

    READ TABLE <itab> [INTO <wa>] WITH KEY <key> [BINARY SEARCH].

    add-20200427

    WITH KEY 中的检索条件比较符不能使用‘<>’(不等于)。

      如果只想取得内部表中不等于某条件的一条记录,那么请使用下面变通方法。

           LOOP AT itab WHERE KEY <> ‘XX’.

              此处取得第一条记录。

              EXIT.

           ENDLOOP.

       如果在运行时 <KEY> 值为空,则 统忽略该关键字段。另外可对关键字段指定偏移量和长度。

     

    用 INTO 选项可以指定目标区域 。如果表格有表头行,则可以忽略 INTO 选项。这样,表格工作区域就成了目标区域。

    系统读取 <itab> 中匹配 <key> 中所定义的关键字的第一个条目。

    如果使用二分法搜索法的话,需要先对内表进行相关条件的排序。

    如果找到有适当关键字的条目,则将系统字段 SY-SUBRC设置为0,并且SY-TABIX包含该行的索引。否则,将 SY-SUBRC设置为非0值 。

    例子如下:

    DATA:IT_TAB1 TYPE STANDARD TABLE OF EKPO WITH HEADER LINE,
          IT_TAB2 TYPE STANDARD TABLE OF EKPO,
          IT_TAB3 TYPE STANDARD TABLE OF EKPO,
          WA_TAB1 TYPE EKPO,
          WA_TAB2 TYPE EKPO,
          WA_TAB3 TYPE EKPO.
    SELECT * FROM EKPO INTO TABLE IT_TAB1 UP TO 10 ROWS.
    SELECT * FROM EKPO INTO TABLE IT_TAB2 UP TO 10 ROWS.
    SELECT * FROM EKPO INTO TABLE IT_TAB3 UP TO 10 ROWS.
    SORT IT_TAB1.
    SORT IT_TAB2.
    SORT IT_TAB3.
      READ TABLE IT_TAB1 WITH KEY MATNR = 'QQQ'.

    WRITE:/ SY-SUBRC,SY-TABIX.

    READ TABLE IT_TAB2 INTO WA_TAB2 WITH KEY MATNR = 'M06A-CAA42' TXZ01 = '芯片M06A-CAA42'.“这个是多个KEY的

    WRITE:/ SY-SUBRC,SY-TABIX.

    READ TABLE IT_TAB3 INTO WA_TAB3 WITH KEY MATNR = 'M06A-CAA42' TXZ01 = '三氧化二铝'.

    WRITE:/ SY-SUBRC,SY-TABIX.

    READ TABLE IT_TAB1 WITH KEY '4500000002'.
    WRITE:/ SY-SUBRC,SY-TABIX.

  • 相关阅读:
    Auto.js常用控件整理
    python对接口sign签名操作
    # 859.亲密字符串
    linux系统如何挂载FTP共享文件
    解决“Tomcat控制台输出乱码问题”
    关于“Unknown or unsupported command 'install'”问题解决的小结
    输出九九乘法表
    python webdriver混合驱动测试框架(数据驱动+关键字驱动)
    python webdriver关键字框架
    python webdriver测试框架--数据驱动DB驱动
  • 原文地址:https://www.cnblogs.com/BruceKing/p/10716856.html
Copyright © 2020-2023  润新知