如何在 ActiveReports 11 中实现语言/区域性(尚不支持)?



我们已经有大量包含德语报表定义的.rpx文件。我们使用脚本将一些文本翻译成罗曼什语(<1%的人口使用的瑞士官方语言(,但有人要求这样做。
现在的愿景是用法语和意大利语创建报告。然而,我们很清楚当前的脚本编写方法如下:

if (txtSprache.Text == "RM")
{
lblAbonnentenNr.Text = "Abo-nr.:";
lblAbrechnungVon.Text = "Quen dils:";
lblBis.Text = "  -";
lblZahlbarBis.Text = "Pagabel tochen:";
lblObjekt.Text = "Object:";
lblRechnungsNr.Text = "Nr. dil quen:";
lblRechnungsdatum.Text = "Datum da quen:";
lblERechnungsID.Text = "ID";
lblAbonnent.Text = "Abonnent";
}

不太适合那个。我被要求为 I18n 支持创建选项。引自AR11文档:

在设计时本地化报表
1. 单击设计图面周围的灰色区域以在"属性"窗口中选择报表。 2. 在"属性"窗口中,下拉"区域性"或"语言"属性,然后选择要应用于报表的区域性。

旧的默认值是:(默认,继承(,我知道将其更改为德语(瑞士(。我找不到任何区别,C:Program Files (x86)GrapeCityActiveReports 11Localization下没有新东西,在 xml 中的其他地方也没有。

如何为当前报表及其标签添加新的语言表/值?
如何添加尚不存在的区域性?(在最坏的情况下,我会使用任何本地语并将其用作罗曼什语,因为只能使用德语、意大利语、法语和不太可能的英语(

文档中提到的 Language 属性仅适用于基于代码的模板。通过此属性设置新语言时,VSID 会创建其他资源文件,例如 myreport.jp-JP.resx。 在这种情况下,编译的报告将根据 CurrentThread.CurrentUICulture 值上传所需的资源。它不适用于 RPX(基于 xml(的模板。 因此,如果要使用此功能,则需要将基于 xml 的模板转换为基于代码的模板。

文化属性仅有助于指定输出格式功能的区域设置(例如转换为货币(。

对于RPX模板本地化,我认为您可以将外部本地化资源文件与当前的脚本方法相结合,我的意思是在脚本中加载资源文件并更新报告项。

谢谢

最新更新