我已經創建了一個靜態html頁面(稱爲start.jsp),其中包含一個表單,其中用戶選擇2個日期範圍,並且此表單具有這些文本框的日期選擇器。當用戶提交 表單時,應該將它們帶到我設計的BIRT報告中。它應該 傳遞我的報告需要的2個參數(開始日期和結束日期)。如何通過查詢字符串將日期值傳遞給BIRT報告
這裏是一個被附加到URL BIRT查看器/ run__report = Business_Activity_Monitoring.rptdesign & FilterStartDate = 2000-01-01 & FilterEndDate = 2009-01-01
我得到一個無效的查詢字符串日期錯誤: org.eclipse.birt.report.exception.ViewerValidationException:參數「FilterStartDate」無效。值「06-08-2010」對於類型「dateTime」無效。
這是怎麼回事,如果我完全刪除查詢字符串,那麼BIRT會提示我輸入 開始日期和結束日期(附加屏幕截圖)。 我輸入了與表單試圖發送的完全相同的數據,它的工作原理!?
這證明我的日期字符串格式正確,但如果它們 通過查詢字符串發送到BIRT報告,它將不會接受它們?似乎它有一個問題,即 事實上,它首先是一個字符串。
我已在我的BIRT報告中正確設置了這些報告參數。我也嘗試通過指定「格式爲」值爲「自定義」YYYY-MM-dd來更改它們 ,但此操作無效。
它甚至可以通過查詢字符串發送日期參數給birt報告嗎?
我猜測解決方案將涉及將這些字符串轉換爲birt報告的「腳本」選項卡中的日期。 但我不知道如何從這裏訪問查詢字符串變量或如何設置報告 參數變量。
感謝 -Tommy
謝謝MystikSpiral - 自從我的文章,我自己解決了這個問題,修復是與你提到的有關。我的報告參數是數據類型「日期時間」,我實際上已將其更改爲字符串。 解決了這個問題。我的數據集中的SQL查詢可以接受一個字符串作爲參數 - 只要它格式化爲MySQL的日期格式即可。 – Tommy 2010-06-16 10:36:57