2014-11-28 4 views
1

Я пытаюсь создать Crystal Report с указанием контактных данных MAIN и ALTERNATE для наших клиентов.Значения NULL в Crystal Reports

Все работает нормально, если у клиента есть оба типа адресов (т. Е. MAIN и ALTERNATE), но ни один отчет не появляется вообще для клиентов, у которых есть только основной адрес. Итак, чтобы подвести итог, у всех клиентов будет ГЛАВНЫЙ адрес, но только некоторые из них будут MAIN и ALTERNATE.

Мне нужно получить отчет для печати листов для всех клиентов, где или не второй адрес (в нашем случае в нашей базе данных как Addresses2.AddressType есть ALTERNATE или NULL).

Моя формула выбора показана ниже:

{SubscriptionMembers.Current} and 
{Categories.CategoryType} = "M" and 
{SubscriptionMembers.MainSubscription} and 
{Addresses.AddressType} in ["MAIN"] and 
{Addresses2.AddressType} in ["ALTERNATE"] and 
{Addresses.Country} = "United Kingdom" and 
not {SubscriptionMembers.Lapsed} and 
not {Contacts.Deleted} 

ответ

0

Я бы рекомендовал использовать SQL Expression Field, содержащий что-то вроде (IsNull ({Addresses2.AddressType}, 'ДРУГОЕ')) и использовать это поле в записи формула выбора - таким образом, вы не будете зависеть от параметров отчета об обработке значений NULL и т. д.

-1

Поскольку вам нужно получить клиента в любом случае, тогда один из способов не будет принимать адрес в формуле выбора записи. Вместо того, чтобы создать формулу, чтобы проверить нуль для ADDRESS2

If isnull ({Addresses2.AddressType} in ["ALTERNATE"]) then your code Else If (Addresses.AddressType} in ["MAIN"] or {Addresses2.AddressType} in ["ALTERNATE"]) Then your calculation

Таким образом, вы можете справиться легко

0

Потому что только некоторые из них «альтернативный адрес», формула выбора только собирается, чтобы показать клиентам с «основной» и «альтернативный».

Я предполагаю, что каждый клиент имеет главный адрес Путь я бы справиться с этим вынимают {Addresses2.AddressType} in ["ALTERNATE"] and и просто падение «альтернативные» адресные данные в том же разделе (группы) в качестве основного адреса.

Пока они правильно связаны, он отображает каждого клиента из ваших других параметров выбора, поэтому отобразит «main» и клиентов, у которых есть «альтернативный» адрес. Как это должно выглядеть:

Group - CustomerID

'MAIN' address details here    'ALTERNATE' address details here 

Group - Детали

'DATA' here 
Смежные вопросы