【问题标题】:BIRT - Dynamic Master Page based on runtime dataBIRT - 基于运行时数据的动态母版页
【发布时间】:2012-12-07 13:45:11
【问题描述】:

我正在尝试部署一个可供多个组织使用的报告。这些组织中的每一个都希望在以下情况下在报告中显示其徽标:

logged_in_user.org_id = 'xxx' or 'yyy'.

我创建了一个不错的库,其中包含多个包含不同徽标的母版页。我无法确定的是,在我加载用户数据后,是否有动态选择在运行时将哪个母版页应用于报告,可能是在页面的 initialize() 方法中。

我想出了如何使用以下方法获取母版页的句柄:

reportContext.getDesignHandle().findMasterPage("org_X_Master")

但我很难弄清楚如何将其设置为报告的母版页。任何帮助将不胜感激。

【问题讨论】:

    标签: birt


    【解决方案1】:

    我们有一个非常相似的问题。可能还有其他解决方案,但我们是这样解决的:

    将报告的全部内容(例如,reportX.rptdesign)移动到一个库(例如,reportX.rptlibrary)中。然后创建两个空白报告reportXxxx.rptdesign 和reportXyyy.rptdesign,具有不同的母版页。

    将整个布局从reportX.rptlibrary 拖到reportXxxx 和reportXyyy。

    只有初始化事件中的 Javascript 代码必须以这种方式复制,但您甚至可以将其移至外部 *.js 库。

    注意:这不是您确切问题的答案,因为您需要从您的应用程序中调用 reportXxxx 或 reportXyyy(因此决定发生在调用报告之前)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-04
      • 2010-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多