zoukankan      html  css  js  c++  java
  • ABAP 参照SO item 创建DN

    DATA: it_soitem TYPE TABLE OF bapidlvreftosalesorder,
            is_soitem TYPE bapidlvreftosalesorder,
            it_return TYPE TABLE OF bapiret2,
            is_return TYPE bapiret2,

              l_dn TYPE bapishpdelivnumb-deliv_numb.

      DATA: l_date TYPE bapidlvcreateheader-due_date.

      l_date = '99991231'.

        LOOP AT gt_out INTO gs_out WHERE vbeln = ls_so-vbeln  AND street = ls_so-street AND check_box = 'X' AND text = ''.
          is_soitem-ref_doc  = gs_out-vbeln.
          is_soitem-ref_item = gs_out-posnr.
          is_soitem-dlv_qty  = gs_out-pikmg.
          is_soitem-sales_unit = gs_out-meins.
          APPEND is_soitem TO it_soitem.
        ENDLOOP.

        IF it_soitem IS NOT INITIAL.
          CLEAR l_dn.
          CALL FUNCTION 'BAPI_OUTB_DELIVERY_CREATE_SLS'
            EXPORTING
              due_date          = l_date
            IMPORTING
              delivery          = l_dn
    *         NUM_DELIVERIES    =
            TABLES
              sales_order_items = it_soitem
    *         SERIAL_NUMBERS    =
    *         EXTENSION_IN      =
    *         DELIVERIES        =
              created_items     = lt_create
    *         EXTENSION_OUT     =
              return            = it_return.

          CLEAR    lv_message.
          LOOP AT it_return INTO is_return WHERE type = 'E' OR type = 'A'.
            CALL FUNCTION 'MESSAGE_TEXT_BUILD'
              EXPORTING
                msgid               = is_return-id
                msgnr               = is_return-number
                msgv1               = is_return-message_v1
                msgv2               = is_return-message_v2
                msgv3               = is_return-message_v3
                msgv4               = is_return-message_v4
              IMPORTING
                message_text_output = lv_message.
            CONCATENATE  gs_out-text  lv_message ';' INTO  gs_out-text.
          ENDLOOP.
          IF sy-subrc = 0.
            CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
            MODIFY gt_out FROM gs_out TRANSPORTING text
               WHERE check_box = 'X' AND vbeln = ls_so-vbeln .

          ELSE.

              CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
                EXPORTING
                  wait = 'X'.

      Endif.

    闫默涵
  • 相关阅读:
    php错误抑制符
    php执行运算符
    php中一个经典的!==的用法
    php实现简单验证码的功能
    jquery是什么
    php连接符
    php与java语法的区别
    考雅思策略
    php魔术常量
    PHP中数据类型转换的三种方式
  • 原文地址:https://www.cnblogs.com/yanmohan/p/14549046.html
Copyright © 2011-2022 走看看