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



>我已经声明了一个内部表。

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 的组件

你应该声明你的"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"字段来连接它们。

这可能不是开箱即用的,但它应该让你走上正确的道路。

最新更新