2012-07-24 103 views
2

我正在使用Crystal Reports 2008.具有空值的Crystal Reports公式

我遇到的問題是獲取公式的語法正確。

該報告按客戶分組。我有2個命令。第一個將始終有價值,但第二個對一些客戶有價值,但不是全部。

我需要做的是編寫一個公式,只使用第一個命令的值,如果第二個命令沒有該客戶的值。如果第二個命令確實有一個值,那麼它應該採用命令1和2之和。

我已經嘗試過這樣的:

IF ISNULL({Command_2.fin_bal_60}) THEN 

    {Command_1.inv_bal_60} 

ELSE 

    {Command_1.inv_bal_60} + {Command_2.fin_bal_60} 

這不工作,因爲當我把它改成了報告那隻能說明在command_2值的記錄。

我想知道如何寫這個,即使command_2沒有返回它只是使用command_1的值。

對此的任何幫助將是偉大的。

在此先感謝。

+0

愚蠢的問題:你爲什麼使用兩個Command對象?你如何加入這兩個命令?在單個Command對象中構建查詢不是更容易嗎? – craig 2012-07-24 21:03:57

回答

1

該公式似乎是正確的,所以你不必看那裏。

我認爲問題出在您鏈接表「Command_2」(菜單[數據庫,數據庫專家])的方式。假設它是一個外部表格,當您將鏈接類型從「INNER JOIN」更改爲「LEFT OUTER JOIN」(雙擊鏈接線以更改設置)時,您可能有很好的機會解決此問題。

如果您不使用表中的字段,則Crystal Reports會忽略該表並且不會在基礎SQL查詢中使用該字段。所以,在這種情況下,這個問題不會發生。這就解釋了爲什麼只有當您將公式字段放入報表中時纔會出現這種情況,然後您使用「Command_2」表。