如何用多个数据库表填充内部表?

时间:2014-12-23 07:27:20

标签: sap abap

我已宣布内部表格。

DATA ITAB_DEPT TYPE TABLE OF ZCLOUD9_DEPT WITH HEADER LINE.

SELECT A~DEPT_ID A~DEPT_NAME A~DEPT_NO A~EMP_ID B~FIRST_NAME B~LAST_NAME
INTO TABLE ITAB_DEPT FROM ZCLOUD9_DEPT AS A
INNER JOIN  ZCLOUD9_EMP AS B
ON A~EMP_ID = B~EMP_ID
WHERE A~DEPT_ID = MEM_DEPT_ID.

WRITE AT: /1 'Department ID' , 15 'Dept Name' , 30 'Tel No' , 40 'Dept I/C ID' , 50 'Dept I/C'.
uline.
LOOP AT ITAB_DEPT.
WRITE AT: /1 ITAB_DEPT-DEPT_ID , 15 ITAB_DEPT-DEPT_NAME ,
30 ITAB_DEPT-DEPT_NO, 40 ITAB_DEPT-EMP_ID , 50 ITAB_DEPT-FIRST_NAME , 59 ITAB_DEPT-LAST_NAME.

当我激活程序时,语法错误表明itab_dept没有名为first_name / last_name的组件

1 个答案:

答案 0 :(得分:1)

您应该声明您的ITAB_DEPT'与此相似。

types: begin of struct_dept.
    include type zcloud9_dept.
    include type zcloud9_emp.
types: end of struct_dept.

data: itab_dept type table of struct_dept with header line.

现在,' ITAB_DEPT'只包含' ZCLOUD9_DEPT'的字段表。您还需要' ZCLOUD9_EMP'的字段。加入他们。

这可能无法立即使用,但它应该让您走上正确的道路。