2014-01-16 179 views
13

我已經編寫了一個公式來基於在我的數據庫中的字符串字段上運行的邏輯返回一個字符串。我有一切工作,除了我無法返回時,該字段是空字符串。在Crystal Reports中檢查字符串是否爲空的公式

這就是我需要:

... 
else if ({TABLE.FIELD} = "") then 
    "Fixed" 
... 

然而,這個條目顯示在我的報告中的空字符串。我試過測試字段的長度爲0和StrCmp函數。似乎沒有任何工作。谷歌的結果表明,與「」或「」的簡單比較應該使邏輯起作用。我是CR新手,所以也許我錯過了一些東西。關於如何獲得此功能的任何想法?

+0

'但是,這個條目在我的報告中顯示爲空字符串。什麼是顯示?從您的描述中不清楚。 – LittleBobbyTables

+0

正在打印/返回空字符串。所有其他字段顯示正確的字符串(即固定)。 – user3203365

+0

自從我使用Crystal以來已經很久了,但是您確定它實際上是空的而不是'null'?如果我沒有記錯,Crystal在處理空值方面做得很差,而且必須先檢查它們;檢查該字符串是否爲空作爲第一次測試,並顯示「固定」,看看是否清除了事情。 – LittleBobbyTables

回答

35

您可以檢查IsNull情況。

If IsNull({TABLE.FIELD}) or {TABLE.FIELD} = "" then 
    // do something 
+4

雖然從答案中可以明顯看出,但由於Crystal Reports對處理空值有挑剔,所以您希望檢查「NULL」作爲第一次檢查。 – LittleBobbyTables

+0

在「/ /做什麼」我想設置某些文本,但它總是返回假而不是文字 – numerah

+0

嗨LittleBobbyTables,我想給你兩個大拇指! –

-1

如果ISNULL({TABLE.FIELD1})然後 「NULL」 + '' + {TABLE.FIELD2} 別的 {TABLE.FIELD1} + '' + {TABLE.FIELD2}

這裏我把NULL作爲字符串來顯示字符串值NULL,而不是數據字段中的空值。 希望你明白。