根据tcode查找增强的程序

 

report zlm_test_yx.


tables : tstc,     "SAP Transaction Codes(SAP 事务代码)
          tadir,    "Directory of Repository Objects(资源库对象的目录)
          modsapt,  "SAP Enhancements - Short Texts(SAP增强-短文件)
          modact,   "Modifications(修正)
          trdir,    "System table TRDIR(系统表 TRDIR)
          tfdir,    "Function Module(功能模块)
          enlfdir,  "Additional Attributes for
"FunctionModules(功能模块的附加属性)
          tstct.    "Transaction Code Texts(事务代码文本)
data : jtab like tadir occurs 0 with header line.
data : field1(30).
data : v_devclass like tadir-devclass.
selection-screen begin of block a01 with frame title text-001.
selection-screen skip.
parameters : p_tcode like tstc-tcode obligatory.
selection-screen skip.
selection-screen end of block a01.
start-of-selection.
  select single * from tstc where tcode eq p_tcode.
  if sy-subrc eq 0.
    select single * from tadir
       where pgmid     = 'R3TR'
         and object    = 'PROG'
         and obj_name = tstc-pgmna.
    move : tadir-devclass to v_devclass.
    if sy-subrc ne 0.
      select single * from trdir
         where name = tstc-pgmna.
      if trdir-subc eq 'F'.
        select single * from tfdir
          where pname = tstc-pgmna.
        select single * from enlfdir
          where funcname = tfdir-funcname.
        select single * from tadir
          where pgmid     = 'R3TR'
            and object    = 'FUGR'
            and obj_name = enlfdir-area.
        move : tadir-devclass to v_devclass.
      endif.
    endif.
    select * from tadir
      into table jtab
      where pgmid     = 'R3TR'
        and object    = 'SMOD'
        and devclass = v_devclass.
    select single * from tstct
      where sprsl eq sy-langu
        and tcode eq p_tcode.
    format color col_positive intensified off.
    write:/(12) '事务代码 - ',
    13(20) p_tcode,
    34(10) '功能 - ' ,
    45(50) tstct-ttext.
    skip.
    if not jtab[] is initial.
      write:/(95) sy-uline.
      format color col_heading intensified on.
      write:/1 sy-vline,
      2 'Exit Name',
      21 sy-vline ,
      22 'Description',
      95 sy-vline.
      write:/(95) sy-uline.
      loop at jtab.
        select single * from modsapt
        where sprsl = sy-langu and
         name = jtab-obj_name.
        format color col_normal intensified off.
        write:/1 sy-vline,
        2 jtab-obj_name hotspot on,
        21 sy-vline ,
        22 modsapt-modtext,
        95 sy-vline.
      endloop.
      write:/(95) sy-uline.
      describe table jtab.
      skip.
      format color col_total intensified on.
      write:/ '用户出口数量:' , sy-tfill.
    else.
      format color col_negative intensified on.
      write:/(95) '此TCode没有用户出口!'.
    endif.
  else.
    format color col_negative intensified on.
    write:/(95) '事务代码不存在!'.
  endif.
at line-selection.
  get cursor field field1.
  check field1(4) eq 'JTAB'.
  set parameter id 'MON' field sy-lisel+1(10).
posted @ 2014-01-22 09:20  胡来  阅读(254)  评论(0编辑  收藏  举报