2014-10-27 65 views
0

我試圖根據一個參數創建一個公式,該公式將允許用戶選擇供應商品的描述,或者如果沒有選擇拉出所有值。還希望能夠給他們一個參數,允許他們使用「like」選項鍵入描述的任何部分。我可以讓公式的第一部分工作,但不是第二部分。它正確地拉一個輸入的項目,或者如果沒有輸入,它會返回所有的值。任何超過第一個「或」的行爲都不起作用。我應該爲第二部分創建一個單獨的參數還是可以使用同一個參數?如何在Crystal Reports 2008中使用「like」運算符使用參數

IF HASVALUE ({?DESCR}) THEN{Command.DESCRIPTION} = {?DESCR} else true 
or 
    (UPPER({Command.DESCRIPTION}) LIKE "*" + UPPERCASE({?DESCR}) + "*") 
    OR 
    (UPPER({Command.DESCRIPTION}) LIKE "*" + UPPERCASE({?DESCR}) + "*") 

回答

1

在一定程度上我理解你的要求,你不需要if後任何東西,因爲雖然你給單個字符或字符串你HASVALUE ({?DESCR})返回true ...因此你可以修改你的公式

IF HASVALUE ({?DESCR}) 
THEN{Command.DESCRIPTION} LIKE "*" + {?DESCR} + "*" 
else true 

如果需要,您可以使用UPPERCASE

編輯:

IF HASVALUE ({?DESCR}) 
THEN {Command.DESCRIPTION} LIKE "*" + {?DESCR} + "*" 
ELSE IF HASVALUE({?NIIN}) 
THEN {Command.NIIN} = {?NIIN} 
ELSE IF HASVALUE({?CLASS}) 
THEN {Command.CLASS} = {?CLASS} 
else TRUE 
+0

如果我有公式幾個可選的可變因素看我怎麼會寫這包括他們所有?我會使用其他如果或或?我輸入了這個,但它沒有返回一個錯誤,但是當提示我沒有得到一個項目。我認爲這與其他參數有關。這裏是我的記錄選擇公式:IF HASVALUE({?DESCR}) THEN {Command.DESCRIPTION} LIKE「*」+ {?DESCR} +「*」 如果 HASVALUE({?NIIN})THEN {Command。 NIIN} = {?NIIN} ELSE IF hasValue的({?CLASS})則{Command.CLASS} = {?CLASS} 其他TRUE – Pam 2014-10-28 16:27:59

+0

您可以編輯所有的變量你的問題? – Siva 2014-10-28 16:29:14

+0

你的記錄選擇公式是正確的,但一個小的變化,我已經在我的答案中加入它..檢查並讓我知道 – Siva 2014-10-28 16:35:46

相關問題