порядок ssrs в каждом случае isnull - запрос работает, ошибки ssrs - PullRequest
0 голосов
/ 29 октября 2018

Запрос работает и сортируется как надо.Но запрос ошибок, когда часть набора данных ssrs.Ошибки сужаются до порядка по выражениям, как показано на рисунке.Синтаксис принят.Первое сообщение об ошибке во время выполнения: «Произошла ошибка во время обработки отчета. (RsProcessingAborted)» Кнопка Details >> для всплывающего окна с ошибкой отображает ошибки try n ниже.

select  <columns>
from    <view>
where   <criteria>
order by 

> error condition - try 1
        -- errors "The isnull function requires 2 argument(s)."
        case when isnull(<parm>, '') <> '' 
             then <column to be sorted>
        end, 

> error condition - try 2
        -- errors "An expression of non-boolean type specified in a context where a condition is expected, near ..."
        case when (<parm> is not null  or 
                   <parm> <> '')
             then <column to be sorted>
        end, 

> error condition - try 3
        -- errors "An expression of non-boolean type specified in a context where a condition is expected, near ..."
        case when <parm> is not null 
             then <column to be sorted>
             when <parm> <> ''
             then <column to be sorted>
        end, 

        <more columns to sort>

1 Ответ

0 голосов
/ 01 ноября 2018

вариант 1: выполнить весь запрос как есть и вставить данные во временную таблицу. Затем вы можете сделать, если еще на основе выполнения на основе желаемого столбца порядка; сначала проверяя в операторе if нулевое значение в определенных столбцах, а затем запустив команду select с желаемым порядком. Вариант 2: позаботьтесь об этих нулях принудительным способом, то есть проверьте их перед тем, как вставлять во временную таблицу с ограничением isNull e.g. Col_1 = isnull(Col_1,'N/A'). Таким образом, у вас будет определенный способ фильтрации данных по «N / A». А затем выполните проверки на основе if-else для заказа. Вариант 2 легко QA i.m.o.

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