Select查询数据放一个内表,然后在下一条select语句用where语句in 该内表

Select查询数据放一个内表,然后在下一条select语句用where语句in 该内表的方法如下:

第一个内表须定义range类型:

rangesit_matnr for ekpo-matnr.

然后查询出来的数据要用low

并且需要定义signoption

select语句后要用endselect结束。

  SELECT
      objek AS matnr INTO it_matnr-low FROM ausp WHERE
      atinn '0000000009' AND atzhl '1' AND mafid 'O' AND klart '001' AND
      atwrt IN s_atwrt."查询制造商对应的所有物料,然后根据物料来查询PO

      it_matnr-sign 'I'.
      it_matnr-option 'EQ'.
      APPEND it_matnr.
    ENDSELECT.

这样下面的select语句就可以in 这个range了。

 IF NOT it_matnr[] IS INITIAL.
      "对于没有子partgroup part关系的物料
      SELECT
        ebeln
        ebelp INTO CORRESPONDING FIELDS OF TABLE it_po1 FROM ekpo WHERE matnr IN it_matnr.

猜你喜欢

转载自blog.csdn.net/yuqinying112/article/details/38706795