2011-02-25 131 views
1

我使用Crystal Reports 10插入缺失日期,水晶報表

在我的數據庫,我爲每個生產日期值。有一個日期欄和一個數字欄。當我對此運行報告時,報告中的日期與數據庫中的日期相對應,但我希望報告顯示每個日期,並且如果沒有值爲0,這是否可以正確執行報告?

日期是一個細節受到抑制的組字段。數值是放置在組頭中的細節的總和,如果這有所不同。

enter image description here

enter image description here

回答

1

你有2個問題。

  1. 爲空值顯示爲0,你可以進入你的選項菜單和「轉換數據庫NULL值設置爲默認」
    或者,你可以用make這個代碼的新公式,使用if isnull({Table1.Amount}) then 0 else {Table1.Amount}。我建議使用此選項,因爲它不會影響報告中的其他字段。

  2. 要顯示日期,您應該在您的數據源中創建一個「助手/索引」表,並將您的實際數據加入它。如果沒有任何記錄,Crystal將無法顯示01/07/2010的數據。

+0

我無法更改數據庫中的任何內容。我在這裏發現了這個:http://www.tek-tips.com/viewthread.cfm?qid=1323926&page=392但是這些說明有點太複雜,無法適應我的需求。它確實表明我可以使用Crystal來添加數據庫中缺少的日期。 – Wesley

+0

(我不能爲你找到的其他線索說話,它可能有效,可能不會)。幸運的是,Crystal接受來自多個不同數據庫的輸入。因此,在Access數據庫或甚至Excel文件中創建「幫助者」表。這個輔助表將作爲你的報告的'索引',也就是說其他所有的東西都是正確的加入它。一旦這些日期在那裏,使用報表選擇公式編輯器來限制它只是感興趣的日期,即2010年的所有日期。 – PowerUser

+0

我試過使用助手錶路由。我製作了一個excel電子表格,並將其添加到我的報告並鏈接了字段。但是,右外連接變灰。我在我的問題中添加了一張圖片來說明我目前的設置。在閱讀關於連接後,它看起來左連接也應該工作,但事實並非如此。報告中出現的唯一日期是原始數據庫中的日期。電子表格中的「額外」並未出現。 – Wesley