*&----------------------------------------------------------------*
*& Report  YRTEST0005
*&
*&----------------------------------------------------------------*
*&
*&  Run Program with Background job
*&----------------------------------------------------------------*

report  yrtest0005.

* Run Program with Background job
  data: l_number type tbtcjob-jobcount,
        l_name   type tbtcjob-jobname.

  concatenate 'Z00' '_'  sy-datum '_'  sy-uzeit
         into l_name.

  call function 'JOB_OPEN'
    exporting
      jobname          = l_name
    importing
      jobcount         = l_number
    exceptions
      cant_create_job  = 1
      invalid_job_data = 2
      jobname_missing  = 3
      others           4.

  check sy-subrc = 0.
*  submit zlmmm65010 with  pa_bukrs =  pi_bukrs
*                    with  pa_gbm   =  l_gbm
*                    with  pa_week  =  pi_planid
*                    with  pa_ck01  =  c_x
*                    user  sy-uname
*                    via job l_name number l_number
*                    and return.

  submit yrtest0006 user  sy-uname
                    via job l_name number l_number
                    and return.

  check sy-subrc eq 0.
  message s303(me) with 'Success'.

  call function 'JOB_CLOSE'
    exporting
      jobcount             = l_number
      jobname              = l_name
      strtimmed            = 'X'
    exceptions
      cant_start_immediate = 1
      invalid_startdate    = 2
      jobname_missing      = 3
      job_close_failed     = 4
      job_nosteps          = 5
      job_notex            = 6
      lock_failed          = 7
      others               8.
 




*&----------------------------------------------------------------*
*& Report  YRTEST0006
*&
*&----------------------------------------------------------------*
*&
*&
*&----------------------------------------------------------------*

report  yrtest0006.

*  include yrtest0006top.
*  include yrtest0006f01.


end-of-selection.
  write: sy-uname, sy-datum, sy-uzeit.

FM to get Production Order user status (CO03) and system status

  *&----------------------------------------------------------------*
*& Report  YRTEST0003
*&
*&----------------------------------------------------------------*
*&
*&
*&----------------------------------------------------------------*

REPORT  YRTEST0003.

  data: lt_STATUS like TABLE OF JSTAT with header line,
        l_OBJNR   LIKE JSTO-OBJNR,
        l_aufnr   like afko-aufnr.


  clear: l_OBJNR, l_aufnr.

  l_aufnr = '60003649'.

  call function 'CONVERSION_EXIT_ALPHA_INPUT'
    exporting
      input         = l_aufnr
    IMPORTING
      OUTPUT        = l_aufnr.

  concatenate 'OR' l_AUFNR into l_OBJNR.

  call function 'STATUS_READ'
    exporting
      CLIENT                 = SY-MANDT
      objnr                  = l_OBJNR
      ONLY_ACTIVE            = 'X'
*   IMPORTING
*     OBTYP                  =
*     STSMA                  =
*     STONR                  =
   TABLES
     STATUS                 = lt_STATUS
   EXCEPTIONS
     OBJECT_NOT_FOUND       = 1
     OTHERS                 2.

  data: l_txt04 like tj02t-txt04,
        l_TXT30 like tj02t-TXT30.

  clear: l_txt04, l_TXT30.

  if sy-subrc eq 0.
    loop at lt_status.
      write: / lt_status-STAT.
      clear: l_txt04, l_TXT30.
      select single txt04 TXT30
        into (l_txt04, l_TXT30)
        from tj02t
       where ISTAT eq lt_status-STAT
         and SPRAS eq SY-LANGU.
      write: l_txt04, l_TXT30.
    endloop.
  else.
    message s303(me) with sy-subrc.
  endif.

*  if not IT_JEST[] is initial.
*    select ISTAT TXT04
*    from TJ02T
*    into table IT_TJ02T
*    for all entries in IT_JEST
*    where ISTAT = IT_JEST-STAT
*      and SPRAS = SY-LANGU.
*  endif.





*&----------------------------------------------------------------*
*& 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.