首页 > 其他分享 >用CSAI_BOM_MAINTAIN修改WBS BOM

用CSAI_BOM_MAINTAIN修改WBS BOM

时间:2023-09-18 12:37:39浏览次数:41  
标签:CSAI SY wa MAINTAIN BOM tab stpob data csin


注意在修改之前要先用'CSAI_BOM_READ读取该BOM的数据 。

可实现对BOM行项目做增删改的操作,而且可以带上更改号。

REPORT  ZTEST5.

data wa_csin type CSIN.

data tab_stpob type table of STPOB.
data tab_STKOB type table of STKOB.
data tab_DEP_DATA type table of CSDEP_DAT.
  data tab_DEP_DESCR type table of CSDEP_DESC.
data tab_DEP_ORDER type table of CSDEP_ORD.
data tab_DEP_SOURCE type table of CSDEP_SORC.
data tab_DEP_DOC type table of CSDEP_DOC.

data g_warn_stlnr type STZUB-STLNR.

data g_flwarning type CAPIFLAG-FLWARNING.
cLEAR wa_csin.

 wa_csin-MATNR = '000000000000001040'.
 wa_csin-EMENG = 2.
 wa_csin-datuv = sy-datum.
 wa_csin-PSPNR = '00065061'.
 wa_csin-werks = '2000'  .
 wa_csin-stlan = '1'.  " 4
 wa_CSIN-STLNR = '00001548'.
 wa_csin-stlty = 'P'.


data: l_text type string.


CALL FUNCTION 'CSAI_BOM_READ'
   EXPORTING
     ECSIN              = wa_csin
   IMPORTING
     fl_warning = g_flwarning
   TABLES
    t_stpob            = tab_stpob
    T_STKOB            = tab_stkob
    T_DEP_DATA         = tab_dep_data
    T_DEP_DESCR        = tab_dep_descr
    T_DEP_ORDER        = tab_dep_order
    T_DEP_SOURCE       = tab_dep_source
    T_DEP_DOC          = tab_dep_doc
  EXCEPTIONS
    ERROR              = 1
    OTHERS             = 2
           .
IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE 'I' NUMBER SY-MSGNO into l_text
       WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    write l_text.
else.



data wa_stpob  like STPOB.
data wa_stzub  like STZUB.

data wa_STKOB like STKOB.


* wa_csin-aennr = '009900159470'.


read table tab_stkob into wa_stkob index 1.
 wa_stkob-stlST = '1'.
 WA_STKOB-BMENG = 3.
 WA_STKOB-AENNR = 'A-4008057012'.
CLEAR wa_stzub.
 wa_stzub-stlty = 'P'.



loop at tab_stpob into wa_stpob.
    IF WA_STPOB-IDNRK ='000000000000001090'.
*      WA_stpob-vbkz = 'D'.     "与删除相关
*      wa_stpob-aennr = 'A-4008057012'.
*      MODIFY TAB_STPOB FROM WA_STPOB.
    elseIF WA_STPOB-IDNRK = '000000000000001080'.
        wa_stpob-menge = 150.
        wa_stpob-aennr = 'A-4008057012'.
        modify tab_stpob from wa_stpob.
    ENDIF.
    CLEAR wa_stpob.
endloop. 
 " 新增行项目
*CLEAR wa_stpob.
*wa_stpob-stlty = 'P'.
*wa_stpob-idnrk = '000000000000001201'.
*wa_stpob-postp = 'L'.
*wa_stpob-posnr = '0418' .
*wa_stpob-menge = 6.
*WA_STPOB-AENNR = 'A-4008057012'.
*wa_stpob-potx1 = 'liu'.
*wa_stpob-potx2 =  'jin'.
*wa_stpob-datuv = sy-datum.
*APPEND wa_stpob TO tab_stpob.


*CLEAR wa_stpob.
*wa_stpob-stlty = 'P'.
*wa_stpob-idnrk = '000000000000001060'.
*wa_stpob-postp = 'L'.
*wa_stpob-posnr = '0016' .
*wa_stpob-menge = 3.
*wa_stpob-potx1 = 'liu2'.
*wa_stpob-potx2 =  'jin3'.
*wa_stpob-datuv = sy-datum.
*APPEND wa_stpob TO tab_stpob.
*CLEAR wa_stpob.

data tab2 like tab_stpob.

 WA_CSIN-AENNR = 'A-4008057012'.

CALL FUNCTION 'CSAI_BOM_MAINTAIN'
   EXPORTING
*   FL_BOM_CREATE                      = ' '
*   FL_NEW_ITEM                        = ''
*   FL_COMPLETE                        = ' '
     ECSIN                              = wa_csin
     ESTKOB                             = wa_stkob
     ESTZUB                             = wa_stzub
*   FL_NO_CHANGE_DOC                   = ' '
     FL_COMMIT_AND_WAIT                 = 'X'
*   FL_NO_COMMIT_WORK                  = ' '
*   FL_ALE                             = ' '
*   FL_DEFAULT_VALUES                  = 'X'
*   FL_NEW_ROMEN                       = 'X'
*   FL_RECURSIVE                       = ' '
    FL_IMPLICIT_SUBITEM_DELETION       = 'X'
