反馈已提交

网络繁忙

单张报表内中英文切换

  • 文档创建者:chuzhihao
  • 编辑次数:11次
  • 最近更新:RosieY 于 2021-12-24
  • 1. 概述

    1.1 版本

    报表服务器版本
    功能变更
    11.0--

    1.2 预期效果

    设计器可以自由实现语言切换,但是报表内容是固定的,其语言并不会根据需求而发生改变。

    在有些业务需求中,需要单页报表内容中英文切换,如下图所示:

    1.gif

    1.3 实现思路

    • 通过公式判断改变标签和文本内容中的字符串。

    • 通过条件判断改变下拉框和报表字段内容中的数据源字段。

    2. 示例

    2.1 数据准备

    新建内置数据集ZHEN,如下图所示:

    注:本文方法不支持文件数据集,使用文件数据集无法通过公式获取到表中字段内容。

    2.2 模板设计

    2.2.1 报表主体设计

    新建普通报表,在 B1、B2 单元格插入公式,单元格具体设置如下表所示:

    单元格扩展方向内容解释
    B1不扩展
    IF($LAN = 'EN', 'SALE_EN', '销售员')

    当语言为中文,单元格内容为 销售员

    当语言为 English,单元格内容为 SALE_EN

    B2向下扩展IF($LAN = 'EN', ZHEN.SELECT(SALE_EN, AREA_CN = $AREA), ZHEN.SELECT(SALE_CN, AREA_CN = $AREA))

    当语言为中文,单元格显示选中的地区的销售员名称

    当语言为 English,单元格显示选中的 AREA 的 SALE_CN 名称

    如下图所示:

    2.2.2 设置语言选择控件

    1)编辑参数面板,拖入标签控件,控件值选择公式:IF($LAN == 'EN','LAN:','语言:'),如下图所示:

    公式的含义:为当用户选择中文时,标签变为语言:;当用户选择 English 时,标签变为 LAN: 。

    2)拖入下拉框控件,控件名称改为LAN ,点击数据字典类型设置为自定义,实际值和显示值设置如下图所示:

    2.2.3 设置地区选择控件

    1)拖入标签控件,控件值选择公式:IF($LAN == 'EN','AREA:','地区:'),如下图所示:

    2)选中下拉框控件,设置控件名称、控件值、数据字典等属性,如下表所示:

    属性备注
    控件名称AREA-
    控件值

    类型:公式

    值:IF($LAN=='EN',ZHEN.FIND(AREA_EN,AREA_CN,$$$),$$$)

    当语言为中文,下拉框显示选中的 AREA_CN 列的值

    当语言为 English,下拉框显示选中的AREA_EN 列的值

    数据字典

    类型:数据查询

    数据集:ZHEN

    实际值:AREA_CN

    显示值:IF($LAN=='EN',ZHEN.FIND(AREA_EN,AREA_CN,$$$),$$$)

    当语言为中文,下拉框显示 AREA_CN 列的值

    当语言为 English,下拉框显示 AREA_EN 列的值

    2.3 效果预览

    保存模板,点击分页预览,效果如 1.1 节所示。

    注:不支持移动端。

    3. 模板下载

    点击下载模板:单张报表内中英文切换.cpt

    附件列表


    主题: 参数应用
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    在线QQ(将在2023.01.05关停):800049425

    总裁办24H投诉

    热线电话:173-1278-1526

    文 档反 馈

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭

    7*24h

    智 能客 服