2014-09-23 4 views
0

Oracle을 쿼리하는 SSRS 2008에서 보고서를 작성합니다. 데이터 세트 쿼리에 3 개의 텍스트 매개 변수가 있습니다. 비워두면 모든 것을 포함해야합니다. 각 매개 변수에 값을 입력하면 보고서에서 값을 반환합니다. 그러나 빈 값을 그대로 두는 값 중 하나를 제거하는 즉시 보고서에서 아무 것도 반환하지 않습니다 (실제로 결과 행을 반환해야 함). 아래 검색어를 참조하십시오. 나는 지난 2 일 동안 인터넷에서 몇 가지 답변을 찾으려고 노력하면서 세션 세부 정보를 보았습니다. 운이 없었습니다. 감사합니다. 감사합니다.SSRS 선택적 매개 변수가 작동하지 않습니다.

where 
(:WI_NUM is NULL OR WI_NUM = :WI_NUM) 
and 
(:COMP_NUM is NULL OR COMPONENT_NUM = :COMP_NUM) 
and 
(:LOT_NUM is NULL OR LOT_NUM = :LOT_NUM) 

모든 매개 변수 데이터 형식 텍스트로 설정되어 공백이 널 (null)이 (쳤다되지 않음)을 허용하지 수 :

select WI_NUM , COMPONENT_NUM , LOT_NUM 
from CONS 
where 
(:WI_NUM = '' OR WI_NUM = :WI_NUM) 
and 
(:COMP_NUM = '' OR COMPONENT_NUM = :COMP_NUM) 
and 
(:LOT_NUM = '' OR LOT_NUM = :LOT_NUM) 

나는 또한하지만 같은 문제를 시도했다.

+0

매개 변수가 실제로 비어 있으면 안됩니다. 보고서의 매개 변수 값을 표시하거나 데이터 집합으로 가져 오 려 했습니까? 또한 매개 변수 값의 길이를 확인하여 여러 공백을 포함하지 않도록합니다. 필자는 오라클 데이터베이스와 함께 SSRS를 사용한 적이 없기 때문에 차이점이 있는지는 모르겠지만 코드가 나에게 잘 어울리는 것처럼 보입니다. –

+0

가능 [중복] (http://stackoverflow.com/questions/17681428/issue-with-oracle-bind-variables-not-using-index-properly/17702034) – tbone

+0

안녕하세요. parater가 비어 있는지 확인하는 데이터 세트를 만듭니다. WI_NUM이 NULL 일 때 1 ELSE 0 FIELD1 끝나고 parater가 비어있을 때 1을 표시하지만 보고서는 아무것도 반환하지 않습니다. 이것은 우울합니다. – wiciuo

답변

0

로 봐. 나는 처음부터 보고서를 작성하기로 결정했으며 곧바로 작업했습니다. 템플릿에 문제가있는 것 같습니다. 감사합니다. @ 마이크. D, @Aftab 및 @tbone에 대한 귀하의 제안은 모두 훌륭한 조언이었습니다.

0

시도해 볼 수 있습니까? 당신이 다중 값 매개 변수를 사용하는 경우

select WI_NUM , COMPONENT_NUM , LOT_NUM 
from CONS 
where 
WI_NUM =NVL(:WI_NUM, WI_NUM) 
and COMPONENT_NUM =NVL(:COMP_NUM, COMPONENT_NUM) 
and LOT_NUM =NVL(:LOT_NUM, LOT_NUM) 

이 보고서는 이전 보고서를 modyfying에 의해 구축했다 Optionla Multi-Value Parameter

+0

고마워, 그건 좋은 제안 이었지만, 나는 그것을 시도했고 결과는 같다. 링크에 관해서는 이미 시도한 IS NULL을 사용하고 있습니다. – wiciuo

+0

@wiciuo 데이터베이스에있는 WI_NUM, COMPONENT_NUM, LOT_NUM 필드에 대해 많은 NULL 값이 있습니까? – Aftab

+0

WI_NUM 또는 COMPONENT_NUM에는 NULL 값이 없다, LOT_NUM – wiciuo