SAP/ABAP 개발

TEST - 생산오더 실적처리 - BAPI_PRODORDCONF_CREATE_TT

KindKay 2010. 6. 28. 11:07

*&----------------------------------------------------------------*
*& Report  YRTEST0002
*&
*&----------------------------------------------------------------*
*&
*&
*&----------------------------------------------------------------*

report  yrtest0002.

  data: ls_return      like bapiret1,
        lt_return      like table of bapi_coru_return with header line,
        lt_timetickets like table of bapi_pp_timeticket with header line.

end-of-selection.
  clear: ls_return, lt_return[], lt_timetickets[].
  clear: lt_timetickets.

*  lt_timetickets-conf_no   = '0000104074'.
  lt_timetickets-orderid   = '60003649'.
  lt_timetickets-operation = '0010'.
  lt_timetickets-yield     = 1.

  data: l_aufnr type aufnr.

  call function 'CONVERSION_EXIT_ALPHA_INPUT'
    exporting
      input         = lt_timetickets-orderid
    IMPORTING
      OUTPUT        = l_aufnr.

  select single rueck
    into lt_timetickets-conf_no
    from afru
   where aufnr eq l_aufnr
     and vornr eq lt_timetickets-operation.

  append lt_timetickets.

  call function 'BAPI_PRODORDCONF_CREATE_TT'
    importing
      return                   = ls_return
    tables
      timetickets              = lt_timetickets
      detail_return            = lt_return.

  read table lt_return with key type 'E'.
  if sy-subrc eq 0.
    call function 'BAPI_TRANSACTION_ROLLBACK'.
    message s303(me) display like 'E'
                     with lt_return-message.
  else.
    read table lt_return index 1.
    call function 'BAPI_TRANSACTION_COMMIT'.
    message s303(me) with lt_return-message.
  endif.