使用 ABAP 代码获得 SAP 系统支持的所有 language 列表

简介: 使用 ABAP 代码获得 SAP 系统支持的所有 language 列表

*&---------------------------------------------------------------------*
*& Report  ZNOTE_LANGUAGE_TEST
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT znote_language_test.
DATA: ls_t002  TYPE t002,
      ls_t002t TYPE t002t,
      lv_langs TYPE scplangs,
      lv_langu TYPE spras,
      lt_ddlb  TYPE bsp_wd_dropdown_table,
      ls_ddlb  TYPE bsp_wd_dropdown_line,
      lt_lng   TYPE STANDARD TABLE OF t002,
      lt_lngt  TYPE STANDARD TABLE OF t002t.
***************************************************************************************************
SET LOCALE LANGUAGE 'D'.
WRITE: / sy-subrc.
SELECT * FROM t002 INTO TABLE lt_lng.
SELECT * FROM t002t INTO TABLE lt_lngt WHERE spras = sy-langu.
CALL FUNCTION 'SCP_LANGUAGES_IN_INSTANCE_CP'
  IMPORTING
    languages = lv_langs.
DO VARYING lv_langu FROM lv_langs(1) NEXT lv_langs+1(1) RANGE lv_langs.
  IF lv_langu IS INITIAL.
    EXIT.
  ENDIF.
  READ TABLE lt_lng INTO ls_t002 WITH  KEY spras = lv_langu.
  IF sy-subrc IS INITIAL.
    ls_ddlb-key = ls_t002-laiso.
    READ TABLE lt_lngt INTO ls_t002t
         WITH KEY sprsl = lv_langu.
    IF sy-subrc IS INITIAL.
      ls_ddlb-value = ls_t002t-sptxt.
      APPEND ls_ddlb TO lt_ddlb.
    ENDIF.
  ENDIF.
ENDDO.
SORT lt_ddlb BY value ASCENDING.
READ TABLE lt_ddlb WITH KEY value = sy-langu TRANSPORTING NO FIELDS.
WRITE: / sy-subrc.
BREAK-POINT.

ABAP 程序的作用是检索并显示系统中可用的语言列表,其中:


  1. 在程序开始处定义了一些数据对象,如 ls_t002(T002 数据表的结构),lv_langs(系统中可用语言的列表)和 lt_ddlb(一个下拉列表的表)。
  2. 使用 SET LOCALE 语句将系统语言设置为德语。
  3. 从 t002 数据表中选择所有可用的语言,并将其存储在 lt_lng 标准表中。
  4. 使用 SELECT 语句从 t002t 数据表中选择特定语言的名称,并将其存储在 lt_lngt 标准表中。
  5. 使用 SCP_LANGUAGES_IN_INSTANCE_CP 函数检索系统中可用的语言,并将其存储在 lv_langs 变量中。
  6. 对 lv_langs 变量进行循环处理,并在 lt_lng 标准表中查找相应的语言条目。
  7. 如果找到了匹配的语言,则将其语言代码和名称添加到 lt_ddlb 中。
  8. 对 lt_ddlb 标准表按名称排序。
  9. 使用 READ TABLE 语句在 lt_ddlb 中查找当前系统语言,并将结果存储在 sy-subrc 变量中。
  10. 使用 WRITE 语句输出 sy-subrc 变量的值。
  11. 在 BREAK-POINT 陈述之后,程序会停止执行。

相关文章
|
2月前
|
存储 安全 数据库
什么是 SAP ABAP 数据库表的 Display Maintenance Allowed with Restrictions
什么是 SAP ABAP 数据库表的 Display Maintenance Allowed with Restrictions
|
2月前
|
安全 API 数据库
SAP ABAP OData 中 Function import 的概念介绍
SAP ABAP OData 中 Function import 的概念介绍
|
2月前
|
前端开发 数据库 开发者
如何在 SEGW 事务码里为 SAP ABAP OData 服务实现 Function Import 试读版
如何在 SEGW 事务码里为 SAP ABAP OData 服务实现 Function Import 试读版
SAP ABAP OData 服务里需要指定 guid 类型的请求参数时,正确语法是什么?
SAP ABAP OData 服务里需要指定 guid 类型的请求参数时,正确语法是什么?
|
2月前
|
SQL 监控 Oracle
SAP ABAP 系统错误 Return value of the database layer SQL dbsl rc 99
SAP ABAP 系统错误 Return value of the database layer SQL dbsl rc 99
|
2月前
|
存储 前端开发 Linux
在 SAP ABAP 系统里访问 FTP 服务器
在 SAP ABAP 系统里访问 FTP 服务器
|
2月前
|
前端开发 搜索推荐 开发者
SAP UI5 sap.m.Column 控件的 minScreenWidth 属性介绍
SAP UI5 sap.m.Column 控件的 minScreenWidth 属性介绍
|
2月前
|
JavaScript 前端开发 开发者
SAP UI5 控件 sap.m.ListBase 的 inset 属性的作用介绍
SAP UI5 控件 sap.m.ListBase 的 inset 属性的作用介绍
|
2月前
|
Web App开发 数据采集 前端开发
纯技术讨论:如何让 SAP UI5 应用无法被别人在浏览器里调试 - 这种做法不推荐试读版
纯技术讨论:如何让 SAP UI5 应用无法被别人在浏览器里调试 - 这种做法不推荐试读版
|
2月前
|
XML 存储 数据格式
SAP UI5 控件 customData 属性的应用介绍
SAP UI5 控件 customData 属性的应用介绍