2014-10-27 4 views
0

Я пытаюсь создать формулу на основе параметра, который позволит пользователю выбрать описание элемента поставки или если ни один не выбран для потяните все значения. Также хочу иметь возможность указать им параметр, который позволяет им вводить любую часть описания с помощью опции «как». Я могу получить первую часть формулы для работы, но не вторую часть. Он правильно вытаскивает напечатанный элемент или если он не вводится, он возвращает все значения. Все, что прошло после первого «или», не работает. Должен ли я создать отдельный параметр для второй части или я могу использовать тот же самый?Как использовать «похожий» оператор в Crystal Reports 2008 с использованием параметра

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}) возвращают истинный ... следовательно, вы можете изменить вашу формулу

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

вы можете использовать UPPERCASE если потребуется.

Edit:

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

Если у меня есть несколько дополнительных varibles для формулы, чтобы смотреть на то, как бы я это пишу, чтобы включить их все? Будет ли я использовать else if или OR? Я ввел это, и он не вернулся с ошибкой, однако, когда мне было предложено, я не получаю один элемент. Я думаю, что это имеет какое-то отношение к другим параметрам. Вот моя формула выбора записи: IF HASVALUE ({? DESCR}) THEN {Command.DESCRIPTION} LIKE "*" + {? DESCR} + "*" ELSE IF HASVALUE ({? NIIN}) THEN {Command. NIIN} = {? NIIN} ELSE IF HASVALUE ({? CLASS}) THEN {Command.CLASS} = {? CLASS} еще TRUE – Pam

+0

Вы можете изменить свой вопрос со всеми переменными? – Siva

+0

Ваша формула выбора записей правильная, но небольшое изменение я добавил в мой ответ .. проверьте и дайте мне знать – Siva