*해결책: 매개변수 다중값 선택하기 체크, CountRows Join 함수 활용
*Step1. 매개변수로 선택할 데이터셋 추가하기
1.새로운 데이터 집합 추가
a.저장 프로시저 생성
CREATE PROCEDURE DBO.UP_GET_CATEGORY_PARAMETA AS BEGIN SELECT DISTINCT NAME FROM [PRODUCTION].[PRODUCTCATEGORY] AS PC WITH(NOLOCK) END |
b. 보고서 데이터 탭 > 데이터 집합 > 마우스 우클릭 > 데이터 집합 추가


c. 데이터 집합 속성 > 쿼리 > 이름: 데이터 집합 이름 명명하기
d. 내 보고서에 포함된 데이터 집합 사용 선택
e. 데이터 원본 > 저장함수가 저장된 데이터 원본 선택
f. 쿼리 유형 > 저장 프로시저 선택
g. 생성한 프로시저 선택


2. 두번째 데이터 집합 추가
a. 저장 프로시저 생성
CREATE PROCEDURE DBO.UP_GET_YEAR_PARAMETA AS BEGIN SELECT DISTINCT DATEPART(YEAR,[ORDERDATE]) AS YEAR FROM [SALES].[SALESORDERHEADER] AS A WITH(NOLOCK) ORDER BY 1 END |
b. 동일한 방법으로 데이터 집합 추가 ( year_parameta )


3. 새로운 매개변수 추가
a. 보고서 데이터 탭 > 매개변수 > 마우스 우클릭 > 매개변수 추가


b.보고서 매개변수 속성 > 일반 > 이름: 매개변수 이름 작성
c.프롬프트: 매개변수를 설명하는 글 작성
d. 다중 값 허용
e. 매개변수 표시여부 선택 > 표시


f. 사용 가능한 값 탭 > 쿼리에서 값 가져오기 선택
g. 데이터 집합 에서 생성한 데이터집합 선택
h. 원하는 값필드, 레이블 필드 선택


4. 2번째 매개변수 생성
a. 동일한 방법으로 매개변수 생성 ( rp_year )




5. 선택한 매개변수를 표시할 입력란 추가
a. 첫번째 입력란 추가
b. 식에 아래 명령어 입력
=IIF(Parameters!rp_category.Count = CountRows("category_parameta"),"ALL",Join(Parameters!rp_category.Label,", ")) |
* 모든 매개변수를 선택했을때 ALL 출력, 각 매개변수 사이에는 ", " 추가
c. 두번째 입력한 추가
d. 식에 아래 명령어 입력
=IIF(Parameters!rp_year.Count = CountRows("year_parameta"),"ALL",Join(Parameters!rp_year.Label,", ")) |
6. 결과








댓글 없음:
댓글 쓰기