Code listing for: ZBCTCODE_DISP1
Description: Include ZBCTCODE_DISP1
*&---------------------------------------------------------------------*
*& 包含               ZBCTCODE_DISP1
*&---------------------------------------------------------------------*


DATA:tcodetab TYPE STANDARD TABLE OF sapwltcod1.
DATA: wa TYPE sapwltcod1.
CLEAR tcodetab.
LOOP AT datatab ASSIGNING FIELD-SYMBOL(<tcode>).
  TRY.
      wa-tcode      = <tcode>-entry_id(40).
      wa-btcjob     = <tcode>-entry_id+40(32).
      wa-diastepcnt = <tcode>-count.
      wa-luwcnt     = <tcode>-luw_count.
      wa-respst     = <tcode>-respti.

*  New 7.0 PROCTI
      wa-procst     = <tcode>-procti.        "Processing time

      wa-cpust      = <tcode>-cputi.

      wa-rollwaitst = <tcode>-rollwaitti.    "Roll-Wait time

      wa-waitst     = <tcode>-queueti.
      wa-dbst       = <tcode>-readdirti +
      <tcode>-readseqti + <tcode>-chngti.
*  New 7.0 READSEQREC READDIRREC READSEQBUF CHNGREC PHYDBCALLS

*       direct reads
      wa-readdircnt  = <tcode>-readdircnt.
      wa-readdirrec  = <tcode>-readdirrec.
*       sqeuential reads
      wa-readseqcnt  = <tcode>-readseqcnt.
      wa-readseqrec  = <tcode>-readseqrec.
      wa-readseqbuf  = <tcode>-readseqbuf.
*       changes
      wa-chngcnt     = <tcode>-chngcnt.
      wa-chngrec     = <tcode>-chngrec.
*       db requests from ABAP to DB interface
      wa-dbrequcnt   = <tcode>-readdircnt +
      <tcode>-readseqcnt + <tcode>-chngcnt.
*       physical db calls
      wa-phyreadcnt  = <tcode>-phyreadcnt.
      wa-phychngrec  = <tcode>-phychngrec.
      wa-phydbcalls  = <tcode>-phycalls.

*       direct buffer reads
      wa-dbufreadcn = <tcode>-readdirbuf.
*       Sum of times
      wa-readdirst  = <tcode>-readdirti.
      wa-readseqst  = <tcode>-readseqti.
      wa-chngst     = <tcode>-chngti.

      wa-fguist     = <tcode>-guitime.
      wa-fguicnt    = <tcode>-guicnt.
      wa-fnetst     = <tcode>-guinettime.
      wa-mbytesin   = <tcode>-tmbytesin.
      wa-mbytesout  = <tcode>-tmbytesout.
      wa-bytes      = ( <tcode>-sli_cnt +
      <tcode>-quecnt  +
      <tcode>-dsqlcnt ) / 1024.
      CALL FUNCTION 'SAPWL_REPORT_TCODE_TEXT'
        EXPORTING
          name = wa-tcode
        IMPORTING
          text = wa-text.

      wa-dbpcount = <tcode>-dbp_count.
      wa-dbptime  = <tcode>-dbp_time.

*VZ     VMC
      wa-vmc_callcount = <tcode>-vmc_call_count.
      wa-vmc_cputime = <tcode>-vmc_cpu_time.
      wa-vmc_elaptime = <tcode>-vmc_elap_time.

      COLLECT wa INTO tcodetab.
    CATCH cx_dynamic_check INTO DATA(exception).
  ENDTRY.

  CLEAR wa.
ENDLOOP.

LOOP AT gt_tstc INTO DATA(gs_tstc).
  MOVE-CORRESPONDING gs_tstc TO gs_data.
  READ TABLE tcodetab INTO DATA(ls_tcodetab) WITH KEY tcode = gs_tstc-tcode.
  IF sy-subrc = 0.
    MOVE-CORRESPONDING ls_tcodetab TO gs_data.
    READ TABLE gt_tcode INTO DATA(ls_tcode) WITH KEY entry_id = gs_tstc-tcode.
    IF sy-subrc = 0.
      gs_data-sum = ls_tcode-sum.
    ENDIF.
  ENDIF.

  APPEND gs_data TO gt_data.
  CLEAR:gs_data.

ENDLOOP.

SORT gt_data BY sum DESCENDING diastepcnt DESCENDING.


gt_fieldcat = VALUE #(
( fieldname = 'TCODE'  coltext = '事务代码'  key = 'X' )
( fieldname = 'TTEXT'  coltext = '事务代码名称'  )
( fieldname = 'SUM'  coltext = '总有效用户数'   )
( fieldname = 'DIASTEPCNT'  coltext = '总访问次数'   )
).


CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
  EXPORTING
    i_callback_program       = sy-repid
*   i_grid_title             = lv_title
*   i_structure_name         = 'TSTC'
    i_callback_pf_status_set = 'FRM_PF_STATUS'
    i_callback_user_command  = 'FRM_USER_COMMAND'
*   i_grid_settings          = gv_settings
    is_layout_lvc            = gs_layout
    it_fieldcat_lvc          = gt_fieldcat[]
    i_save                   = 'A'
  TABLES
    t_outtab                 = gt_data[]
  EXCEPTIONS
    program_error            = 1
    OTHERS                   = 2.

Extracted by Direct Download Enterprise version 1.3 - E.G.Mellodew. 1998-2004 UK. Sap Release 752