在Automation Anywhere最新的A2019产品中,已经实现了多语言的集成,目前支持包括英语,日语,韩语,简体和繁体中文,德语,西班牙语,法语,意大利语,葡萄牙语的10种语言。但美中不足的是,机器人脚本中的一些执行动作(Action)没有完全的实现汉化,或者汉语表述不是十分恰当。其实,A2019提供了强大的多国语言配置能力,稍作修改后,便可实现地道的汉化包。
首先,我们了解一下A2019中的Action是如何实现多语言配置的:
1)A2019所有Action的Package存储在CR的服务器C:\ProgramData\AutomationAnywhere\Server Files\public\package目录中。
2)利用RAR打开某个Package,可以看到如下的目录结构。其中,package.json是总的配置文件,在locales目录中存储的就是多国语言配置文件,其中zh_CN.json代表简体中文,zh_TW.json代表繁体中文。
3)打开package.json文件,其中标识为[[label]],[[description]]之类的值,就是可以通过多语言来配置的。另外,这些值分别代表的含义,未来会在如何自定义A2019 package的话题中详细描述。简要讲,label代表了左侧菜单中的显示值,description代表了导入package时的描述信息,下面的一些值,是在应用action时,显示在右侧属性表单中的信息,会随着不同的命令而变化。
4)打开对应的zh_CN.json,里面展示了对引用值所有定义。[[label]]引用到“label”: "延迟",在显示的时候,就会展示为“延迟”;[[description]]引用到 "description" : "执行延迟操作。",在显示的时候,就会展示为“"执行延迟操作。”。如果打开其他.json文件,也可以看到其他语言的同样表述方式。
接下来,我们看看如何增加或调整汉化信息。
第一种情况是,已经有locales目录,但是缺少zh_CN.json文件。只需要打开en_US.json文件,照猫画虎的构建新的zh_CN.json文件。例如Comments动作。
第二种情况是,没有locales目录,也就是说,这个命令之前并没有多语言的配置。例如Step动作,package.json文件中的内容都是固定的。
第一步,我们需要把需要汉化展示的信息,利用[[xxxxx]]的方式来替换,例如我们对label,description,commands里的description,commands里attributes中的label这四个值进行了替换。注意每个值的命名必须是唯一的。
第二步,增加en_US.json和zh_CN.json文件,en_US.json是必须的,也就是说在A2019选择某种语言,但是却没有找到对应的语言配置文件时,会默认显示为英文。
第三步,在pacakge中新建locales目录,将en_US.json和zh_CN.json文件拷贝进去。
不管是第一种情况还是第二种情况,接下来要做的就是把新做的package导入到control room中。
首先,需要修改package.json文件中的两个版本号,这个版本号不能和control room中已有的版本号重复,否则就会提示版本重复不能导入。
然后,还需要修改导入文件的文件名,保持与配置文件的版本号一致。
最后,使用具有导入pacakge权限的用户登录控制中心,完成新的pacakge导入即可,导入后及时就可以看到汉化的情况。
让我们看看在导入新的package后,界面上的一些显示变化。
A2019其他界面中的汉化又是如何完成的?
请看这个目录C:\Program Files\Automation Anywhere\Enterprise\crui\script\中的js脚本文件,zh-CN-ae481f.js代表的是中文配置。在执行语言选项时,就会调用这个js文件。
例如我们修改机器人脚本开发页面上的tab页显示,原来js文件中的脚本是"toggle-design-view-title":"流","toggle-code-view-title":"列表","toggle-both-view-title":"双",将其修改为"toggle-design-view-title":"流程","toggle-code-view-title":"代码","toggle-both-view-title":"双视图"。