Поле формулы Crystal Reports не работает, когда поле команды равно нулю - PullRequest
0 голосов
/ 26 марта 2012

Я создал отчет Crystal Report с полем команды

count(service_ID):

select count(service_ID) 
from inbound_service 
where service_ID={?Service_ID}

, и он возвращает правильные значения счетчика в соответствии с базой данных.

В основном отчете у меня есть поле формулы

@Service_ID:

if count(service_ID) =0 
then "ID Does not exists"
else {?Service_ID}

Это работает, если поле команды не равно 0, но неработает для count(service_ID) = 0.

Если я пытаюсь отобразить значение поля команды в отчете, он дает правильные значения для ненулевых значений, но ничего не показывает для значений 0.

1 Ответ

1 голос
/ 26 марта 2012

Если в БД нет ни одной строки, совпадающей с {? Service_ID}, то результирующий набор из вашей команды SQL будет пустым и не будет строк;это НЕ будет иметь место, что count (service_ID) = 0.Вместо этого вам придется использовать isnull(count(service_ID))

Редактировать: я упустил из виду тот факт, что у вас есть count () в самой команде SQL и что второй "count" относится к этому полюи не сводная функция Crystal.В этом случае должна быть возвращена одна строка со значением 0.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...