Global 项目 ABAP 多语言开发技术总结

作者:郑德鼎 约 6 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, 开发
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

技师-迈克尔.梅 [ 建广技师 ](javascript:void\(0\);)

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

1.需求说明

公司为了发展需要,拓 展海外业务时,需要把海外分公司业务,并入当前集团中进行集中管理。 在使用SAP系统过程中,就会遇到系统多语言问题。

海外分公司会雇佣一部分当地员工,这部分员工在SAP系统中操作业务时,不认识中文,只认识当地的语言文字。

另外公司打印的各种表单,按照客户或者供应商需求,也要打印当地的语言文字。 这种情况下我们就需要在开发时,保证开发的各种对象,支持多语言。

下面演示几个场景

1、报表多语言

备注:由于当前系统只安装了中文语言环境,所以我们用例只在EN英文和ZH中文之间,其他语言跟中文类似,SAP默认安装只有DE德文和EN英文,其他语言操作参照中文即可。

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

2、打印表单多语言

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

2.ALV报表、自定义表和提示消息多语言

ALV报表多语言

通常情况下,对于报表开发,用户都要求至少显示英文界面,因为英文作为全球语言已经得到广泛推广和使用,所以我们新建程序时,原始语言选EN英文。

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

代码里面不要硬编码,文本请写在文本元素里面

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

对比不同登录语言下,报表的显示效果

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

自定义表多语言

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

提示消息多语言

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

3.Smartform多语言

Smartform采用新建一个全新的Form方式打印外文,具体原因如下

例如: 销售订单打印

英文显示:Sales Order 字体HELVE

中文显示:销售订单 字体 宋体

基于以上原因,我们没法实现翻译的同时,根据打印语言设置字体,所以只能新建一个全新的Form。具体操作方式此处就不讲了。

4.Script form多语言

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

把英文字体HELVE,改成中文字体CNSONG宋体 ,确保打印不出现乱码

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

通过以下语言字段传入的值,确定调用哪种语言的Form,通常情况下,以下值传入供应商或者客户主数据的语言字段,就可以根据供应商或者客户语言打印出对应语言版本的Form

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

5.财务法定报表本地化开发

财务法定报表具有格式固定和无需连续打印两个特点,针对财务报表特点,我们使用Excel模板方式,进行展示和打印

使用Excel模板输出和打印优点

1、无需开发Form,使用Excel自身的打印功能,简化开发过程

2、 Excel支持多语言,无需担心多语言显示和打印乱码问题

3、借助Excel自带的公式合计某些值,无需ABAP代码合计

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

使用OAOR上传Excel模板到系统

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

代码调用刚才上传的模板

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

传值并展示报表,需要源代码请联系我

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图

6.本地化打印机设置

开发好Form后,还需要设置打印机,才能打印出中文,否则会出现乱码情况

Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
Global 项目 ABAP 多语言开发技术总结 - 封面图
郑德鼎

关于作者:郑德鼎

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「Global项目ABAP多语言开发技术总结.md」整理生成,仅用于内部技术分享与学习交流。