Javascript BIRT:从XML数据生成动态超链接

Javascript BIRT:从XML数据生成动态超链接,javascript,birt,Javascript,Birt,我有一个XML数据集,其值的格式如下: name value ----------|----------------| ip | 192.168.1.17 | port | 8080 | suburl | report1 | 现在我要把一个超链接,生成一个数据的组合 For example: http://192.168.1.17:8080

我有一个XML数据集,其值的格式如下:

        name        value         
    ----------|----------------|
       ip     | 192.168.1.17   |
       port   | 8080           |
       suburl | report1        |
现在我要把一个超链接,生成一个数据的组合

    For example: http://192.168.1.17:8080/birt/run?__report=test.rptdesign
我尝试了以下几点:

  • 创建了XML数据集的表。让它隐形
  • 在表onCreate上创建了以下脚本

    var index;
    myArray = new Array(10);
    for(index=0; index < myArray.length; index++) {
    myArray[index]=row['value'];
    }
    

  • 我认为所有数组元素似乎只包含表的第一行。

    根据您的描述,很明显:

    您正在循环10次,即
    myArray
    array的长度,用
    row['value']
    值填充数组的所有字段,在运行循环时,该值具有值
    192.168.1.17


    我不明白为什么需要用这种方式动态填充URL值,我相信有更简单的方法。

    我必须将birt报告集成到我们在jboss上运行的应用程序中。因此,html报告被嵌入到我们的页面中:服务器ip和jboss端口号可能会根据生产环境而改变。还有其他方法吗?我是从属性文件中获取JBossURL的。如果我理解正确,表的onCreate方法(脚本事件)是report script event for table as report display元素?一旦您在报告中,就没有必要生成报告URL->您已经在报告中了。在applicationOK中调用脚本之前,需要对其进行管理。这里的报告是一个摘要,类似于报告的仪表盘。有许多超链接,它们以弹出窗口的形式指向各个报告。我使用的是URI,因为钻取不适用于meOK,但不要像name/value那样构造数据集,而是像sourceX/server/port/report\u name那样构造数据集,这样可以避免出现问题(将所有数据存储在同一行中)。如果您想继续使用数据集来配置报表访问。。。
    But I'm getting the following result: http://192.168.1.17:192.168.1.17