2014-11-08 58 views
1

生成一個動態的超鏈接我有下面的格式值的XML數據集:BIRT:從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 

我曾嘗試大意如下的內容:

  1. 創建的XML數據集的表。使其看不見。
  2. 上創建該表下面的腳本的OnCreate

    var index; 
    myArray = new Array(10); 
    for(index=0; index < myArray.length; index++) { 
    myArray[index]=row['value']; 
    } 
    
  3. 我使用的 「http://」 + myArray的[0] + 「:」 + myArray的[1]中的超級鏈接

    But I'm getting the following result: http://192.168.1.17:192.168.1.17 
    

我認爲所有的數組元素似乎只包含表的第一行。

回答

1

根據你所描述的很明顯:

你循環10次是myArray數組的長度,填補陣列的所有領域與當時正在運行循環具有價值192.168.1.17row['value']值。

我不明白你爲什麼需要以這種方式動態填充URL值,我相信有更簡單的方法。

+0

我必須將birt報告集成到我們在jboss上運行的應用程序。因此,html報告被嵌入到我們的頁面中,如下所示:http:// serverip:jboss-port/birt/run?__report = report1.rptdesign服務器ip和jboss端口號可能會根據生產環境而改變。你有沒有其他提到的方式? – MChiru 2014-11-10 06:54:52

+0

我從屬性文件中拾取jboss url – MChiru 2014-11-10 07:00:57

+0

如果我理解正確,表的onCreate方法(腳本事件)是將報表腳本事件作爲報表顯示元素作爲報表顯示元素?一旦您在報告中,就沒有必要生成報告網址 - >您已經在其中。您需要在應用程序 – Miki 2014-11-10 08:01:55