• SAP根据用户名查找使用的TCODE


    由于某些部门的权限变动频繁,设置也比较复杂,现做一个查找TCODE事务代码的程序方便业务部门管理。

    *&---------------------------------------------------------------------*
    *& Report ZMMRP087A
    *&---------------------------------------------------------------------*
    *&
    *&---------------------------------------------------------------------*
    REPORT ZMMRP087A.
    TABLES:USR02.
    TYPES:BEGIN OF TY_DATA,
            BNAME TYPE USR02-BNAME,
            TCODE TYPE AGR_TCODES-TCODE,
            TTEXT TYPE TSTCT-TTEXT,"事务代码描述文本
          END OF TY_DATA.
    DATA:LT_TAB TYPE STANDARD TABLE OF TY_DATA.
    
    SELECT-OPTIONS:
    S_USER FOR USR02-BNAME.
    "查找母角色的TCODE
    SELECT USR02~BNAME,
    *AGR_USERS~AGR_NAME,
    AGR_TCODES~TCODE,
    TSTCT~TTEXT
    FROM USR02
    LEFT JOIN AGR_USERS ON AGR_USERS~UNAME = USR02~BNAME
    LEFT JOIN AGR_TCODES ON AGR_USERS~AGR_NAME = AGR_TCODES~AGR_NAME
    LEFT JOIN TSTCT ON TSTCT~TCODE = AGR_TCODES~TCODE
    INTO CORRESPONDING FIELDS OF TABLE @LT_TAB
          WHERE USR02~BNAME IN @S_USER
      AND TSTCT~SPRSL = 1.
    "查找继承角色的TCODE
    SELECT USR02~BNAME,
    *AGR_USERS~AGR_NAME,
    AGR_TCODES~TCODE,
    TSTCT~TTEXT
    FROM USR02
    LEFT JOIN AGR_USERS ON AGR_USERS~UNAME = USR02~BNAME
    LEFT JOIN AGR_DEFINE ON AGR_USERS~AGR_NAME = AGR_DEFINE~AGR_NAME
    LEFT JOIN AGR_TCODES ON AGR_DEFINE~PARENT_AGR = AGR_TCODES~AGR_NAME
      LEFT JOIN TSTCT ON TSTCT~TCODE = AGR_TCODES~TCODE
    APPENDING CORRESPONDING FIELDS OF TABLE @LT_TAB
          WHERE USR02~BNAME IN @S_USER
        AND TSTCT~SPRSL = 1.
    
    SORT LT_TAB BY BNAME TCODE.
    DELETE ADJACENT DUPLICATES FROM LT_TAB.

  • 相关阅读:
    小孩抓周
    psychology
    绝恋诗词
    一万小时定律
    王国维的人生三重境界
    2017年日历
    018 cisco 3560 MAC地址绑定
    017 SSH
    016 ppp authentication
    unity Tilemap
  • 原文地址:https://www.cnblogs.com/BruceKing/p/15272973.html
Copyright © 2020-2023  润新知