1.针对直接使用表字段,数据元素的情况:

1.1修改数据元素对应的语言值:DD04T。

1.2模拟SE63插入翻译条目:LXE_LOG

1.3运行时文件翻译条目:DDFTX

  1. *&---------------------------------------------------------------------*
  2. *& Report ZHSICRM_TEXTMD
  3. *&
  4. *&---------------------------------------------------------------------*
  5. *&
  6. *&批量维护数据元素文本,保证使用数据元素文本的屏幕位置能正常显示多语言
  7. *&李渊 20170113 创建
  8. *&上传文件以表DD04T为结构字段
  9. *&---------------------------------------------------------------------*
  10. REPORT ZHSICRM_TEXTMD.
  11.  
  12. TABLES:DD04T,LXE_LOG,DDFTX.
  13.  
  14. DATA:GT_DD04T TYPE TABLE OF DD04T,
  15. GW_DD04T LIKE LINE OF GT_DD04T,
  16. GS_DD04T LIKE LINE OF GT_DD04T,"数据元素多语言描述
  17. GT_LXE_LOG TYPE TABLE OF LXE_LOG,
  18. GW_LXE_LOG LIKE LINE OF GT_LXE_LOG,
  19. GS_LXE_LOG LIKE LINE OF GT_LXE_LOG,
  20. GT_DDFTX TYPE TABLE OF DDFTX,
  21. GW_DDFTX LIKE LINE OF GT_DDFTX,
  22. GS_DDFTX LIKE LINE OF GT_DDFTX.
  23.  
  24. SELECTION-SCREEN:BEGIN OF BLOCK BLK01 WITH FRAME TITLE TEXT-.
  25. PARAMETERS:P_TBMA TYPE CRMTABLES-TABNAME NO-DISPLAY, "RSRD1-TBMA_VAL,
  26. P_FILE LIKE RLGRAP-FILENAME.
  27. SELECTION-SCREEN END OF BLOCK BLK01.
  28.  
  29. *SELECTION-SCREEN FUNCTION KEY 1.
  30. AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
  31. PERFORM FRM_GET_FILEPATH.
  32.  
  33. START-OF-SELECTION.
  34. CHECK P_FILE IS NOT INITIAL.
  35. PERFORM PRM_UPLOAD_EXCEL.
  36. PERFORM PRM_UPDATE_TABLE.
  37.  
  38. *&---------------------------------------------------------------------*
  39. *& Form FRM_GET_FILEPATH
  40. *&---------------------------------------------------------------------*
  41. * text
  42. *----------------------------------------------------------------------*
  43. * --> p1 text
  44. * <-- p2 text
  45. *----------------------------------------------------------------------*
  46. FORM FRM_GET_FILEPATH .
  47. CALL FUNCTION 'WS_FILENAME_GET'
  48. EXPORTING
  49. MASK = ',Excel(*.xls),*.XLS,*.XLSX,'
  50. TITLE = '选择文件'()
  51. IMPORTING
  52. FILENAME = P_FILE
  53. EXCEPTIONS
  54. INV_WINSYS =
  55. NO_BATCH =
  56. SELECTION_CANCEL =
  57. SELECTION_ERROR =
  58. OTHERS = .
  59. IF SY-SUBRC <> .
  60. " MESSAGE e100(zdev) WITH '选择文件出错!'(007).
  61. ENDIF.
  62. ENDFORM.
  63. *&---------------------------------------------------------------------*
  64. *& Form PRM_UPLOAD_EXCEL
  65. *&---------------------------------------------------------------------*
  66. * text
  67. *----------------------------------------------------------------------*
  68. * --> p1 text
  69. * <-- p2 text
  70. *----------------------------------------------------------------------*
  71. FORM PRM_UPLOAD_EXCEL .
  72. IF P_FILE IS NOT INITIAL.
  73. *将excel数据传入内表
  74. CALL FUNCTION 'ZALSM_EXCEL_TO_INTERNAL_TABLE'
  75. EXPORTING
  76. FILENAME = P_FILE
  77. I_BEGIN_COL = ''
  78. I_BEGIN_ROW = ''
  79. I_END_COL = ''
  80. I_END_ROW = ''
  81. TABLES
  82. INTERN = GT_DD04T.
  83. ENDIF.
  84. ENDFORM.
  85. *&---------------------------------------------------------------------*
  86. *& Form PRM_UPDATE_TABLE
  87. *&---------------------------------------------------------------------*
  88. * text
  89. *----------------------------------------------------------------------*
  90. * --> p1 text
  91. * <-- p2 text
  92. *----------------------------------------------------------------------*
  93. FORM PRM_UPDATE_TABLE .
  94. CHECK GT_DD04T[] IS NOT INITIAL.
  95.  
  96. LOOP AT GT_DD04T INTO GW_DD04T.
  97. GS_LXE_LOG-CUSTMNR = ''.
  98. CASE GW_DD04T-DDLANGUAGE.
  99. WHEN 'E'.
  100. GS_LXE_LOG-TARGLNG = 'enUS'.
  101. * WHEN '1'.
  102. * GS_LXE_LOG-TARGLNG = 'enUS'.
  103. WHEN 'I'.
  104. GS_LXE_LOG-TARGLNG = 'itIT'.
  105. WHEN 'D'.
  106. GS_LXE_LOG-TARGLNG = 'deDE'.
  107. WHEN 'S'.
  108. GS_LXE_LOG-TARGLNG = 'esES'.
  109. WHEN 'J'.
  110. GS_LXE_LOG-TARGLNG = 'jaJP'.
  111. WHEN OTHERS.
  112. CONTINUE.
  113. ENDCASE.
  114.  
  115. GS_LXE_LOG-OBJTYPE = 'DTEL'.
  116. GS_LXE_LOG-OBJNAME = GW_DD04T-ROLLNAME.
  117. GS_LXE_LOG-UNAME = SY-UNAME.
  118. GS_LXE_LOG-UDATE = SY-DATUM.
  119. GS_LXE_LOG-UTIME = SY-UZEIT.
  120. APPEND GS_LXE_LOG TO GT_LXE_LOG.
  121.  
  122. SELECT SINGLE * INTO GS_DDFTX FROM DDFTX
  123. WHERE TABNAME = GW_DD04T-ROLLNAME
  124. AND DDLANGUAGE = 'E'
  125. AND ROLLNAME = GW_DD04T-ROLLNAME.
  126. IF SY-SUBRC = .
  127. GS_DDFTX-DDLANGUAGE = GW_DD04T-DDLANGUAGE.
  128. GS_DDFTX-SCRTEXT_S = GW_DD04T-SCRTEXT_S.
  129. GS_DDFTX-SCRTEXT_M = GW_DD04T-SCRTEXT_S.
  130. GS_DDFTX-SCRTEXT_L = GW_DD04T-SCRTEXT_S.
  131. GS_DDFTX-REPTEXT = GW_DD04T-REPTEXT.
  132. GS_DDFTX-FIELDTEXT = GW_DD04T-DDTEXT.
  133. APPEND GS_DDFTX TO GT_DDFTX.
  134. ENDIF.
  135.  
  136. ENDLOOP.
  137.  
  138. MODIFY DD04T FROM TABLE GT_DD04T.
  139. MODIFY LXE_LOG FROM TABLE GT_LXE_LOG.
  140. IF GT_DDFTX[] IS NOT INITIAL.
  141. MODIFY DDFTX FROM TABLE GT_DDFTX.
  142. ENDIF.
  143. IF SY-SUBRC = .
  144. MESSAGE '导入成功' TYPE 'S'.
  145. ELSE.
  146. MESSAGE '导入失败' TYPE 'S' DISPLAY LIKE 'E'.
  147. EXIT.
  148. ENDIF.
  149. 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的更多相关文章

  1. Azure AI 服务之文本翻译

    当下人工智能可谓是风头正劲,几乎所有的大厂都有相关的技术栈.微软在 AI 领域自然也是投入了重注,并且以 Azure 认知服务的方式投入了市场: 也就是说作为开发者我们不需要学习太多 AI 的理论知识 ...

  2. 配置WDA程序到NWBC

    NWBC是通过角色来做的权限管理,包括菜单项. 如果用户没有分配对应的,登陆后看到的东西很少,或者空白. 这里需要先将BC的个性化参数全部配齐,方便使用.BC最左上角,点击,设置,个性化设置. 如下几 ...

  3. Microsoft Translator发布粤语文本翻译

    今天,Microsoft Translator发布了粤语的文本翻译,新的语言增加将继续丰富微软翻译产品的生态系统*,让更多组织和个人能够快速且高效地实现翻译应用.在中国,大有约5500万人使用粤语(语 ...

  4. AWS机器学习初探(2):文本翻译Translate、文本转语音Polly、语音转文本Transcribe

    AWS机器学习初探(1):Comprehend - 自然语言处理服务 这几个服务的功能和使用都很直接和简单,因此放在一篇文章中介绍. 1. 文本翻译服务 Translate 1.1 功能介绍 AWS ...

  5. HMS Core 机器学习服务6.4.0版本更新啦,文本翻译功能增加10种小语种语言类型!

    近日,HMS Core机器学习服务(ML Kit)文本翻译功能在6.4.0版本更新中增加了10种小语种语言类型,分别是马其他语.马其顿.冰岛.乌尔都语.波斯尼亚语.乌克兰语.加泰罗尼亚语.斯洛文尼亚语 ...

  6. SAP 多语言文本翻译

    SAP自己的东西都是有语言包的,针对很多语言有是有对应文本的翻译,巴特,比较不是专业的翻译,多以很多时候还是有这样那样的文本描述需要调整. 语言包怎么打就不说了,也不知道,知道也没打过... 标准界面 ...

  7. 【微信小程序】微信小程序 文本过长,自动换行的问题

    小程序开发过程出现的问题: 文本过长,以致于在view中显示不全,没有自动换行的问题 解决方法: 在wxss样式文件中添加样式 .font-break { word-break:break-all; ...

  8. macOS平台下Qt应用程序菜单翻译及调整

    一.翻译 在macOS平台上,系统会为应用程序菜单添加一些额外的菜单项.先来看一些典型的例子: 这个是Qt Creator的菜单,系统为应用程序菜单添加了一些桌面显示操作相关的菜单项: 这个是Qt D ...

  9. python:爬虫1——实战(下载一张图片、用Python模拟浏览器,通过在线的有道词典来对文本翻译)

    一.下载一只猫 import urllib.request response = urllib.request.urlopen("http://cdn.duitang.com/uploads ...

随机推荐

  1. java工程开发之图形化界面之(第五课)

    下面我们将: 一)更加完整的解释Graphics类 二)使用方法来更清晰的重新编写前面图形小应用程序之一 三)介绍一些其他的绘图的方法 四)介绍方法init,它是类似于paint但是用于不同用途的另一 ...

  2. PHP字节格式化

    /** * 容量转换 * @param string $value 字节数值 * @return string */function GBKB($value) { $size = ($value &g ...

  3. Highcharts获取json数据展现pie饼图

    实际上很多时候图表展现的数据都是从服务器端获取,现在来做一个简单的异步获取json数据的例子. 服务器端用Servlet3.0实现,JSP页面通过jquery异步请求json数据提供给Highchar ...

  4. Fix a Tree

    Fix a Tree A tree is an undirected connected graph without cycles. Let's consider a rooted undirecte ...

  5. JAVA和C++区别

    1.指针 JAVA语言让编程者无法找到指针来直接访问内存无指针,并且增添了自动的内存管理功能,从而有效地防止了c/c++语言中指针操作失误,如野指针所造成的系统崩溃.但也不是说JAVA没有指针,虚拟机 ...

  6. u-boot添加一个hello命令

    1.在common目录下建立一个cmd_hello.c文件 2.仿照/common/cmd_bootm.c文件修改,把cmd_bootm.c头文件复制过来 3.再复制do_bootm.U_BOOT_C ...

  7. CodeForces 139C Literature Lesson(模拟)

    这个题,读懂了就是水,读不懂就没办法下手,论英语阅读的重要性...只有五种形式,第一种万能型aaaa,是另外3种的特殊情况,第二种克莱里林四行打油诗aabb形式,第三种是交替的abab形式,第四种是封 ...

  8. PAT (Advanced Level) 1041. Be Unique (20)

    简单题. #include<cstdio> #include<cstring> #include<cmath> #include<vector> #in ...

  9. 转载--使用image-set来优化在retian屏幕下的背景图片

    mage-set对我来说,我也很陌生,于是借助G爸和度娘海量的搜索image-set,才知道Webkit内核"safari6"和“chrome21”支持CSS4的backgroun ...

  10. 一个action读取另一个action里的session

    action 1: private Map session; session.put("projectname_session", request1.getParameter(&q ...