• SAP ABAP编程 取得用户中文名称


    有时候我们知道SAP当前用户登录的ID,也就是SY-UNAME。能够取得用户中文名称。例如以下:

    ***取得用户中文名称

    DATAg_sheet_jsr TYPE string.  "用户中文名称
      DATAL_DEPARTMENT  TYPE AD_DPRTMNT,
            L_ADDRNUMBER  TYPE AD_ADDRNUM,
            L_PERSNUMBER  TYPE AD_PERSNUM,
            L_UNAME       TYPE SY-UNAME,
            L_NAME_FIRST  TYPE AD_NAMEFIR,
            L_NAME_LAST   TYPE AD_NAMELAS.

    ***取得用户中文名称
      SELECT SINGLE persnumber addrnumber INTO
            (l_persnumberl_addrnumber)
          FROM usr21
          WHERE bname SY-UNAME.
      IF sy-subrc 0.
        SELECT SINGLE name_first name_last INTO (l_name_first,l_name_last)
        FROM adrp
        WHERE persnumber l_persnumber.
        IF sy-subrc 0.
          CONCATENATE l_name_last  l_name_first INTO g_sheet_jsr.
          CONDENSE g_sheet_jsr NO-GAPS.  "去掉空格字符
        ENDIF.
      ENDIF.

    write: g_sheet_jsr.


    另一种更加简便的方法就是调用PABI

    DATAG_FULL_NAME    TYPE AD_NAMTEXT,  "用户中文名称
          G_NAME_FIRST   TYPE AD_NAMEFIR,
          G_NAME_LAST    TYPE AD_NAMELAS.

          CALL FUNCTION 'FDM_CUST_USER_NAME_READ_SINGLE'
            EXPORTING
              I_USER_ID   SY-UNAME
            IMPORTING
              E_FIRSTNAME G_NAME_FIRST
              E_LASTNAME  G_NAME_LAST
    *         E_FULLNAME  =
            .

          IF SY-SUBRC 0.

            CONCATENATE G_NAME_LAST  G_NAME_FIRST INTO G_FULL_NAME .
            CONDENSE G_FULL_NAME  NO-GAPS.  "去掉空格字符
          ENDIF.

    write: G_FULL_NAME .


  • 相关阅读:
    【bzoj1408】 Noi2002—Robot
    【bzoj3884】 上帝与集合的正确用法
    【bzoj2190】 SDOI2008—仪仗队
    【uoj264】 NOIP2016—蚯蚓
    【uoj262】 NOIP2016—换教室
    【uoj261】 NOIP2016—天天爱跑步
    python sort 和sorted排序
    mkdir: cannot create directory ‘/soft/hadoop-2.7.3/logs’: Permission denied问题
    RuntimeError: implement_array_function method already has a docstring
    flask 的orm
  • 原文地址:https://www.cnblogs.com/zhchoutai/p/8945177.html
Copyright © 2020-2023  润新知