Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Abap 语法错误“;“字段ITAB未知”;在itab中添加wa_Abap_Internal Tables - Fatal编程技术网

Abap 语法错误“;“字段ITAB未知”;在itab中添加wa

Abap 语法错误“;“字段ITAB未知”;在itab中添加wa,abap,internal-tables,Abap,Internal Tables,我试图向我的内部表中添加一条新记录,但这段代码给了我一个错误,但我所做的事情与我在SAP手册中所做的完全相同。我做错了什么 TYPES : BEGIN OF personel_bilgileri, Ad TYPE c LENGTH 20, Soyad TYPE c LENGTH 20, Telefon_no Type n LENGTH 12, END OF personel_bilgileri. TYPES personel_bilgi_tablo_tipi TYPE STAN

我试图向我的内部表中添加一条新记录,但这段代码给了我一个错误,但我所做的事情与我在SAP手册中所做的完全相同。我做错了什么

TYPES : BEGIN OF personel_bilgileri,
  Ad TYPE c LENGTH 20,
  Soyad TYPE c LENGTH 20,
  Telefon_no Type n LENGTH 12,
  END OF personel_bilgileri.

TYPES personel_bilgi_tablo_tipi TYPE STANDARD TABLE OF
personel_bilgileri WITH NON-UNIQUE KEY ad soyad.

DATA : personel_bilgi_kaydi TYPE personel_bilgileri,
       personel_bilgi_tablosu TYPE personel_bilgi_tablo_tipi.

personel_bilgi_kaydi-ad = 'Murat'.
personel_bilgi_kaydi-soyad = 'Sahin'.
personel_bilgi_kaydi-telefon_no = '5556677'.

APPEND personel_bilgi_kaydi TO personel_bilgileri.

personel_bilgi_kaydi-ad  = 'Ayse'.
personel_bilgi_kaydi-soyad = 'Bil'.
personel_bilgi_kaydi-telefon_no = '5556611'.

APPEND personel_bilgi_kaydi TO personel_bilgileri.

personel_bilgi_kaydi-ad = 'Mehmet'.
personel_bilgi_kaydi-soyad = 'Kalan'.
personel_bilgi_kaydi-telefon_no = '5556622'.

APPEND personel_bilgi_kaydi TO personel_bilgileri.
实际上,我不知道应该使用哪种添加记录的方法。我的意思是做这个手术的方法太多了。哪种方法才是正确的

我得到这个错误:

The field Personel_bilgileri is unknown, but there are following fields similar names...

此外,我可以使用LOOP AT来实现这一点,但我不了解LOOP AT的用法。它做什么?

在代码示例中,您首先将
PERSONEL\u BILGILERI
定义为
类型
,然后将
PERSONEL\u BILGI\u TABLO\u TIPI
定义为
PERSONEL\u BILGILERI
的内部表
类型

到目前为止,还没有声明任何变量。只有数据类型

然后:

  • PERSONEL\u BILGI\u KAYDI
    的定义类型为
    PERSONEL\u BILGILERI
    。这是一个用作工作区的结构(这很好)
  • PERSONEL\u BILGI\u TABLOSU
    的定义类型为
    PERSONEL\u BILGI\u TABLO\u TIPI
    。因此,
    PERSONEL\u BILGI\u TABLOSU
    是您的内部表格
附加工作区时,必须附加到内部表,而不是数据类型。尝试使用
PERSONEL\u BILGI\u TABLOSU
而不是您的类型
PERSONEL\u BILGI

APPEND personel_bilgi_kaydi TO personel_bilgileri_tablosu.

在代码示例中,首先将
PERSONEL\u BILGILERI
定义为
TYPE
,然后将
PERSONEL\u BILGI\u TABLO\u TIPI
定义为
PERSONEL\u BILGILERI
的内部表
TYPE

到目前为止,还没有声明任何变量。只有数据类型

然后:

  • PERSONEL\u BILGI\u KAYDI
    的定义类型为
    PERSONEL\u BILGILERI
    。这是一个用作工作区的结构(这很好)
  • PERSONEL\u BILGI\u TABLOSU
    的定义类型为
    PERSONEL\u BILGI\u TABLO\u TIPI
    。因此,
    PERSONEL\u BILGI\u TABLOSU
    是您的内部表格
附加工作区时,必须附加到内部表,而不是数据类型。尝试使用
PERSONEL\u BILGI\u TABLOSU
而不是您的类型
PERSONEL\u BILGI

APPEND personel_bilgi_kaydi TO personel_bilgileri_tablosu.
您需要将WA(工作区,personel_bilgi_kaydi)附加到表(personel_bilgi_tablosu)中。不能将WA附加到定义的类型

所以它应该是这样的:

APPEND personel_bilgi_kaydi TO personel_bilgi_tablosu.
您还可以使用此代码在页面上显示它们

    LOOP AT personel_bilgi_tablosu into personel_bilgi_kaydi.

       write: / 'İSİM: ' ,personel_bilgi_kaydi-ad,
             'SOYİSİM: ',personel_bilgi_kaydi-soyad,
              'TEL NO: ', personel_bilgi_kaydi-telefon_no.

    ENDLOOP.
您可以使用其他方法在页面上显示表格,例如重用\u ALV\u GRID\u DISPLAY。您可以在scn.sap.com上获得更多信息

希望能有所帮助

科莱·格尔辛

Talha

您需要将WA(工作区,personel_bilgi_kaydi)添加到表(personel_bilgi_tablosu)中。不能将WA附加到定义的类型

所以它应该是这样的:

APPEND personel_bilgi_kaydi TO personel_bilgi_tablosu.
您还可以使用此代码在页面上显示它们

    LOOP AT personel_bilgi_tablosu into personel_bilgi_kaydi.

       write: / 'İSİM: ' ,personel_bilgi_kaydi-ad,
             'SOYİSİM: ',personel_bilgi_kaydi-soyad,
              'TEL NO: ', personel_bilgi_kaydi-telefon_no.

    ENDLOOP.
您可以使用其他方法在页面上显示表格,例如重用\u ALV\u GRID\u DISPLAY。您可以在scn.sap.com上获得更多信息

希望能有所帮助

科莱·格尔辛


Talha

这是SAP库解释循环中的页面:另外,请不要在代码中使用非英语单词,bilgileri和kaydi会让将来维护代码的人更难维护代码。这是SAP库解释循环中的页面:另外,请不要在代码中使用非英语单词,bilgileri和kaydi使您的代码更难维护,无论谁有一天会维护您的代码。