среда, 20 августа 2014 г.

Просмотр активной цепочки (ну или любого журнала любой цепочки)

Программа:
RSPC_MAINTAIN_SINGLE    -   Ведение цепочек процесов (1 цепочка)

Делаем из неё FM и если в Z-интерфейсе запускаем цепочку через RSPC_CHAIN_START, то делаем кнопку, чтобы сразу в лог провалиться.



На всякий случай код:

*&---------------------------------------------------------------------*
*& Report  RSPC_MAINTAIN                                               *
*&                                                                     *
*&---------------------------------------------------------------------*
*&                                                                     *
*&                                                                     *
*&---------------------------------------------------------------------*

report  rspc_maintain_single                           .

parameterschain   type rspc_chain,
            logid   type rspc_logid,
            display type rs_bool as checkbox default 'X'.

datal_bwclient type symandt.
call function 'RSCC_RSADM_ACC'
  exporting
    fieldname  'BWMANDT'
    action     'S'
  changing
    adminvalue l_bwclient
  exceptions
    others     1.
if sy-subrc <> or l_bwclient <> sy-mandt.
* ==== no BW or non BW client: call old TA ====
  datal_t_chaint type rspc_t_chaint,
        l_mode     type rspc_frontendmode.

  if not logid is initial.
    l_mode 'LOG'.
  else.
    l_mode 'PLAN'.
  endif.
  call function 'RSPC_CHAIN_MAINTAIN'
    exporting
      i_chain         chain
      i_mode          l_mode
      i_logid         logid
      i_display_only  display
    importing
      e_t_chaint      l_t_chaint
    exceptions
      internal_error  1
      aborted_by_user 2
      others          3.
  if sy-subrc <> 0.
    message id sy-msgid type 'S' number sy-msgno
            with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
            display like 'E'.
  endif.
  export chaint from l_t_chaint to memory id 'CHAIN'.
else.
* ==== BW client: Call DWB ====
  datal_r_request type ref to cl_rsawbn_request,
        l_objnm     type rsawbnobjnm,
        l_fcode     type syucomm.
  datal_r_state   type ref to cl_rspc_awb_navistack,
        l_s_navi    type rspc_s_navistack.

  l_objnm chain.
  if not logid is initial.
    l_fcode rsawc_c_tfc-display_log.
    l_s_navi-tree 'LOGS'.
    l_s_navi-mode 'LOG'.
  elseif display 'X'.
    l_fcode rsawc_c_tfc-display.
    clear l_s_navi-tree.
    l_s_navi-mode 'PLAN'.
  else.
    l_fcode rsawc_c_tfc-change.
    l_s_navi-tree 'RSPV'.
    l_s_navi-mode 'PLAN'.
  endif.
  create object l_r_request
    exporting
      i_awbobj rs_c_tlogo-process_chain
      i_objnm  l_objnm
      i_fcode  l_fcode.
  l_s_navi-view 'C'.
  l_s_navi-display_only display.
  create object l_r_state
    exporting
      i_s_navistack l_s_navi
      i_logid       logid.
  call method l_r_request->set_external_call_state
    exporting
      i_r_state l_r_state.
  cl_rsawbn_awb=>starti_r_request l_r_request ).
endif.

Комментариев нет:

Отправить комментарий