WDA 程序文本翻译OTR
1.针对直接使用表字段,数据元素的情况:
1.1修改数据元素对应的语言值:DD04T。
1.2模拟SE63插入翻译条目:LXE_LOG
1.3运行时文件翻译条目:DDFTX
*&---------------------------------------------------------------------*
*& Report ZHSICRM_TEXTMD
*&
*&---------------------------------------------------------------------*
*&
*&批量维护数据元素文本,保证使用数据元素文本的屏幕位置能正常显示多语言
*&李渊 20170113 创建
*&上传文件以表DD04T为结构字段
*&---------------------------------------------------------------------*
REPORT ZHSICRM_TEXTMD. TABLES:DD04T,LXE_LOG,DDFTX. DATA:GT_DD04T TYPE TABLE OF DD04T,
GW_DD04T LIKE LINE OF GT_DD04T,
GS_DD04T LIKE LINE OF GT_DD04T,"数据元素多语言描述
GT_LXE_LOG TYPE TABLE OF LXE_LOG,
GW_LXE_LOG LIKE LINE OF GT_LXE_LOG,
GS_LXE_LOG LIKE LINE OF GT_LXE_LOG,
GT_DDFTX TYPE TABLE OF DDFTX,
GW_DDFTX LIKE LINE OF GT_DDFTX,
GS_DDFTX LIKE LINE OF GT_DDFTX. SELECTION-SCREEN:BEGIN OF BLOCK BLK01 WITH FRAME TITLE TEXT-.
PARAMETERS:P_TBMA TYPE CRMTABLES-TABNAME NO-DISPLAY, "RSRD1-TBMA_VAL,
P_FILE LIKE RLGRAP-FILENAME.
SELECTION-SCREEN END OF BLOCK BLK01. *SELECTION-SCREEN FUNCTION KEY 1.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
PERFORM FRM_GET_FILEPATH. START-OF-SELECTION.
CHECK P_FILE IS NOT INITIAL.
PERFORM PRM_UPLOAD_EXCEL.
PERFORM PRM_UPDATE_TABLE. *&---------------------------------------------------------------------*
*& Form FRM_GET_FILEPATH
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM FRM_GET_FILEPATH .
CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
MASK = ',Excel(*.xls),*.XLS,*.XLSX,'
TITLE = '选择文件'()
IMPORTING
FILENAME = P_FILE
EXCEPTIONS
INV_WINSYS =
NO_BATCH =
SELECTION_CANCEL =
SELECTION_ERROR =
OTHERS = .
IF SY-SUBRC <> .
" MESSAGE e100(zdev) WITH '选择文件出错!'(007).
ENDIF.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form PRM_UPLOAD_EXCEL
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM PRM_UPLOAD_EXCEL .
IF P_FILE IS NOT INITIAL.
*将excel数据传入内表
CALL FUNCTION 'ZALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
FILENAME = P_FILE
I_BEGIN_COL = ''
I_BEGIN_ROW = ''
I_END_COL = ''
I_END_ROW = ''
TABLES
INTERN = GT_DD04T.
ENDIF.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form PRM_UPDATE_TABLE
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM PRM_UPDATE_TABLE .
CHECK GT_DD04T[] IS NOT INITIAL. LOOP AT GT_DD04T INTO GW_DD04T.
GS_LXE_LOG-CUSTMNR = ''.
CASE GW_DD04T-DDLANGUAGE.
WHEN 'E'.
GS_LXE_LOG-TARGLNG = 'enUS'.
* WHEN '1'.
* GS_LXE_LOG-TARGLNG = 'enUS'.
WHEN 'I'.
GS_LXE_LOG-TARGLNG = 'itIT'.
WHEN 'D'.
GS_LXE_LOG-TARGLNG = 'deDE'.
WHEN 'S'.
GS_LXE_LOG-TARGLNG = 'esES'.
WHEN 'J'.
GS_LXE_LOG-TARGLNG = 'jaJP'.
WHEN OTHERS.
CONTINUE.
ENDCASE. GS_LXE_LOG-OBJTYPE = 'DTEL'.
GS_LXE_LOG-OBJNAME = GW_DD04T-ROLLNAME.
GS_LXE_LOG-UNAME = SY-UNAME.
GS_LXE_LOG-UDATE = SY-DATUM.
GS_LXE_LOG-UTIME = SY-UZEIT.
APPEND GS_LXE_LOG TO GT_LXE_LOG. SELECT SINGLE * INTO GS_DDFTX FROM DDFTX
WHERE TABNAME = GW_DD04T-ROLLNAME
AND DDLANGUAGE = 'E'
AND ROLLNAME = GW_DD04T-ROLLNAME.
IF SY-SUBRC = .
GS_DDFTX-DDLANGUAGE = GW_DD04T-DDLANGUAGE.
GS_DDFTX-SCRTEXT_S = GW_DD04T-SCRTEXT_S.
GS_DDFTX-SCRTEXT_M = GW_DD04T-SCRTEXT_S.
GS_DDFTX-SCRTEXT_L = GW_DD04T-SCRTEXT_S.
GS_DDFTX-REPTEXT = GW_DD04T-REPTEXT.
GS_DDFTX-FIELDTEXT = GW_DD04T-DDTEXT.
APPEND GS_DDFTX TO GT_DDFTX.
ENDIF. ENDLOOP. MODIFY DD04T FROM TABLE GT_DD04T.
MODIFY LXE_LOG FROM TABLE GT_LXE_LOG.
IF GT_DDFTX[] IS NOT INITIAL.
MODIFY DDFTX FROM TABLE GT_DDFTX.
ENDIF.
IF SY-SUBRC = .
MESSAGE '导入成功' TYPE 'S'.
ELSE.
MESSAGE '导入失败' TYPE 'S' DISPLAY LIKE 'E'.
EXIT.
ENDIF.
ENDFORM.
2.WDA程序中用TEXT写死的值
2.1SOTR_EDIT
可获取单个的文本和KEY值。
2.2重新进入维护修改值。
可参考修改SOTR_TEXT
3.定义全局的文本,并翻译
使用SOTR_EDIT ,创建文本对象,记录别名,维护对应语言的文本
在使用的地方,直接调用
lv_title = cl_wd_utilities=>get_otr_text_by_alias( 'ZWDA/LABEL_TEST' ).
WDA 程序文本翻译OTR的更多相关文章
- Azure AI 服务之文本翻译
当下人工智能可谓是风头正劲,几乎所有的大厂都有相关的技术栈.微软在 AI 领域自然也是投入了重注,并且以 Azure 认知服务的方式投入了市场: 也就是说作为开发者我们不需要学习太多 AI 的理论知识 ...
- 配置WDA程序到NWBC
NWBC是通过角色来做的权限管理,包括菜单项. 如果用户没有分配对应的,登陆后看到的东西很少,或者空白. 这里需要先将BC的个性化参数全部配齐,方便使用.BC最左上角,点击,设置,个性化设置. 如下几 ...
- Microsoft Translator发布粤语文本翻译
今天,Microsoft Translator发布了粤语的文本翻译,新的语言增加将继续丰富微软翻译产品的生态系统*,让更多组织和个人能够快速且高效地实现翻译应用.在中国,大有约5500万人使用粤语(语 ...
- AWS机器学习初探(2):文本翻译Translate、文本转语音Polly、语音转文本Transcribe
AWS机器学习初探(1):Comprehend - 自然语言处理服务 这几个服务的功能和使用都很直接和简单,因此放在一篇文章中介绍. 1. 文本翻译服务 Translate 1.1 功能介绍 AWS ...
- HMS Core 机器学习服务6.4.0版本更新啦,文本翻译功能增加10种小语种语言类型!
近日,HMS Core机器学习服务(ML Kit)文本翻译功能在6.4.0版本更新中增加了10种小语种语言类型,分别是马其他语.马其顿.冰岛.乌尔都语.波斯尼亚语.乌克兰语.加泰罗尼亚语.斯洛文尼亚语 ...
- SAP 多语言文本翻译
SAP自己的东西都是有语言包的,针对很多语言有是有对应文本的翻译,巴特,比较不是专业的翻译,多以很多时候还是有这样那样的文本描述需要调整. 语言包怎么打就不说了,也不知道,知道也没打过... 标准界面 ...
- 【微信小程序】微信小程序 文本过长,自动换行的问题
小程序开发过程出现的问题: 文本过长,以致于在view中显示不全,没有自动换行的问题 解决方法: 在wxss样式文件中添加样式 .font-break { word-break:break-all; ...
- macOS平台下Qt应用程序菜单翻译及调整
一.翻译 在macOS平台上,系统会为应用程序菜单添加一些额外的菜单项.先来看一些典型的例子: 这个是Qt Creator的菜单,系统为应用程序菜单添加了一些桌面显示操作相关的菜单项: 这个是Qt D ...
- python:爬虫1——实战(下载一张图片、用Python模拟浏览器,通过在线的有道词典来对文本翻译)
一.下载一只猫 import urllib.request response = urllib.request.urlopen("http://cdn.duitang.com/uploads ...
随机推荐
- 为什么我的Android SDK Manager中只显示已安装的package?
如图.在菜单packages中,前两项我都是选了的 . 两种可能: 1. 明显是楼主连不上谷歌的更新服务器了,换成国内的吧,左上Tools-->Options弹出的界面有两个可以填写的 ,下面一 ...
- mysql show processlist详解
SHOW PROCESSLIST显示哪些线程正在运行.您也可以使用mysqladmin processlist语句得到此信息.如果您有SUPER权限,您可以看到所有线程.否则,您只能看到您自己的线程( ...
- Ubuntu系统如何卸载并安装新版本的jdk(permission denied问题)
1.如果是自带的openjdk运行下面可以删除: sudo apt-get purge openjdk* 但是这种情况又不一定成功,有时候运行java -version发现还是可以运行的.证明删除不成 ...
- WordPress常用插件
1.Remove Open Sans font Link from WP core 由于Wordpress后台外链加载了谷歌字体(代码位置在wordpress\wp-includes\script-l ...
- JAVA Timer定时器使用方法(一)
设置定时任务很简单,用Timer类就搞定了. 一.延时执行首先,我们定义一个类,给它取个名字叫TimeTask,我们的定时任务,就在这个类的main函数里执行. 代码如下:package test;i ...
- 配置cinder使用NFS后端
首先先使用“cinder delete”命令删除所有实例,释放磁盘空间. 停止cinder服务:service openstack-cinder-api stopservice openstack-c ...
- fragment 数据传递,通信
Fragment之间的通信 在本节中,你会学到 1.定义接口 2.实现接口 3.将消息传递给fragment 为了重用Fragment UI 组件,在设计中你应该通过定义每一个fragemnt自己 ...
- codeforces 492E. Vanya and Field(exgcd求逆元)
题目链接:codeforces 492e vanya and field 留个扩展gcd求逆元的板子. 设i,j为每颗苹果树的位置,因为gcd(n,dx) = 1,gcd(n,dy) = 1,所以当走 ...
- MFC-----在MFC中使用Picture控件加载任意图片
对于刚刚接触OpenCV的童鞋来说,如何在MFC中加载并显示一张图片.应该是初期必定会碰到的问题之一.因此本文在分享这方面经验的同时,也相当于是写给自己的一份备忘录. 本文使用的是OpenCV2.1+ ...
- Struts2--Dynamic Result动态结果集
${r} : 表示配置文件xml可以读取action的valuestack的内容 1. jsp显示文件: <body> 动态结果 一定不要忘了为动态结果的保存值设置set get方法 &l ...