ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

使用BAPI_MATERIAL_SAVEDATA无法写入扩展字段

2021-06-22 13:05:36  阅读:214  来源: 互联网

标签:BAPI marc extensionin MATERIAL lv extensioninx 240 SAVEDATA


 

1.目的: 导入MARC增强字段 ZZJYFS, ZZBLBM, ZZBLTXT

 

 

 

 

 



 

 

 2. BAPI结构已经加上了增强字段

 

 

 

 

 

 3. 程序代码

    IF bapi_te_marc IS NOT INITIAL.
      bapi_te_marc-plant  = plantdata-plant.
      bapi_te_marcx-plant = plantdata-plant.
      CLEAR: extensionin, lv_marc_value.
      lv_marc_value  = bapi_te_marc.
      extensionin-structure  = 'BAPI_TE_MARC'.
      extensionin-valuepart1 = lv_marc_value(240).
      extensionin-valuepart2 = lv_marc_value+240(240).
      extensionin-valuepart3 = lv_marc_value+480(240).
      extensionin-valuepart4 = lv_marc_value+720(240).
      APPEND extensionin.

      CLEAR: extensioninx, lv_marc_valuex.
      lv_marc_valuex = bapi_te_marcx.
      extensioninx-structure  = 'BAPI_TE_MARCX'.
      extensioninx-valuepart1 = lv_marc_valuex(240).
      extensioninx-valuepart2 = lv_marc_valuex+240(240).
      extensioninx-valuepart3 = lv_marc_valuex+480(240).
      extensioninx-valuepart4 = lv_marc_valuex+720(240).
      APPEND extensioninx.
    ENDIF.

***************"执行bapi*************************
    CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
      EXPORTING
        headdata             = headdata
        clientdata           = clientdata
        clientdatax          = clientdatax
        plantdata            = plantdata
        plantdatax           = plantdatax
        forecastparameters   = forecastparameters
        forecastparametersx  = forecastparametersx
        planningdata         = planningdata
        planningdatax        = planningdatax
        storagelocationdata  = storagelocationdata
        storagelocationdatax = storagelocationdatax
        valuationdata        = valuationdata
        valuationdatax       = valuationdatax
        warehousenumberdata  = warehousenumberdata
        warehousenumberdatax = warehousenumberdatax
        salesdata            = salesdata
        salesdatax           = salesdatax
        storagetypedata      = storagetypedata
        storagetypedatax     = storagetypedatax
        flag_online          = ' '
        flag_cad_call        = ' '
        no_dequeue           = ' '
        no_rollback_work     = ' '
      IMPORTING
        return               = return
      TABLES
        materialdescription  = materialdescription
        unitsofmeasure       = unitsofmeasure
        unitsofmeasurex      = unitsofmeasurex
        internationalartnos  = internationalartnos
        materiallongtext     = materiallongtext
        taxclassifications   = taxclassifications
        returnmessages       = returnmessages
        prtdata              = prtdata
        prtdatax             = prtdatax
        extensionin          = extensionin
        extensioninx         = extensioninx.
    IF return-type = 'S' AND gv_test IS INITIAL."执行成功
      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' "提交该BAPI
        EXPORTING
          wait = 'X'.
    ELSE.
      CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
    ENDIF.

导入数据:

 

 值已经写到扩展结构:

 

 

 

 

 

BAPI执行结果,不会去更新扩展字段值

 

 

 

 

标签:BAPI,marc,extensionin,MATERIAL,lv,extensioninx,240,SAVEDATA
来源: https://www.cnblogs.com/rainysblog/p/14918063.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有