1. 概述
1.1 版本
报表服务器版本 | JAR包版本 | 插件版本 |
---|---|---|
10.0.17 | 10.0.17及以上 | V1.3 |
1.2 应用场景
在企业中,如果遇到在不同场合下需要展示不同语言的模板内容时,为了减少多张模板的制作成本,降低多张模板的维护成本,需要实现一张模板,多语言展示的效果,如下图所示:
1.3 功能描述
本文介绍了如何在设计器和平台中设置模板国际化,如何通过工具栏控件、URL传参、参数控件实现模板的语言切换,以及遇到需要前端展现的内容如何通过 JS 来实现语言的切换。
1.4 使用前提
安装多语言方案插件,详情请参考:插件安装
2. 设计器中设置模板国际化
2.1 设置界面入口
模板国际化设置即对「键-值」的对应映射关系进行设置,设置内容仅对当前模板生效。
点击「模板>模板国际化」即可进入国际化设置界面。
界面上有两个 tab,模板 tab 支持对「键-值」的对应关系进行新增、删除、修改、查看,服务器 tab 仅支持查看。
界面顶部搜索框支持对当前界面中的模板tab和服务器tab下的「键-值」内容进行关键词搜索,「描述」列不支持搜索。
2.2 「键-值」设置
点击「+」按钮,弹出「键-值」设置界面。
「键」中输入用于公式调用的对象,可输入任意值,「描述」中输入对当前键的解释说明,各语言栏位中输入不同语言下当前键的显示内容。
注:语言字段中至少填写一个语言的显示内容才可以提交。
点击「」按钮,可对当前「键-值」设置进行修改。
点击对应「键-值」行后的「」按钮可删除单个「键-值」设置。
选中「键-值」行前的复选框后,点击列表顶部的「」按钮可删除多个「键-值」设置。
2.3 模板语言设置
点击列表右上方的「」按钮,进入模板语言设置界面,设置内容仅对该模板生效。
模板语言设置可选择「使用服务器设置」或「为此模板设置」。
使用服务器设置即默认语言和备用语言选项置灰,不能修改。
为此模板设置可自定义默认语言和备用语言。
默认语言可选择跟随平台/浏览器语言或具体的语言内容。
选择跟随平台/浏览器语言时,若平台和浏览器语言不一致时,模板默认语言为平台语言。
选择跟随平台/浏览器语言时,若浏览器语言不包含于所支持的语言范围内,则模板语言为备用语言。
3. 决策平台中设置模板国际化
3.1 设置界面入口
服务器模板国际化设置即对「键-值」的对应关系进行设置,设置内容对当前服务器上所有模板生效。
以管理员身份登入决策系统,点击「管理系统>语言配置」即可进入国际化设置介面。
界面顶部右侧搜索框支持对「键-值」内容进行关键词搜索,「备注」列不支持搜索。
「显示字段」可切换当前「键-值」列表显示的语言栏。
3.2 「键-值」设置
点击「+」按钮,弹出「键-值」设置界面。
「键」中输入用于呼叫的对象,可自定义任意值,「备注」中输入对当前键的解释说明,各语言栏位中输入不同语言下当前键的显示内容。
注:语言字段中至少填写一个语言的显示内容才可以提交。
点击「」按钮,可对当前「键-值」设置进行修改。
点击对应「键-值」行后的「」按钮可删除单个「键-值」设置。
选中「键-值」行前的复选框后,点击列表顶部的「」按钮可删除多个「键-值」设置。
「键-值」列表还支持批量导入、导出。
3.3 服务器模板语言设置
点击菜单栏「服务器服务器>模板语言设置」,进入设置界面。
可自定义默认语言和备用语言。
默认语言可选择跟随平台/浏览器语言或具体的语言内容。
选择跟随平台/浏览器语言时,若平台和浏览器语言不一致时,模板默认语言为平台语言。
选择跟随平台/浏览器语言时,若浏览器语言不包含于所支持的语言范围内,则模板语言为备用语言。
4. 模板语言切换
4.1 方法一:工具栏控件
点击「模板>模板Web属性」,进入「分页预览设置」或「填报页面设置」或「数据分析设置」页面。
选择「为该模板单独设置」后,可自定义工具栏中的控件。
双击「模板语言」控件,即可新增到当前模板的工具栏中。
模板语言控件支持自定义控件图标和控件名,以及是否显示图标和名字。
设置完成后,预览模板,点击顶部工具栏中该控件即可选择需要切换的语言,效果如下图所示。
4.2 方法二:URL传递参数
预览模板后,在URL后加上&fr_locale=,输入对应语言的值即可切换语言,效果如下图所示。
注:「简体中文」对应「zh_CN」,繁体中文」对应「zh_TW」,「英文」对应「en_US」,「日文」对应「ja_JP」,「韩文」对应「ko_KR」。
4.3 方法三:参数控件
注:此方式仅对查询后的内容生效,查询前载入的(如:工具栏、其他控件文字等)不生效。
新增一个名为fr_locale的模板参数或全局参数。
在模板参数面板中生成参数fr_locale,设置参数控件为下拉框控件。
给控件设置数据字典,类型设置为「自定义」,加入需要的语言选项,实际值需对应为 zh_CN、zh_TW、en_US、ja_JP、ko_KR。
参数控件的显示值固定,无法设置为多语言切换。
4.4 方法四:前端展现
I18N()
FR.i18nText()
新增一个 JavaScript 脚本事件
var a = FR.i18nText('水洗溫度不超過30攝氏度!');//此处文本需在【模板国际化】中设置键-值FR.showDialog("Details",600,400,a);
var a = FR.i18nText('排名第一');//此处文本需在【模板国际化】中设置键-值FR.showDialog("Details",600,400,a);
5. 模板国际化示例
5.1 数据准备
准备一个有不同语言的Excel文件,给文件加上一个【语言】字段,在字段中输入对应语言的值,如:zh_CN、zh_TW、en_US、ja_JP、ko_KR。点击下载示例文件:示例.xlsx。
在模板中新建 Excel数据集,导入刚刚准备好的Excel文件。
5.2 制作报表-设置数据
将数据集中的字段拖入 A2:E2 单元格中,并给 A2:E2 单元格设置居中且加上表格内外框。
选中 A2 单元格,双击进入数据列设置界面,点击【过滤】。
设置数据过滤,根据语言参数的值展示对应语言的数据。
设置【语言】字段【等于】参数【fr_locale】,点击【+增加】生成过滤条件。
此时若当前浏览器语言为繁体中文,则只展示繁体中文的数据。
5.3 设置列表标题多语言
点击【模板】→【模板国际化】进入国际化设置界面。
点击【+】按钮,新增【键-值】对映关系,在设置界面输入键名称和不同语言的显示。
完成设置后点击【确定】。
5.4 制作报表-插入多语言标题
在 A1:E1 单元格中插入列表标题,并给A1:E1单元格设置居中且加上表格内外框。
标题使用公式,选择插入公式,输入 i18n("键") 即可。
标题全部设置完成后,若当前浏览器语言为繁体中文,则标题内容显示为繁体。
5.5 设定语言切换
点击【模板>模板Web属性】,进入【分页预览设置】界面。
选择【为该模板单独设定】后,可自定义工具栏中的控件。
双击【模板语言】控件,即可新增到当前模板的工具栏中。
完成设置后点击【确定】,点击预览,在浏览器中查看效果,切换语言后,报表工具栏、标题、数据均展示为对应语言的内容,效果如下图所示。