找回密码
 立即注册

QQ登录

只需一步,快速开始

Lenka.Guo 讲师达人认证 悬赏达人认证
超级版主   /  发表于:2021-10-11 17:33  /   查看:1833  /  回复:0
本帖最后由 Lenka.Guo 于 2021-10-13 12:17 编辑

在这个15.2中,我们增加了在报表中对图表在运行时修改图表标识类的元素能力。现在可以使用本地化资源来本地化图表属性,与其他控件类似。
可修改的图表元素:
  • 图表顶部标题
  • 图表底部标题
  • 图表轴标题
  • 图表图例标题

应用场景:
解决跨国用户使用同一张报表模板时,显示的数据可能是固定不变的,但一些标题类标识,需要符合Local用户的语言, 因此我们需要根据当前登录的用户语言,自动切换控件的显示语言来显示标题。ActiveReports 可以指定整体报表的语言,数据控件的语言及对应的标识类的文本信息,以便我们根据当前登录的用户,自动切换资源文件。
注意,下图是使用记事本打开的报表文件。
  1. <dd:LocalizationResources xmlns:dd="http://schemas.datadynamics.com/reporting/2005/02/reportdefinition"><blockquote><span style="white-space:pre">        </span>
复制代码


效果:


即根据当前登录用户的语言,我们在报表中存储了不同的语言的资源值,即可根据不同的语言,ActiveReports 自动切换数据控件的显示标签值。这对于跨国产品的用户而言是非常强大的功能,可以让我们只设计一套模板,即可适应不同区域客户。这个功能是不是有点强大呢


本次在ActiveReports 15.2 中我们为图表控件增强了本地化资源,即图表也可以根据当前登录用户的预言,设置图表顶部/底部标题,X/Y轴标题,图例标题

操作步骤:
1. 用桌面设计器新建RDL或页面报表

2. 设置报表的“Language”或语言属性 为需要的语言,如Chinese-PRC
2. 添加图表控件和其他需要的控件,如文本框
  • 输入图表标题
  • 输入文本框的值






3. 切换报表“Language”或语言属性 为日语-Japanese 并输入对应的资源文本
如こんにちは



4. 保存报表
到这一步骤,我们简单的将报表标题及文本框已经包含了两种语言资源了,我们可以用记事本打开rdlx文件,查看具体的声明,可以看到如下代码:
  1. <dd:LocalizationResources xmlns:dd="http://schemas.datadynamics.com/reporting/2005/02/reportdefinition">
  2.                 <LocalizationResource Language="sq-XK">
  3.                         <Data>
  4.                                 <Name>Chart1.Plot1.AxisX.Title</Name>
  5.                                 <Value>Category</Value>
  6.                         </Data>
  7.                         <Data>
  8.                                 <Name>Chart1.Plot1.AxisY.Title</Name>
  9.                                 <Value>Value</Value>
  10.                         </Data>
  11.                         <Data>
  12.                                 <Name>Chart1.Header.Title</Name>
  13.                                 <Value>测试</Value>
  14.                         </Data>
  15.                         <Data>
  16.                                 <Name>TextBox1.Value</Name>
  17.                                 <Value>测试</Value>
  18.                         </Data>
  19.                         <Data>
  20.                                 <Name>TextBox2.Value</Name>
  21.                                 <Value>CESHI123</Value>
  22.                         </Data>
  23.                 </LocalizationResource>
  24.                 <LocalizationResource Language="ja">
  25.                         <Data>
  26.                                 <Name>TextBox1.Value</Name>
  27.                                 <Value>こんにちは</Value>
  28.                         </Data>
  29.                         <Data>
  30.                                 <Name>Chart1.Header.Title</Name>
  31.                                 <Value>こんにちは</Value>
  32.                         </Data>
  33.                         <Data>
  34.                                 <Name>TextBox2.Value</Name>
  35.                                 <Value>こんにちは</Value>
  36.                         </Data>
  37.                 </LocalizationResource>
  38.                 <LocalizationResource Language="zh-CN">
  39.                         <Data>
  40.                                 <Name>TextBox1.Value</Name>
  41.                                 <Value>你好</Value>
  42.                         </Data>
  43.                         <Data>
  44.                                 <Name>TextBox2.Value</Name>
  45.                                 <Value>你好</Value>
  46.                         </Data>
  47.                         <Data>
  48.                                 <Name>Chart1.Header.Title</Name>
  49.                                 <Value>图表标题</Value>
  50.                         </Data>
  51.                 </LocalizationResource>
  52.                 <LocalizationResource Language="zh">
  53.                         <Data>
  54.                                 <Name>Chart1.Plot1.AxisX.Title</Name>
  55.                                 <Value>Category</Value>
  56.                         </Data>
  57.                         <Data>
  58.                                 <Name>Chart1.Plot1.AxisY.Title</Name>
  59.                                 <Value>Value</Value>
  60.                         </Data>
  61.                 </LocalizationResource>
  62.                 <LocalizationResource Language="ja-JP">
  63.                         <Data>
  64.                                 <Name>TextBox1.Value</Name>
  65.                                 <Value>こんにちは</Value>
  66.                         </Data>
  67.                         <Data>
  68.                                 <Name>TextBox2.Value</Name>
  69.                                 <Value>こんにちは</Value>
  70.                         </Data>
  71.                         <Data>
  72.                                 <Name>Chart1.Header.Title</Name>
  73.                                 <Value>こんにちは</Value>
  74.                         </Data>
  75.                 </LocalizationResource>
  76.         </dd:LocalizationResources>
复制代码



5. 我们可以切换报表的Language或语言属性查看效果,也可以在报表运行时动态修改当前报表语言,即可达到根据不同语言运行时修改资源的效果。


真的,坦诚的说,我被ActiveReports 这个强大的功能征服了。这简直就是隐藏的彩蛋~





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部