如何将数据写入表

2020-08-13 15:16发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我没有将数据写入table。 桌子是由我创建的。您能帮我吗?

代码如下:

在lt_dz处将LOOP AT放入wa_dz。
 选择单个maktx INTO wa_dz-maktx
       从makt中,matnr = wa_dz-matnr和spras = sy-langu。
     SHIFT wa_dz-matnr左删除领先'0'。
     "如果sy-tcode ='ZRMM009'和wa_h-zbsat ='C'。
      " wa_dz-ssmng = wa_dz-bdmng。
  如果wa_h-zbsat ='S'。
       通话功能'CONVERSION_EXIT_ALPHA_INPUT'
         出口
           输入= wa_dz-ssmng
         输入
           输出= wa_dz-ssmng。
     更新ztpsmx SET SSMNG = wa_dz-ssmng"我仅将数据写入表中。
           其中zpsdh = l_zpsdh并且zgwei = wa_dz-zgwei并且matnr = wa_dz-matnr。
     万一。
     从wa_dz TRANSPORTING matnr maktx ssmng修改lt_dz。
   结局。


 

(29.0 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我没有将数据写入table。 桌子是由我创建的。您能帮我吗?

代码如下:

在lt_dz处将LOOP AT放入wa_dz。
 选择单个maktx INTO wa_dz-maktx
       从makt中,matnr = wa_dz-matnr和spras = sy-langu。
     SHIFT wa_dz-matnr左删除领先'0'。
     "如果sy-tcode ='ZRMM009'和wa_h-zbsat ='C'。
      " wa_dz-ssmng = wa_dz-bdmng。
  如果wa_h-zbsat ='S'。
       通话功能'CONVERSION_EXIT_ALPHA_INPUT'
         出口
           输入= wa_dz-ssmng
         输入
           输出= wa_dz-ssmng。
     更新ztpsmx SET SSMNG = wa_dz-ssmng"我仅将数据写入表中。
           其中zpsdh = l_zpsdh并且zgwei = wa_dz-zgwei并且matnr = wa_dz-matnr。
     万一。
     从wa_dz TRANSPORTING matnr maktx ssmng修改lt_dz。
   结局。


 

(29.0 kB)
付费偷看设置
发送
8条回答
Aaron 3364
1楼 · 2020-08-13 15:58.采纳回答

我找到了答案。 我将代码置于错误位置。

在lt_dz处进入wa_dz的环,其中ssmng> 0并且zuart ='PE'。
       通话功能" CONVERSION_EXIT_ALPHA_INPUT"
         出口
           输入= wa_dz-matnr
         输入
           输出= wa_dz-matnr。


       gmitem-material = wa_dz-matnr。
       gmitem-plant = wa_dz-werks。  "工厂
       gmitem-stge_loc = wa_dz-lgfsb。  "发出库存地
       gmitem-move_type ='411'。  "移动类型


       gmitem-move_plant = wa_dz-werks。
       gmitem-move_stloc = wa_dz-lgort。  "接收库存地
       gmitem-entry_qnt = wa_dz-ssmng。  "实收数量
          更新ztpsmx SET SSMNG = wa_dz-ssmng其中zpsdh = l_zpsdh AND zgwei = wa_dz-zgwei AND matnr = wa_dz-matnr。"我将其放在此处。
       连接wa_dz-zbanz'/'wa_dz-zgwei INTO gmitem-item_text。  "班组/工位
       追加gmitem。
       清除gmitem。
 *序列号
       如果wa_dz-zzvin不是INITIAL。
         gmserial-matdoc_itm = l_zeile。
         gmserial-serialno = wa_dz-zzvin。
         附加gmserial。
         l_zeile = l_zeile + 1。
       万一。
 *
     结局。


 
奄奄一息的小鱼
2楼-- · 2020-08-13 15:51

HI Sandra Rossi

谢谢。

Baoming ROSE
3楼-- · 2020-08-13 15:52

您好, Harry jing

在Ztable中检查MATNR数据

 LOOP AT lt_dz INTO wa_dz。
 选择单个maktx INTO wa_dz-maktx
       从makt中,matnr = wa_dz-matnr和spras = sy-langu。

     SHIFT wa_dz-matnr左删除领先'0'。  "检查一下如何在ZTable中捕获它。

  如果wa_h-zbsat ='S'。
     更新ztpsmx SET SSMNG = wa_dz-ssmng
        其中zpsdh = l_zpsdh和zgwei = wa_dz-zgwei并且matnr = wa_dz-matnr。
  万一。
     从wa_dz TRANSPORTING matnr maktx ssmng修改lt_dz。
   ENDLOOP。
落灬小鱼
4楼-- · 2020-08-13 15:53

例如,使用这种SELECT编写一个临时程序,以通过执行更广泛的搜索来了解为什么找不到行(在每个SELECT上测试SY-DBCNT或SY-SUBRC才能知道

 ztpsmx的数据itab类型表。
 从ztpsmx中选择*,将zpsdh ='PE2008100008'和zgwei ='UB40'和matnr ='85101200FNAA2000'放入表itab中。
 从ztpsmx中选择COUNT(*),其中zpsdh ='PE2008100008'到表itab中。
 从ztpsmx中选择COUNT(*),将zpsdh ='PE2008100008'和zgwei ='UB40'插入表itab。
 从ztpsmx的SELECT COUNT(*)(其中matnr ='85101200FNAA2000')到表itab中。
 从ztpsmx的SELECT'COUNT'(*)到表itab的类似'85101200F%'的位置。
 从ztpsmx中选择COUNT(*),在其中将'%85101200F%'放入表itab中。

等。

四川大学会员
5楼-- · 2020-08-13 16:10

到Sandra

我不按程序将数据写入表。

jovirus
6楼-- · 2020-08-13 16:04

当我使用您的代码并更改代码时,错误就在这里。

Aaron 3364
7楼-- · 2020-08-13 15:56

数据仍未写入ztable中。

一周热门 更多>