SELECT ... FOR ALL ENTRIES有货币字段时出错

时间:2016-03-17 07:32:46

标签: sap abap

"在SELECT访问中,读取的文件无法放在提供的目标字段中。"执行这行代码时出现此错误:

SELECT vbeln
       posnr
       matnr
       netpr
       netwr
       kondm
       FROM vbap INTO TABLE t_tab
       FOR ALL ENTRIES IN postab
       WHERE vbeln = postab-vbeln.

我逐个尝试,每次我放一个货币字段时都会触发这个转储。谁知道根本原因?

2 个答案:

答案 0 :(得分:2)

你的t_tab如何宣布?它似乎被宣布为结构,或者,组件顺序可能是错误的。尝试做出这样的声明:

DATA: postab LIKE TABLE OF vbap,
      t_tab  LIKE TABLE OF vbap.

并用这段代码替换INTO子句

FROM vbap INTO CORRESPONDING FIELDS OF TABLE t_tab

答案 1 :(得分:0)

如果t_tab中的字段包含其他名称,则您选择的字段必须与as匹配:

SELECT vbeln AS ....
   posnr AS ....
   matnr AS ....
   netpr
   netwr
   kondm
   FROM vbap INTO TABLE t_tab
   FOR ALL ENTRIES IN postab
   WHERE vbeln = postab-vbeln.

如果名称相同,请尝试INTO CORRESPONDING FIELDS OF TABLE 另外,请确保t_tab中的字段格式正确。