-1

内部テーブルを宣言しました。

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 というコンポーネントがないという構文エラーが表示されます

4

1 に答える 1

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」のフィールドも必要です。

これはそのままでは機能しないかもしれませんが、正しい道を歩むはずです。

于 2014-12-23T10:27:04.137 に答える