Если у вас есть два условия для запроса, давайте назовем их condition_a и condition_b, и если условие_a истинно, то вам все равно, что такое условие_b (вы игнорируете его). Вы можете обработать это в своем предложении WHERE с помощью ИЛИ, например:
select ...
from ...
where condition_a or condition_b
Чтобы игнорировать логическое условие, если поле (field1) пустое, это будет выглядеть как
select ...
from ...
where (field1 = '' or condition_a)
and condition_x
В этом случае, если field1 = blank, условие истинно независимо от того, что условие_a. Условие_x все еще должно быть оценено, но условие_а фактически игнорируется, если поле1 пусто. Но если поле field1 не пустое, то для выбора записи должна быть условие condition_a. Еще раз, условие_x должно быть оценено и также должно быть истинным.
Более конкретно для вашей ситуации:
select ...
from ...
where ...
and (trim (cltfst) || ' ' || (cltlst) is null or
(('LWSI:first_status')='(All)' or TRIM (status) in ('LWSI:status_list')))
Не совсем уверен, что все ваши короткие комбинации означают здесь, но этоигнорируется, если trim (cltfst) || ' ' || (cltlst) is null
.