如何使用Robot Framework在wc3270中设置-charset语言

问题描述 投票:0回答:1

我尝试使用Mainframe3270库对大型机进行机械手操作,但我不知道如何在机械手中使用字符集,因此wc3270不支持泰语。而且我尝试通过手动使用wc3270仿真器,它具有通过选项字符集设置语言并选择语言的选项,但是我不知道如何在机器人中执行此步骤

*** Settings ***
Library           Mainframe3270

*** Keyword ***
Update Credit Card
  Open Connection    ${HOSTNAME}
  Change Wait Time    0.9
  Page Should Contain String    PLEASE LOGON FOLLOW MENU TO SCB MAINFRAME   S/390
  Write Bare    ${LOGINCMD}    #login B2K
  Send Enter
  ${getStatus}    Read    12    18    3

我想获得泰文,但得到了???????而不是文本,因为wc3270无法显示泰语。请任何人帮助我。

robotframework mainframe
1个回答
0
投票

根据wc3270的此文档页面:

http://x3270.bgp.nu/wc3270-man.html#Character-Sets

至少在某些wc3270版本中提供了泰语支持。尝试wc3270 -v以查看您的构建是否支持它。如果是这样,则可以使用-charset thai选项(或-charset cp1160wc3270.charset中的等效项)。

如果您使用的是此框架:

https://github.com/Altran-PT-GDC/Robot-Framework-Mainframe-3270-Library

然后,您可以简单地破解Python源代码以添加该codepage参数。如果我正确地读取当前源代码(不确定),则可以在p3270.py中更改一行。寻找这行:

args = ['-xrm', 'wc3270.unlockDelay: False', '-xrm', 'wc3270.model: 2']

并将其更改为(全部一行):

args = ['-xrm', 'wc3270.unlockDelay: False', '-xrm', 'wc3270.model: 2' '-xrm', 'wc3270.charset: thai']

这应该可行。那可能不是最好,最优雅的解决方案-也许您可以做得更好。

根据wc3270文档,还需要确保将Microsoft Windows(运行wc3270的位置)设置为泰语。

© www.soinside.com 2019 - 2024. All rights reserved.