zoukankan      html  css  js  c++  java
  • SD bapi

    1、SO创建

      CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2' "#EC CI_USAGE_OK[2438131]
        EXPORTING
          ORDER_HEADER_IN     U_W_HEADER_IN
          ORDER_HEADER_INX    U_W_HEADER_INX
        IMPORTING
          SALESDOCUMENT       LV_VBELN
        TABLES
          RETURN              LIT_RETURN
          ORDER_ITEMS_IN      U_IT_ORDER_ITEMS_IN
          ORDER_ITEMS_INX     U_IT_ORDER_ITEMS_INX
          ORDER_PARTNERS      U_IT_ORDER_PARTNERS
          ORDER_TEXT          U_IT_ORDER_TEXT
          ORDER_SCHEDULES_IN  U_IT_SCHDL
          ORDER_SCHEDULES_INX U_IT_SCHDLX
          EXTENSIONIN         U_IT_IN_EXTENSIONIN.

    2、Service order 修改

       LOOP AT U_IT_MDLTAB ASSIGNING <LW_MDLTAB>


          WHERE ZSTA_SO  <> CNS_STAS_1                         "指図更新ステータス
            AND ZVBELN_R U_W_AUFK-KDAUF.                     "受注伝票

        CLEAR:
              LW_METHOD,
              LW_COMPONENT.

    *   Get Characteristic Values
        READ TABLE U_IT_AUSP ASSIGNING FIELD-SYMBOL(<LW_AUSP>"#EC CI_STDSEQ
        WITH KEY ATWRT <LW_MDLTAB>-ATWRT.  "#EC CI_SUBRC

        IF <LW_AUSP> IS ASSIGNED.
    *     Get Batches
          READ TABLE U_IT_MCH1 ASSIGNING FIELD-SYMBOL(<LW_MCH1>"#EC CI_STDSEQ
          WITH KEY MATNR <LW_MDLTAB>-ZMATNR
                   CUOBJ_BM <LW_AUSP>-CUOBJ"#EC CI_SUBRC
        ENDIF.

    *   Get Plant from Delivery Order
        READ TABLE U_IT_VBAP1 ASSIGNING FIELD-SYMBOL(<LW_VBAP1>"#EC CI_STDSEQ
        WITH KEY ZZSCWN <LW_MDLTAB>-ZZSCWN
                 MATNR <LW_MDLTAB>-ZMATNR"#EC CI_SUBRC

        IF <LW_VBAP1> IS ASSIGNED.
          READ TABLE U_IT_LIPS ASSIGNING FIELD-SYMBOL(<LW_LIPS>"#EC CI_STDSEQ
          WITH KEY VGBEL <LW_VBAP1>-VBELN
                   VGPOS <LW_VBAP1>-POSNR"#EC CI_SUBRC
        ENDIF.

        READ TABLE LIT_AFVC ASSIGNING <LW_AFVC>  "#EC CI_STDSEQ
        WITH KEY AUFNR U_W_AUFK-AUFNR"#EC CI_SUBRC

        IF SY-SUBRC 0.

          <LW_AFVC>-VORNR <LW_AFVC>-VORNR + 10.

          CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
            EXPORTING
              INPUT         <LW_AFVC>-VORNR
           IMPORTING
             OUTPUT        LW_OPERATION-ACTIVITY
                    .

          ELSE.

          <LW_AFVC>-VORNR CNS_0010.
          <LW_AFVC>-AUFNR U_W_AUFK-AUFNR.

          APPEND <LW_AFVC> TO C_IT_AFVC.

        ENDIF.


        LW_OPERATION-CONTROL_KEY CNS_SM01.
        LW_OPERATION-DESCRIPTION U_V_LTXA1.

        APPEND LW_OPERATION TO LIT_OPERATION.

    *   退避対象データ
        APPEND  <LW_MDLTAB> TO LIT_MDLTAB.
        LV_REFNO LV_REFNO + 1.
    *   BAPI処理方法
        LW_METHOD-REFNUMBER   LV_REFNO.                      "リンク対象方法の参照番号
        LW_METHOD-OBJECTTYPE  CNS_COMPONENT.                 "オブジェクトタイプ
        LW_METHOD-METHOD      CNS_CREATE.                    "メソッド
        LW_METHOD-OBJECTKEY   U_W_AUFK-AUFNR.                "指図番号
        APPEND LW_METHOD TO LIT_METHOD.


        CLEAR LW_METHOD.
        LW_METHOD-REFNUMBER  LV_REFNO.
        LW_METHOD-OBJECTTYPE CNS_OPERATION.
        LW_METHOD-METHOD     CNS_CREATE.
        LW_METHOD-OBJECTKEY  U_W_AUFK-AUFNR.
        APPEND LW_METHOD TO LIT_METHOD.

    *   指図構成品目
        LW_COMPONENT-MATERIAL_LONG  <LW_MDLTAB>-ZMATNR.      "品目コード
        IF <LW_MCH1> IS ASSIGNED.
          LW_COMPONENT-BATCH          <LW_MCH1>-CHARG.          "Batch Number
        ENDIF.
        LW_COMPONENT-ITEM_CAT       U_V_POSTP.               "変数明細カテゴリ
        LW_COMPONENT-ACTIVITY       LW_OPERATION-ACTIVITY.   "Operation Number
        LW_COMPONENT-REQUIREMENT_QUANTITY
                                    <LW_MDLTAB>-ZKWMENG.     "累積受注数量 (販売単位)
        LW_COMPONENT-REQUIREMENT_QUANTITY_UNIT
                                    <LW_MDLTAB>-ZVRKME.      "販売単位
        IF <LW_LIPS> IS ASSIGNED.
        LW_COMPONENT-PLANT         <LW_LIPS>-WERKS.          "Plant
        ENDIF.


        APPEND LW_COMPONENT TO LIT_COMPONENT.

      ENDLOOP.

    * 退避対象データ
      IF LIT_MDLTAB IS INITIAL.
        RETURN.
      ENDIF.

    * BAPI処理方法
      CLEAR LW_METHOD.
      LW_METHOD-REFNUMBER   0.                               "リンク対象方法の参照番号
      LW_METHOD-METHOD      CNS_SAVE.                        "メソッド
      LW_METHOD-OBJECTKEY   U_W_AUFK-AUFNR.                  "指図番号
      APPEND LW_METHOD TO LIT_METHOD.

    * Process Maintenance/Service Order
      CALL FUNCTION 'BAPI_ALM_ORDER_MAINTAIN'                  "#EC CI_USAGE_OK[2669857]
        TABLES                                                 "#EC CI_USAGE_OK[2438131]
          IT_METHODS       LIT_METHOD                          "BAPI構造
          IT_COMPONENT     LIT_COMPONENT                       "指図構成品目
          IT_OPERATION     LIT_OPERATION                       "Input Structure for PM/CS BAPIs Operations
          RETURN           LIT_RETURN.                         "リターンパラメータ

    3、PO创建

     DATA:
        LW_PO_HEADER      TYPE BAPIMEPOHEADER,
        "Structure [PO Header]
        LW_PO_HEADERX     TYPE BAPIMEPOHEADERX,
        "Structure [Header Data (Change Parameter)]
        LIT_ITEM          TYPE STANDARD TABLE OF BAPIMEPOITEM,
        "Internal table [Item Data]
        LW_ITEM           TYPE BAPIMEPOITEM,
        "Structure [Item Data]
        LIT_ITEMX         TYPE STANDARD TABLE OF BAPIMEPOITEMX,
        "Internal table [Item Data (Change Parameter)]
        LW_ITEMX          TYPE BAPIMEPOITEMX,
        "Structure[Item Data (Change Parameter)]
        LW_ACCOUN         TYPE BAPIMEPOACCOUNT,
        "Structure [Account Assignment Fields]
        LIT_ACCOUN        TYPE STANDARD TABLE OF BAPIMEPOACCOUNT,
        "Internal table [Account Assignment Fields]
        LW_ACCOUNX        TYPE BAPIMEPOACCOUNTX,
        "Structure[Account Assignment Fields (Change Parameter)]
        LIT_ACCOUNX       TYPE STANDARD TABLE OF BAPIMEPOACCOUNTX,
        "Internal table [Account Assignment Fields (Change Parameter)]
        LW_DELIVE_SCHED   TYPE BAPIMEPOSCHEDULE,
        "Structure [Delivery Schedule]
        LIT_DELIVE_SCHED  TYPE STANDARD TABLE OF BAPIMEPOSCHEDULE,
        "Internal table [Delivery Schedule]
        LW_DELIVE_SCHEDX  TYPE BAPIMEPOSCHEDULX,
        "Structure [Delivery Schedule (Change Parameter)]
        LIT_DELIVE_SCHEDX TYPE STANDARD TABLE OF BAPIMEPOSCHEDULX,
        "Internal table [Delivery Schedule (Change Parameter)]
        LW_FOR_UPDATE     TYPE TYP_W_FOR_UPDATE,
        "Structure[For update]
        LIT_FOR_UPDATE    TYPE TYP_IT_FOR_UPDATE,
        "Internal table [For update]
        LV_ITEMNUM        TYPE NUM5,
        "Variable[Item Number]
        LW_DATA_ADDON     TYPE TYP_BAPI_TE_MEPOITEM,
        "Structure [Item Data_addon]
        LW_DATA_ADDONX    TYPE BAPI_TE_MEPOITEMX,
        "Structure [Item Data_addon(Change Parameter)]
        LW_HEAD_ADDON     TYPE BAPI_TE_MEPOHEADER,
        "Structure [PO Header_addon]
        LW_HEAD_ADDONX    TYPE BAPI_TE_MEPOHEADERX,
        "Structure [PO Header_addonx]
        LIT_EXTEN         TYPE STANDARD TABLE OF BAPIPAREX,
        "Internal table「EXTENSIONIN」
        LW_EXTEN          TYPE BAPIPAREX,
        "Structure「EXTENSIONIN」
        LIT_PARTN         TYPE TYP_IT_PARTN,
        "Internal table「PARTNER」
        LW_PARTN          TYPE BAPIEKKOP,
        "Structure「PARTNER」
        LV_DATUM          TYPE SY-DATUM,
        LV_BSART          TYPE EKKO-BSART,
        LV_LIFNR          TYPE EKKO-LIFNR,
        LV_ZZPRRZ         TYPE EKKO-ZZPRRZ,
        LV_ZZSREN         TYPE EKKO-ZZSREN,
        LV_ZZCBENO        TYPE EKKO-ZZCBENO,
        LV_ZZOPZZ         TYPE EKPO-ZZOPZZ.

    * Read po data from fixed value
      PERFORM F_READ_PO_FIX
        CHANGING
          LV_BSART
          LV_LIFNR
          LV_ZZPRRZ
          LV_ZZSREN
          LV_ZZCBENO
          LV_ZZOPZZ.                                          "#EC CI_SUBRC


      LOOP AT U_IT_PODATA ASSIGNING FIELD-SYMBOL(<LW_PODATA>)
      GROUP BY EKORG  <LW_PODATA>-EKORG
                 LGORT  <LW_PODATA>-LGORT
                 C_DATE <LW_PODATA>-C_DATE
                 C_TIME <LW_PODATA>-C_TIME ).
        CLEAR:
        LW_PO_HEADER,      "Structure [PO Header]
        LW_PO_HEADERX,     "Structure [Header Data(Change Parameter)]
        LIT_ITEM,          "Internal table [Item Data]
        LIT_ITEMX,         "Internal table[Item Data(Change Parameter)]
        LV_ITEMNUM,        "Variable[Item Number]
        LW_HEAD_ADDON,     "Structure [PO Header_addon]
        LW_HEAD_ADDONX,    "Structure [PO Header_addonx]
        LIT_PARTN,         "Internal table「PARTNER」
        LIT_EXTEN.         "Internal table「EXTENSIONIN」

    *   Edit the structure [PO Header]
        LW_PO_HEADER-DOC_TYPE  LV_BSART.
        LW_PO_HEADER-VENDOR  LV_LIFNR.
        LW_PO_HEADER-COMP_CODE <LW_PODATA>-BUKRS.
        LW_PO_HEADER-DOC_DATE  GV_DATUM.
        LW_PO_HEADER-PURCH_ORG <LW_PODATA>-EKORG.
        LW_PO_HEADER-PUR_GROUP <LW_PODATA>-EKGRP.

    *   Edit the structure [Header Data (Change Parameter)]
        LW_PO_HEADERX-DOC_TYPE  CNS_CONSX.
        LW_PO_HEADERX-VENDOR    CNS_CONSX.
        LW_PO_HEADERX-COMP_CODE CNS_CONSX.
        LW_PO_HEADERX-DOC_DATE  CNS_CONSX.
        LW_PO_HEADERX-PURCH_ORG CNS_CONSX.
        LW_PO_HEADERX-PUR_GROUP CNS_CONSX.

    *   Edit the structure [PO Header_addon]
        LW_HEAD_ADDON-ZZPRRZ LV_ZZPRRZ.
        LW_HEAD_ADDON-ZZSREN LV_ZZSREN.
        LW_HEAD_ADDON-ZZCBENO LV_ZZCBENO.

    *   Edit the internal table「EXTENSIONIN」
        FIELD-SYMBOLS<LW_ANY> TYPE ANY.
        CLEAR LW_EXTEN.          "Structure「EXTENSIONIN」
        LW_EXTEN-STRUCTURE    CNS_MEPOHEADER.
        CALL METHOD CL_ABAP_CONTAINER_UTILITIES=>FILL_CONTAINER_C
          EXPORTING
            IM_VALUE     LW_HEAD_ADDON
          IMPORTING
            EX_CONTAINER LW_EXTEN+30.
        APPEND LW_EXTEN TO LIT_EXTEN.

    *   Edit the structure [PO Header_addonx]
        LW_HEAD_ADDONX-ZZPRRZ   CNS_CONSX.
        LW_HEAD_ADDONX-ZZSREN   CNS_CONSX.
        LW_HEAD_ADDONX-ZZCBENO  CNS_CONSX.

    *   Edit the internal table「EXTENSIONIN」
        CLEAR LW_EXTEN.          "Structure「EXTENSIONIN」
        LW_EXTEN-STRUCTURE    CNS_MEPOHEADERX.
        ASSIGN LW_EXTEN-VALUEPART1 TO <LW_ANY>
        CASTING TYPE BAPI_TE_MEPOHEADERX.
        <LW_ANY> LW_HEAD_ADDONX.
        APPEND LW_EXTEN TO LIT_EXTEN.
        CLEAR <LW_ANY>.

    *   Edit the Internal Table [LIT_PARTN]
        IF <LW_PODATA>-LIFN2 IS NOT INITIAL.
          LW_PARTN-PARTNERDESC CNS_Z9.             "Partner Function
          LW_PARTN-LANGU SY-LANGU.
          LW_PARTN-BUSPARTNO <LW_PODATA>-LIFN2.
          APPEND LW_PARTN TO LIT_PARTN.
        ENDIF.

        LOOP AT GROUP <LW_PODATA> ASSIGNING FIELD-SYMBOL(<LW_GROUP>).

          CLEAR:
          LW_ITEM,       "Structure [Item Data]
          LW_DATA_ADDON"Structure [Item Data_addon]
          LW_DATA_ADDONX,"Structure [Item Data_addon(Change Parameter)]
          LW_ITEMX,      "Structure[Item Data (Change Parameter)]
          LW_ACCOUN,     "Structure [Account Assignment Fields]
          LW_ACCOUNX,    "Structure[Account(Change Parameter)]
          LW_FOR_UPDATE"Structure[For update]

    *     Purchase Order Item Data edit
    *     Variable edit
          LV_ITEMNUM  =  LV_ITEMNUM + 1.

    *     Purchase Order Item Data
    *     Edit the internal table [Item Data]
          LW_ITEM-PO_ITEM  LV_ITEMNUM.
          LW_ITEM-MATERIAL_LONG <LW_GROUP>-MATNR.
          TRY .
            LW_ITEM-QUANTITY <LW_GROUP>-BDMNG.
          CATCH CX_ROOT.
            LW_ITEM-QUANTITY 0.
          ENDTRY.
          LW_ITEM-PO_UNIT  <LW_GROUP>-MEINS.
          LW_ITEM-PLANT    <LW_GROUP>-WERKS.
          LW_ITEM-STGE_LOC <LW_GROUP>-LGORT.
          APPEND LW_ITEM TO LIT_ITEM.

    *     Edit the internal table [Item Data (Change Parameter)]
          LW_ITEMX-PO_ITEM  LV_ITEMNUM.
          LW_ITEMX-MATERIAL_LONG CNS_CONSX.
          LW_ITEMX-QUANTITY CNS_CONSX.
          LW_ITEMX-PO_UNIT  CNS_CONSX.
          LW_ITEMX-PLANT    CNS_CONSX.
          LW_ITEMX-STGE_LOC CNS_CONSX.
          APPEND LW_ITEMX TO LIT_ITEMX.


    *     Edit the structure [Item Data_addon]
          LW_DATA_ADDON-PO_ITEM LV_ITEMNUM.
          LW_DATA_ADDON-ZZOPZZ  LV_ZZOPZZ.

    *     Edit the internal table「EXTENSIONIN」
          CLEAR LW_EXTEN.          "Structure「EXTENSIONIN」
          LW_EXTEN-STRUCTURE  CNS_MEPOITEM.
          CALL METHOD CL_ABAP_CONTAINER_UTILITIES=>FILL_CONTAINER_C
            EXPORTING
              IM_VALUE     LW_DATA_ADDON
            IMPORTING
              EX_CONTAINER LW_EXTEN+30.
          APPEND LW_EXTEN TO LIT_EXTEN.


    *     Edit the structure [Item Data_addonx]
          LW_DATA_ADDONX-PO_ITEM LV_ITEMNUM.
          LW_DATA_ADDONX-ZZOPZZ  CNS_CONSX.

    *     Edit the internal table「EXTENSIONIN」
          CLEAR LW_EXTEN.          "Structure「EXTENSIONIN」
          LW_EXTEN-STRUCTURE  CNS_MEPOITEMX.
          ASSIGN LW_EXTEN-VALUEPART1 TO <LW_ANY>
          CASTING TYPE BAPI_TE_MEPOITEMX.
          <LW_ANY> LW_DATA_ADDONX.
          APPEND LW_EXTEN TO LIT_EXTEN.
          CLEAR <LW_ANY>.

    *     Edit the internal table [Account Assignment Fields]
          LW_ACCOUN-PO_ITEM LV_ITEMNUM.
          LW_ACCOUN-PROFIT_CTR <LW_GROUP>-PRCTR.
          APPEND LW_ACCOUN TO LIT_ACCOUN.

    *     Edit the internal table [Account Assignment Fields (Change Parameter)]
          LW_ACCOUNX-PO_ITEM LV_ITEMNUM.
          LW_ACCOUNX-PROFIT_CTR CNS_CONSX.
          APPEND LW_ACCOUNX TO LIT_ACCOUNX.

    *     Edit the internal table [Delivery Schedule]
          LW_DELIVE_SCHED-PO_ITEM LV_ITEMNUM.
          LV_DATUM GV_DATUM + 14.
          LW_DELIVE_SCHED-DELIVERY_DATE LV_DATUM.
          APPEND LW_DELIVE_SCHED TO LIT_DELIVE_SCHED.

    *     Edit the internal table [Delivery Schedule (Change Parameter)]
          LW_DELIVE_SCHEDX-PO_ITEM LV_ITEMNUM.
          LW_DELIVE_SCHEDX-DELIVERY_DATE CNS_CONSX.
          APPEND LW_DELIVE_SCHEDX TO LIT_DELIVE_SCHEDX.

    *     Edit the internal table [For update]
          LW_FOR_UPDATE-SEQNO   <LW_GROUP>-SEQNO.
          APPEND LW_FOR_UPDATE TO LIT_FOR_UPDATE.

        ENDLOOP.

      DATA:
        LW_FOR_UPDATE TYPE TYP_W_FOR_UPDATE ##NEEDED,
        LV_NUM        TYPE BAPIMEPOHEADER-PO_NUMBER,
        "Variable[po_number]
        LIT_RETURN    TYPE TYP_IT_RETURN,
        "Internal table [Return]
        LV_STATUS     TYPE CHAR1,
        "variable[status]
        LV_FLG_UPD    TYPE CHAR1.
      "variable[status]

      CALL FUNCTION 'BAPI_PO_CREATE1'  "#EC CI_USAGE_OK[2438131]
        EXPORTING
          POHEADER         U_W_PO_HEADER
          POHEADERX        U_W_PO_HEADERX
        IMPORTING
          EXPPURCHASEORDER LV_NUM
        TABLES
          RETURN           LIT_RETURN
          POITEM           U_IT_ITEM
          POITEMX          U_IT_ITEMX
          POSCHEDULE       U_IT_DELIVE_SCHED
          POSCHEDULEX      U_IT_DELIVE_SCHEDX
          EXTENSIONIN      C_IT_EXTEN
          POACCOUNT        U_IT_ACCOUN
          POACCOUNTX       U_IT_ACCOUNX
          POPARTNER        U_IT_PARTN.

                                                             "#EC CI_STDSEQ
      LOOP AT LIT_RETURN TRANSPORTING NO FIELDS
        WHERE TYPE CNS_E
           OR TYPE CNS_A.
      ENDLOOP.

     

      LOOP AT U_IT_MDLTAB ASSIGNING <LW_MDLTAB>

          WHERE ZSTA_SO  <> CNS_STAS_1                         "指図更新ステータス
            AND ZVBELN_R U_W_AUFK-KDAUF.                     "受注伝票

        CLEAR:
              LW_METHOD,
              LW_COMPONENT.

    *> Start INS R2 Modification 2020/12/30--------------------------------*
    *   Get Characteristic Values
        READ TABLE U_IT_AUSP ASSIGNING FIELD-SYMBOL(<LW_AUSP>"#EC CI_STDSEQ
        WITH KEY ATWRT <LW_MDLTAB>-ATWRT.  "#EC CI_SUBRC

        IF <LW_AUSP> IS ASSIGNED.
    *     Get Batches
          READ TABLE U_IT_MCH1 ASSIGNING FIELD-SYMBOL(<LW_MCH1>"#EC CI_STDSEQ
          WITH KEY MATNR <LW_MDLTAB>-ZMATNR
                   CUOBJ_BM <LW_AUSP>-CUOBJ"#EC CI_SUBRC
        ENDIF.

    *   Get Plant from Delivery Order
        READ TABLE U_IT_VBAP1 ASSIGNING FIELD-SYMBOL(<LW_VBAP1>"#EC CI_STDSEQ
        WITH KEY ZZSCWN <LW_MDLTAB>-ZZSCWN
                 MATNR <LW_MDLTAB>-ZMATNR"#EC CI_SUBRC

        IF <LW_VBAP1> IS ASSIGNED.
          READ TABLE U_IT_LIPS ASSIGNING FIELD-SYMBOL(<LW_LIPS>"#EC CI_STDSEQ
          WITH KEY VGBEL <LW_VBAP1>-VBELN
                   VGPOS <LW_VBAP1>-POSNR"#EC CI_SUBRC
        ENDIF.

        READ TABLE LIT_AFVC ASSIGNING <LW_AFVC>  "#EC CI_STDSEQ
        WITH KEY AUFNR U_W_AUFK-AUFNR"#EC CI_SUBRC

        IF SY-SUBRC 0.

          <LW_AFVC>-VORNR <LW_AFVC>-VORNR + 10.

          CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
            EXPORTING
              INPUT         <LW_AFVC>-VORNR
           IMPORTING
             OUTPUT        LW_OPERATION-ACTIVITY
                    .

          ELSE.

          <LW_AFVC>-VORNR CNS_0010.
          <LW_AFVC>-AUFNR U_W_AUFK-AUFNR.

          APPEND <LW_AFVC> TO C_IT_AFVC.

        ENDIF.


        LW_OPERATION-CONTROL_KEY CNS_SM01.
        LW_OPERATION-DESCRIPTION U_V_LTXA1.

        APPEND LW_OPERATION TO LIT_OPERATION.

    *< End INS R2 Modification 2020/12/30----------------------------------*

    *   退避対象データ
        APPEND  <LW_MDLTAB> TO LIT_MDLTAB.
        LV_REFNO LV_REFNO + 1.
    *   BAPI処理方法
        LW_METHOD-REFNUMBER   LV_REFNO.                      "リンク対象方法の参照番号
        LW_METHOD-OBJECTTYPE  CNS_COMPONENT.                 "オブジェクトタイプ
        LW_METHOD-METHOD      CNS_CREATE.                    "メソッド
        LW_METHOD-OBJECTKEY   U_W_AUFK-AUFNR.                "指図番号
        APPEND LW_METHOD TO LIT_METHOD.

    *> Start INS R2 Modification 2020/12/30--------------------------------*
        CLEAR LW_METHOD.
        LW_METHOD-REFNUMBER  LV_REFNO.
        LW_METHOD-OBJECTTYPE CNS_OPERATION.
        LW_METHOD-METHOD     CNS_CREATE.
        LW_METHOD-OBJECTKEY  U_W_AUFK-AUFNR.
        APPEND LW_METHOD TO LIT_METHOD.

    *< End INS R2 Modification 2020/12/30----------------------------------*

    *   指図構成品目
        LW_COMPONENT-MATERIAL_LONG  <LW_MDLTAB>-ZMATNR.      "品目コード
    *> Start REP R2 Modification 2020/12/30--------------------------------*
    *    LW_COMPONENT-BATCH          = <LW_MDLTAB>-ZCHARG.      "ロット番号
        IF <LW_MCH1> IS ASSIGNED.
          LW_COMPONENT-BATCH          <LW_MCH1>-CHARG.          "Batch Number
        ENDIF.
    *< End REP R2 Modification 2020/12/30----------------------------------*
        LW_COMPONENT-ITEM_CAT       U_V_POSTP.               "変数明細カテゴリ
    *> Start REP R2 Modification 2020/12/30--------------------------------*
    *    LW_COMPONENT-ACTIVITY       = U_V_POSNR.               "変数作業/活動番号
         LW_COMPONENT-ACTIVITY       LW_OPERATION-ACTIVITY.   "Operation Number
    *< End REP R2 Modification 2020/12/30----------------------------------*
        LW_COMPONENT-REQUIREMENT_QUANTITY
                                    <LW_MDLTAB>-ZKWMENG.     "累積受注数量 (販売単位)
        LW_COMPONENT-REQUIREMENT_QUANTITY_UNIT
                                    <LW_MDLTAB>-ZVRKME.      "販売単位

    *> Start INS R2 Modification 2020/12/30--------------------------------*
        IF <LW_LIPS> IS ASSIGNED.
        LW_COMPONENT-PLANT         <LW_LIPS>-WERKS.          "Plant
        ENDIF.
    *< End INS R2 Modification 2020/12/30----------------------------------*

        APPEND LW_COMPONENT TO LIT_COMPONENT.

      ENDLOOP.

    * 退避対象データ
      IF LIT_MDLTAB IS INITIAL.
        RETURN.
      ENDIF.

    * BAPI処理方法
      CLEAR LW_METHOD.
      LW_METHOD-REFNUMBER   0.                               "リンク対象方法の参照番号
      LW_METHOD-METHOD      CNS_SAVE.                        "メソッド
      LW_METHOD-OBJECTKEY   U_W_AUFK-AUFNR.                  "指図番号
      APPEND LW_METHOD TO LIT_METHOD.

    * Process Maintenance/Service Order
      CALL FUNCTION 'BAPI_ALM_ORDER_MAINTAIN'                  "#EC CI_USAGE_OK[2669857]
        TABLES                                                 "#EC CI_USAGE_OK[2438131]
          IT_METHODS       LIT_METHOD                          "BAPI構造
          IT_COMPONENT     LIT_COMPONENT                       "指図構成品目
    *> Start INS R2 Modification 2020/12/30--------------------------------*
          IT_OPERATION     LIT_OPERATION                       "Input Structure for PM/CS BAPIs Operations
    *< End INS R2 Modification 2020/12/30----------------------------------*
          RETURN           LIT_RETURN.                         "リターンパラメータ

  • 相关阅读:
    创建Azure虚拟机之Azure Portal方式
    Windows平台启动与关闭Azure虚拟机
    Linux文件操作命令
    vue中使用图片裁剪cropperjs
    Linux权限管理之基本权限
    设计模式6大原则之【迪米特原则】
    设计模式6大原则之【接口隔离原则】
    设计模式6大原则之【单一职责原则】
    sql中的join
    Redis学习之:Redis的使用和优化
  • 原文地址:https://www.cnblogs.com/lingxiaoj/p/14498085.html
Copyright © 2011-2022 走看看