我想通过SAP Query实现表ESLL、EKPO和EKKO之间的连接。具体来说,这些是我想要实现的步骤:
- 在选择参数中,每次我进入查询时,我都会为ESLL-EXTSRVNO提供不同的值
- 基于该值,查询应当基于给定的CCD_ 2自动选择CCD_ 1
- 则查询应将CCD_ 3设置为等于之前步骤的ESLL-PACKNO值
- 则查询应将新的
ESLL-PACKNO
值设置为等于EKPO-PACKNO,并检索以下字段:EKPO-EBELN
、EKPO-EBELP
、EKPO-MATKL
我已经在信息集中写了一些代码,但我不知道如何修复它;数据";我写过的部分:
DATA: it_esll TYPE TABLE OF esll.
DATA: it_esll2 TYPE TABLE OF esll.
DATA: it_ekpo TYPE TABLE OF ekpo.
在";选择开始";我写过的部分:
SELECT packno
FROM esll
INTO TABLE it_esll.
IF sy-subrc EQ 0.
SELECT packno FROM esll
into TABLE it_esll2
for ALL ENTRIES IN it_esll
where sub_packno EQ it_esll-packno.
IF sy-subrc EQ 0.
SELECT ebeln ebelp bukrs werks matkl menge netpr peinh
FROM ekpo
into TABLE it_ekpo
for ALL ENTRIES IN it_esll2
WHERE packno EQ it_esll2-packno.
endif.
endif.
而且,为了显示我想要的所有信息,我添加了以下联接:ESLL-PACKNO->EKPO-PACKNO->EKPO-EBEL->EKKO-EBELN
最后我想显示这些信息:
- EKPO-EBELN
- EKPO-EBELP
- EKPO-MATKL
- EKKO-BSART
- EKPO-PACKNO
你能帮帮我吗?
一个选项可以是在信息集中使用Alias表,类似于以下内容:
- 第一张表:ESLL
- 具有联接ZESLL-PACKNO=ESLL-SUB_PACKNO的第二表ZESLL(ESLL上的别名)
- 第三个表:EKPO-PACKNO=ZESLL-PACKNO上带有联接的EKPO
- 第四张表:EKKO与EBELN的联接
所以你可以避免ABAP
Infoset加入