*  IMPORTING
*    fl_warning = g_flwarning
*   ASTKOB                             =
*   ASTZUB                             =
   TABLES
     T_STPOB                            =  tab_stpob
*    ET_STPOB                           = tab2
*   T_STPUB                            =
*   T_LTX_ITM                          =
*   T_LTX_BOM                          =
  EXCEPTIONS
    ERROR                              = 1
    OTHERS                             = 2
           .
IF sy-subrc NE 0.   " here Sy-subrc is 1
   MESSAGE ID SY-MSGID TYPE 'I' NUMBER SY-MSGNO into l_text
           WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
           write l_text.

else.
   write 'OK'.

    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        WAIT          = 'X'
*    IMPORTING
*      RETURN        =
              .

ENDIF.




ENDIF.

标签:CSAI,SY,wa,MAINTAIN,BOM,tab,stpob,data,csin
From: https://blog.51cto.com/u_8215601/7508970

相关文章

  • 用CSAI_BOM_READ读取WBS元素BOM
    REPORTZTES3.datawa_csintypeCSIN.datatab_stpobtypetableofSTPOB.datatab_STKOBtypetableofSTKOB.datatab_DEP_DATAtypetableofCSDEP_DAT.datatab_DEP_DESCRtypetableofCSDEP_DESC.datatab_DEP_ORDERtypetableofCSDEP_ORD.datatab......
  • SAP中多层扩展有效地bom
     功能:根据指定的Mbom以及序列号和有效期来查找有效的Mbom(假设Mbom的变更包括按有效期和按序列号) 函数组:ZPLM_BOM_FG1 functionmodule:  (1) 读取单层的有效Mbom   ZPLM_GET_USED_BOMimport:P_SERNR   like AEEF-SERNR_LO  序列号P_DATUV  like......
  • BOM的基础概念
    BOM是指产品或项目所需的物料清单,即列出了制造、组装或维护产品所需的所有零件、原材料和子装配件的清单。BOM通常包含零件号、零件名称、数量和描述等信息,以便在制造过程中对所有零部件进行跟踪和管理。BOM可以帮助制定生产计划、采购零件、预测成本和确保质量控制等方面的工作。......
  • EBS:展BOM标准API重复的BUG
    EBSR12.2.X标准展BOM的API程序(BOMPEXPL.EXPLODER_USEREXIT()过程)展BOM后写入标准展BOM临时表BOM_EXPLOSION_TEMP。用CONNECTBYPRIOR做层级排序时,有时候其速度非常慢,有时又很快。后来分析到,展BOM明细重复了。CONNECTBYPRIOR排序时产生了数百万行资料。知道问题点了。不能修......
  • JavaScript—BOM
    BOM是什么?BrowserObjectModel是浏览器对象模型官方:浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构,BOM由多个对象构成,其中代表浏览器窗口的window对象是BOM的顶层对象,其他对象都是该对象的子对象人话:用来获取或设置浏览器的相关的属性、行为,例如:新建窗口......
  • CSAPP-Bomb Lab
    这个实验的逻辑是这样的需要使用gdbdebug进入到phase_x的各个函数,但是单步调试step是进不去的(也不难理解,如果gdb可以直接进入那这个实验还有什么难点)但是反汇编得到的结果是全部的内容,通过阅读反汇编代码,找到一些关键节点,通过gdb对二进制进行dubug添加breakpoint从而查看一些......
  • JavaScript—BOM
    概念BOM(BrowserObjectModel)是指浏览器对象模型,浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。BOM由多个对象组成,其中代表浏览器窗口的window对象是BOM的顶层对象,其他对象都是该对象的子对象。我们在浏览器中的一些操作都可以使用BdM的方式进行编程......
  • 八月更新 | CI 构建计划触发机制升级、制品扫描 SBOM 分析功能上线!
    点击链接了解详情这个八月,腾讯云CODINGDevOps对持续集成、制品管理、项目协同、平台权限等多个产品模块进行了升级改进,为用户提供更灵活便捷的使用体验。以下是CODING新功能速递,快来看看是否有您期待已久的功能特性:01CI构建计划触发机制升级在原有代码变更及合并请求......
  • 电子元器件的BOM配单是什么
    BOM配单,也可称为物料清单,是制造电子产品时使用的一份清单,包括了该产品所需的所有电子元器件、机械部件、电路板、连接器等各种物料及其数量、型号、规格、厂家等详细信息。BOM是电子产品制造过程中非常重要的一部分,它对于产品的质量、成本和生产效率有着重要的影响。BOM的作用:确保......
  • SOLIDWORKS如何快速生成汇总BOM,SolidKits软件助您一臂之力
    物料清单是一个制造企业的核心文件数据。各个部门的活动都要用到物料清单,生产部门要根据物料清单来生产产品,库房要根据物料清单进行发料,财会部门要根据物料清单来计算成本,维修服务部门要通过物料清单了解需要什么备件等。但是各个部门需要用到的物料清单又不尽相同,因此再出物料清......