lyz880524 发表于 2020-9-7 09:26:20

AR国际化表头

我想用AR实现,根据不同的语言标识,自动显示不同的表头
语言标识是在我们后台管理中,用户自己设定的:比如1代表中文,2代表英文,3自定义语言
我想根据这个标识,动态的切换报表的表头;我们程序有配置 l18n 的配置文件,配置如下:
message.xml(源配置档案)
report.title=标题
report.msg=提示内容

report.ordernumber=序号
---------------------------
zh_CN.xml(中文配置档案)
report.title=标题
report.msg=提示内容
report.ordernumber=序号
---------------------------
en_US.xml(英文配置档案)
report.title=title
report.msg=message

report.ordernumber=ordernumber
---------------------------
by_self.xml(用户自定义配置档案)

ar 在 Scripts\i18n\ 目录下有en.txt 和 zh.txt
我如何根据配置档案动态的实现表头的国际化?



KearneyKang 发表于 2020-9-7 11:12:21

你好你的的 需求是需要动态切花语言了,那么首先你的JS文件要有你对应的这几种汉化文件,然后 自己在报表展示的页面定义一个语言选择按钮,选择之后就出发汉化方法的,汉化的方法进行一个判断,然后不用的选择进行不同的汉化文件的绑定。这样就可以解决你的这个问题。
汉化的方法如下:汉化代码
<script type="text/javascript">
      $(function () {         
            var viewer = GrapeCity.ActiveReports.Viewer({
                element: '#viewerContainer',//报表展示区
                report: {
                  id: "Reports/多值传参.rdlx"
                },
                reportService:
                {
                  url: '/ActiveReports.ReportService.asmx'//服务引用
                },
                uiType: 'desktop',//展示模式,桌面展示
                documentLoaded: function reportLoader() {
                  Console.log(viewer.pageCount);
                },
                reportLoaded: function (reportInfo) {
                  console.log(reportInfo.paremeters);
                },
                localeUri: 'Scripts/i18n/Localeuri.txt'//汉化
            });
      });
    </script> localeUri: 'Scripts/i18n/Localeuri.txt'//汉化

lyz880524 发表于 2020-9-7 14:37:05

我在报表编辑器中,如何使用 Localeuri.txt 的key啊?
我是要国际化表头,
比如一个表格
序号 |名称|金额

lyz880524 发表于 2020-9-7 14:38:12

我在报表编辑器中,如何使用 Localeuri.txt 的key啊?
我是要国际化表头,
比如一个表格,中文
序号 |名称|金额
   1      张三   43.00

英文

ordernumber |name   | amount
         1            zhangsan   43.00

KearneyKang 发表于 2020-9-7 15:02:37

本帖最后由 KearneyKang 于 2020-9-7 15:07 编辑

这这个不行的,汉化只能汉化工具栏,没办法把报表里面的内容也根据进行汉化改变
工具栏汉化:https://gcdn.grapecity.com.cn/forum.php?mod=viewthread&tid=57867&extra=page%3D4

lyz880524 发表于 2020-9-18 13:12:59

https://www.grapecity.com.cn/blogs/runtime-localization-in-activereports
这个不就是本地化的实现吗?

KearneyKang 发表于 2020-9-18 15:07:56

你好,这个是报表本身的设计,就是根据你选择什么语言然后,报表使用参数报表,进行判断,表头显示对于的字体信息,这是都是通过表达式显示的,但是报表本身绑定的内容层的信息是没有发生变化的,你如果连表格的内容都要跟着发生变化。那么你就有根据你的 语言选择进行各种判断来实现。这是都是你自己通过表达式和数据源判断实现。
我们提供的API接口,只能一次性修改工具栏的语言。
你这是 需要修改报表本身 的内容,那么你的报表 本身就需要各种判断。
页: [1]
查看完整版本: AR国际化表头