Я изменяю отчет 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, что и исходный параметр