在ABAP中复制内部表

在ABAP中复制内部表,abap,Abap,代码错误 *&---------------------------------------------------------------------* *& Report ZSUBROUTINE_TABLES *& *&---------------------------------------------------------------------* *& *& *&------------------------------

代码错误

*&---------------------------------------------------------------------*
*& Report  ZSUBROUTINE_TABLES
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  zsubroutine_tables.
TYPES : BEGIN OF line_type,
          eno(3) TYPE n,
          ename(30) TYPE c,
          esal TYPE i,
        END OF line_type.

DATA itab TYPE line_type OCCURS 10 WITH HEADER LINE.
DATA jtab TYPE STANDARD TABLE OF line_type.
**"DATA jtab TYPE line_type OCCURS 10 WITH HEADER LINE.**

PERFORM fill TABLES itab.
jtab = itab[].
PERFORM output TABLES jtab.


*&---------------------------------------------------------------------*
*&      Form  fill
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->P_ITAB     text
*----------------------------------------------------------------------*
FORM fill TABLES p_itab LIKE itab[].
  p_itab-eno = '14'.
  p_itab-ename = 'Aman'.
  p_itab-esal = 3000.
  APPEND p_itab.

  p_itab-eno = '142'.
  p_itab-ename = 'Raman'.
  p_itab-esal = 5000.
  APPEND p_itab.
ENDFORM.                    "fill

*&---------------------------------------------------------------------*
*&      Form  output
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->P_JTAB     text
*----------------------------------------------------------------------*
FORM output TABLES p_jtab LIKE jtab[].
  LOOP AT p_jtab.
    WRITE : / p_jtab-eno, p_jtab-ename, p_jtab-esal.
  ENDLOOP.
ENDFORM.                    "output
如果未注释,则粗体代码会引发错误,原因是什么。 在注释代码中,itab和jtab都以类似的方式声明。
错误:“ITAB”的类型无法转换为“JTAB”的类型。请注意,JTAB的两个定义不同,即注释的一个有标题行,而另一个没有标题行。因为ITAB[]也没有头行,所以只有当JTAB没有头行时,才可以将ITAB[]分配给JTAB。如果您想在标题行中使用JTAB的定义,您需要将ITAB直接分配给JTAB,而不需要钩状括号。

您的问题是什么?这远远不是一个简单的例子——它包含了很多不需要演示问题的东西。jtab[]=itab[]。谢谢