2016-06-14 2 views
0

У меня возникла проблема с результатом формулы ниже в отчетах о кристаллах. Из-за типа соединения есть случаи, когда таблица «CustomerLocation» может быть нулевой. Чтобы исправить это, я построил формулу ниже, чтобы вернуть поле, которое является допустимым, если таблица Location имеет значение null. Я проверил, что поле Customer.CustomerName имеет значение, и просто перетаскивание поля в отчет показывает, что это так. Почему я всегда возвращаю пустую строку из этой формулы?Формула Crystal Reports isAllways Empty

if {CUSTOMER.ID#} = 2075 or {CUSTOMER.ID#} = 2454 then 
(
    {tblOrderHeader.BillName} 

) 
else if {CUSTOMERLOCATION.Customer Name} = "" or IsNull({CUSTOMERLOCATION.Customer Name}) = true then 
( 
{CUSTOMER.CustomerName} 
)  
else 
(
{CUSTOMERLOCATION.Customer Name} 
) 
+2

Попробуйте вместо этого - 'если {CUSTOMERLOCATION.Customer Name} = "" или IsNull ({CUSTOMERLOCATION.Customer Name}), то ({CUSTOMER.CustomerName}) еще, если {КЛИЕНТ .ID #} в ['2075', '2454'], затем ({tblOrderHeader.BillName}) else ({CUSTOMERLOCATION.Customer Name}) '- синтаксис вашей формулы выглядит корректно. Я обнаружил, что поведение может меняться в зависимости от того, какое условие оценивается первым. – Aron

+0

Спасибо! Это было исправить, сумасшедший, так как небольшая настройка в порядке решает это. Я не могу отметить ответ, но спасибо за решение. – HighARc

ответ

0

если {CUSTOMERLOCATION.Customer Имя} = "" или IsNull ({CUSTOMERLOCATION.Customer Имя})

затем ({CUSTOMER.CustomerName})

еще, если {КЛИЕНТ .id #} в [ '2075', '2454']

затем ({}) tblOrderHeader.BillName

еще ({CUSTOMERLOCATI ON.Customer Name})

Смежные вопросы