2012-10-17 100 views
2

在Crystal Reports 2008中,我有一個包含arg_beg_date和arg_end_date參數的主報告。我想將這些傳遞給子報表,但一直未能。子報表有一個帶有SQL查詢的命令 - SELECT * FROM TXFR保持簡單。我在名爲beg_date和end_date的子報表中創建了兩個參數,然後將WHERE TXFR_DATE BETWEEN {?BEG_DATE}和{?END_DATE}添加到查詢中。我嘗試更改子報表鏈接,在可用字段中查找arg_beg_date,然後單擊「>」將其移動到字段以鏈接到框。Crystal Reports 2008無法將參數鏈接到子報表

此時,我只能在「Subreport parameter field use to」框中看到?Pm-?arg_beg_date和「Parameter Fields」作爲選項。我無法將主報告中的arg_beg_date鏈接到我在子報告中創建的beg_date參數。

我在另一個問題中看到有人建議選中「選擇基於字段的子報表日期」框並選擇「報表字段」,但我無法這樣做。它只是突出顯示並選擇框中下方的字段。

任何想法?

回答

3

我最近建立了同樣的報告,其中Subreport是一個命令行。我還沒有寫出一個過程,但是這是如果參數從主報告傳遞到子報告時參數的外觀。

在你的報表SQL中,參數必須是這個

WHERE TXFR_DATE BETWEEN {? - 下午?arg_beg_date}和{? - 下午?arg_end_date}

然後在你的參數列表,創建

  • - 下午?arg_beg_date
  • - 下午?arg_end_date

在你的主報告,更改子報表鏈接...

  1. 添加?arg_beg_date參數
  2. 確保「基於現場報表數據中選擇」是沒有選
  3. 待辦事項arg_end_date參數相同

如果您想傳遞一個字段而不是參數並且您在主報表中使用命令,與上面相同的步驟,但看起來像這樣。

子報表SQL

{?PM-Command.FieldName}

參數列表

PM-Command.FieldName

0

我想通了,我在做什麼錯。參數未顯示在要鏈接的列表中,因爲類型不匹配。我的主要報告中的參數類型是DateTime,而我的子報告中的類型是Date。他們必須完全匹配。

感謝您的幫助。

相關問題