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

***取得用户中文名称

DATA: g_sheet_jsr TYPE string.  "用户中文名称
  DATA: L_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_persnumber, l_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

DATA: G_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 .

SAP ABAP编程 取得用户中文名称的更多相关文章

  1. SAP ABAP编程 Table Control动态隐藏列

    在SAP DIALOG设计中,有时候须要动态的隐藏某些列,以下是方法. ***数据定义 CONTROLS: table_control TYPE TABLEVIEW USING SCREEN 0100 ...

  2. SAP ABAP编程 字符串加密-MD5_CALCULATE_HASH_FOR_CHAR

    DATA: str1 TYPE c LENGTH 12 VALUE 'zxcv',       str2 TYPE c LENGTH 32,       str3 TYPE c LENGTH 32. ...

  3. 在SAP云平台ABAP编程环境上编写第一段ABAP程序

    距2017年秋季的SAP TechEd大会上一位大佬Björn Goerke,SAP's Chief Technology Officer宣布了SAP Cloud Platform即将支持ABAP至今 ...

  4. SAP云平台上的ABAP编程环境里如何消费第三方服务

    在ABAP On-Premises环境下,使用ABAP编程消费第三方服务,相信很多ABAP顾问都已经非常熟悉了,无非就是使用CL_HTTP_CLIENT或者CL_REST_HTTP_CLIENT来发送 ...

  5. 如何在SAP Cloud Platform ABAP编程环境里创建一个employee

    用ABAP Development Tool登录SAP Cloud Platform ABAP编程环境后,对ABAP项目点击右键,选择属性,从而找到该环境的web访问的url: https://325 ...

  6. 学而不思则罔 - SAP云平台ABAP编程环境的由来和适用场景

    最近Jerry写了一系列关于SAP云平台ABAP编程环境的技术文章,这些文章都是围绕着在云上的ABAP编程环境的具体知识点来分享,比如要完成一个具体的开发需求,所需要的编程步骤.这些文章陆续收到一些读 ...

  7. SAP官方发布的ABAP编程规范

    最近有朋友在公众号后台给我留言,"Jerry啊,你最近写的都是一些SAP研究院里面用到的新技术,能不能写点SAP传统的开发技术比如ABAP相关的东西"? 其实Jerry在刚开始写这 ...

  8. 【ABAP系列】SAP ABAP 高级业务应用程序编程(ABAP)

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 高级业务应用程 ...

  9. 【ABAP系列】【第五篇】SAP ABAP7.50 之用户接口

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列][第五篇]SAP ABAP7.5 ...

随机推荐

  1. Codeforces Round #374 (Div. 2) B. Passwords 贪心

    B. Passwords 题目连接: http://codeforces.com/contest/721/problem/B Description Vanya is managed to enter ...

  2. Linux学习笔记02—磁盘分区

    下面介绍四种最常见的分区方式: (1)    最简单的分区方案. SWAP分区:即交换分区,建议大小是物理内存的1-2倍. /分区:建议大小在6GB以上. 使用以上的分区方案,所有的数据都在/分区上, ...

  3. HDU 4751 Divide Groups (2013南京网络赛1004题,判断二分图)

    Divide Groups Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tot ...

  4. mysql函数的使用

    最近总感觉sql语句不对劲,所以就看了一些官方文档发现了一些以前没有注意的函数:感觉在查询的时候可以用得上,毕竟是内置函数,用起来效率应该会好一些的: FIND_IN_SET(str,strlist) ...

  5. java系列之 原生数据类型

    在我看来,java里面里面除了原生类型不是对象,其他的都是对象.但java是面向对象的语言,很多地方还要要操作对象,所以java会自动把原生类型转为对应的包装类型.这个过程叫自动装箱.有装箱就有拆箱, ...

  6. LINUX 源码+内核所有参数说明

    http://www.cnblogs.com/tolimit/p/5065761.html

  7. delphi project of object

    http://www.cnblogs.com/ywangzi/archive/2012/08/28/2659811.html 其实要了解这些东西,适当的学些反汇编,WINDOWS内存管理机制,PE结构 ...

  8. EF6+Sqlite连接字符串的动态设置

    摘要 在winform中应用sqlite和ef,对于sqlite连接字串的设置,大多情况下是不想写死了,你不知道用户会将你的exe程序安装在什么位置,也不知道他的电脑盘符是什么,如果写死了,那么很有可 ...

  9. 在Brackets中使用Emmet

    当在Brackets中安装上Emmet插件后,就可以使用Emmet的语法来加速前端编写. 有关html ● 子关系> div>ul>li ● 相邻+ div+p+bq ● 上一级^ ...

  10. 用UIBezierPath数组对UIView进行镂空处理

    用UIBezierPath数组对UIView进行镂空处理 效果 源码 // // CutOutClearView.h // CutOutMaskView // // Created by YouXia ...