Соединение OLE DB в SSRS не нравится, когда параметры повторяются - PullRequest
0 голосов
/ 14 февраля 2019

Я изменяю отчет SSRS на основе Oracle, и у меня возникают всевозможные проблемы с параметрами.

Соединение с Oracle - OLE DB.

Мой код ничего не делаетсложно.Я только добавил в новый параметр.Когда у меня есть только один экземпляр указанного параметра, он работает без проблем.Как только я добавляю его снова, он взрывается.

Я пытаюсь показать записи, если у параметра есть совпадение.Если нет совпадений, показать все записи.

Я могу выполнить оба запроса в DBVisualizer без каких-либо проблем.

Это то, что я сделал

WHERE FieldName = nvl(:parameter, FieldName)

Этот не делаетне возвращает те же результаты, что и ниже

WHERE FieldName = :parameter 
   OR :parameter IS NULL

Проблема в том, что второе предложение WHERE не будет работать в SSRS с подключением OLE DB.К сожалению, мы не можем использовать другой менеджер соединений.

РЕДАКТИРОВАТЬ: Благодаря Ганноверу Фисту, я смог заставить это работать, выполнив это

Я изменил свое предложение WHERE на

WHERE FieldName = :parameter
   OR :parameter2 IS NULL

Затем сопоставил параметр2, чтобы извлечь из того же параметра SSRS, что и исходный параметр

Using 2 parameters in Oracle and mapping them to 1 SSRS

1 Ответ

0 голосов
/ 15 февраля 2019

Я не нашел хорошего решения этой проблемы, но я обошел его, объявив параметр в Oracle SQL и сопоставив его с параметром SSRS.

Затем используйте параметр, созданный в Oracle SQL, в оставшейся части запроса.Таким образом, вы будете использовать каждый параметр SSRS только один раз.

...