3단원: 사용 가능한 값 목록을 사용하여 단일 값 매개 변수 추가

새 설치: 2006년 7월 17일

사용 가능한 값 또는 유효한 값은 보고서를 읽는 사람에게 보고서 매개 변수에 대한 가능한 값 목록을 제공합니다. 보고서 작성자로서 데이터 원본의 값 집합을 검색하도록 특별히 설계된 쿼리로부터 유효한 값을 제공하거나 미리 정의한 값 집합을 제공할 수 있습니다. 보고서가 처리될 때 실행되는 데이터 집합 쿼리에 사용 가능한 값 집합을 바인딩하여 데이터베이스에 있는 값만 드롭다운 목록에서 선택할 수 있는지 확인합니다.

이 단원에서는 AdventureWorks 데이터베이스의 사용 가능한 영업 사원 이름의 드롭다운 목록을 표시하도록 Sales Orders 보고서를 수정합니다. 선택한 매개 변수 값에 대한 결과 집합에 행이 없는 경우 메시지를 표시하도록 테이블 속성을 설정합니다. 이름을 선택하여 보고서를 검토하는 경우 보고서에 해당 영업 사원에 대한 판매액만 표시됩니다.

Sales Orders 보고서를 열려면

  1. SQL Server Business Intelligence Development Studio에서 이전 단원에서 만든 Tutorial Report Server 프로젝트를 엽니다.

  2. 솔루션 탐색기에서 Sales Orders 보고서를 두 번 클릭합니다. 보고서가 레이아웃 뷰에서 열립니다.

  3. 데이터 탭을 클릭합니다.

쿼리 매개 변수를 AdventureWorks 데이터 집합 쿼리에 추가하려면

  1. 데이터 탭의 데이터 집합 드롭다운 목록에서 AdventureWorks를 선택합니다.

  2. 쿼리에 새 쿼리 매개 변수인 @SalesPersonID를 추가합니다. 쿼리에서 WHERE 절을 확장하여 비교 AND S.SalesPersonID = (@SalesPersonID)를 포함합니다.

    기존 쿼리를 다음 텍스트로 바꿉니다.

    SELECT S.OrderDate, DATENAME(weekday, S.OrderDate) as Weekday,
        S.SalesOrderNumber, S.TotalDue, C.FirstName, C.LastName, 
        C.ContactID
    FROM    HumanResources.Employee E INNER JOIN
            Person.Contact C ON E.ContactID = C.ContactID INNER JOIN
            Sales.SalesOrderHeader S ON E.EmployeeID = S.SalesPersonID
    WHERE
        (
        S.OrderDate BETWEEN (@StartDate) AND (@EndDate) 
        AND
        S.SalesPersonID = (@SalesPersonID)
        )
    

    [!참고] 쿼리 매개 변수를 묶는 괄호는 쿼리 구문의 중요한 부분입니다.

  3. 실행(!) 단추를 클릭합니다. 쿼리 매개 변수를 입력하라는 메시지가 표시되면 다음 표를 사용하여 값을 입력합니다.

    @StartDate

    20010101

    @EndDate

    20030101

    @SalesPersonID

    286

  4. 확인을 클릭합니다. SalesPersonID = 286인 영업 사원 Ranjit Varkey Chudakatil에 대한 결과 집합이 나타납니다.

  5. (옵션) 쿼리 매개 변수 @SalesPersonID에 값 =Parameters!SalesPersonID.Value가 있는지 확인합니다. 선택한 데이터 집합 편집() 단추를 클릭하고 매개 변수 탭을 선택합니다.

  6. (옵션) 보고서 매개 변수 SalesPersonID가 자동으로 생성되었는지 확인합니다. 보고서 메뉴에서 보고서 매개 변수를 선택합니다. 보고서 매개 변수 대화 상자가 열립니다. SalesPersonID매개 변수 창에 있는지 확인합니다. 이 항목의 이후 절차에서 이 매개 변수를 편집합니다.

    다음 절차에서는 보고서 매개 변수 SalesPersonID의 사용 가능한 값 드롭다운 목록에 대한 값을 제공하는 별도의 데이터 집합을 만듭니다.

사용 가능한 값에 대한 SalesPersons 데이터 집합을 만들려면

  1. 데이터 집합 드롭다운 목록에서 <새데이터 집합>을 선택합니다. 데이터 집합 대화 상자가 열립니다.

  2. 새 데이터 집합에 사용할 이름을 제공합니다. 이름 필드에 SalesPersons를 입력합니다. 이 데이터 집합은 유효한 값 목록에 대한 입력으로 사용됩니다.

  3. 다음 Transact-SQL 쿼리를 쿼리 창에 붙여 넣습니다.

    SELECT SP.SalesPersonID, C.FirstName, C.LastName
    FROM   Sales.SalesPerson AS SP INNER JOIN
         HumanResources.Employee AS E ON E.EmployeeID = SP.SalesPersonID INNER JOIN
         Person.Contact AS C ON C.ContactID = E.ContactID
    
  4. 실행(!) 단추를 클릭합니다. SalesPersonID, FirstNameLastName 열이 결과 집합에 나타나고 SalesPersons 데이터 집합에 필드로 나타납니다.

    SELECT 문에 LastName + N' ' + FirstName as Name을 열로 추가하는 등 계산 필드를 쿼리에 추가할 수 있지만 Reporting Service에서 기존 데이터 집합 필드로부터 새 계산 필드를 만들 수 있습니다. 미리 정의된 열 집합을 검색하는 저장 프로시저를 쿼리에서 사용할 때 이 기능을 사용할 수 있습니다. 다음 절차에서는 두 개의 기존 필드를 결합하는 데이터 집합에 대한 새 필드를 만듭니다.

새 계산 데이터 집합 필드를 추가하려면

  1. 데이터 집합 창에서 SalesPersons 데이터 집합을 마우스 오른쪽 단추로 클릭한 다음 추가를 선택합니다.

    데이터 집합 창이 열리지 않는 경우 Alt+Ctrl+D를 누릅니다.

  2. 이름 입력란에 Name을 입력합니다.

  3. 계산 필드 옵션을 선택합니다.

  4. 다음 식을 텍스트 상자에 붙여 넣습니다.

    =Fields!LastName.Value + ", " + Fields!FirstName.Value
    
  5. 확인을 클릭합니다.

    데이터 도구 모음에서 필드 새로 고침을 클릭합니다. 새 필드 Name이 데이터 집합 SalesPersons에 대한 필드 컬렉션에 표시됩니다.

    다음 절차에서는 테이블 데이터 영역 속성인 NoRows를 설정합니다. 테이블과 연결된 데이터 집합에 대해 검색된 데이터에 결과가 없는 경우 이 속성의 텍스트가 표시됩니다.

NoRows 메시지를 테이블에 추가하려면

  1. 레이아웃 탭을 클릭하여 레이아웃 뷰로 변경합니다.

  2. 보기 메뉴에서 속성 창을 선택합니다.

  3. 속성 창의 개체 드롭다운 목록에서 테이블을 선택합니다. 기본적으로 이 테이블 이름은 table1입니다.

  4. 속성 창에서 NoRows로 스크롤합니다.

  5. NoRows 옆의 입력란을 클릭하고 다음 텍스트를 입력합니다.

    No results available for this combination of parameters.

    특정 쿼리 매개 변수에 대한 결과 집합이 전혀 행을 생성하지 못하는 경우 이 메시지가 표시됩니다.

  6. (옵션) 미리 보기를 클릭합니다. SalesPersonID 매개 변수에 1을 입력합니다. NoRows 메시지가 테이블 데이터 영역 대신 나타납니다.

    다음 절차에서는 자동으로 생성된 보고서 매개 변수 SalesPersonID를 편집합니다. 보고서 속성을 설정하여 데이터베이스 식별자 대신 사용 가능한 값 드롭다운 목록에 영업 사원의 이름을 표시합니다.

보고서 매개 변수 SalesPersonID의 속성을 설정하려면

  1. 보고서 메뉴에서 보고서 매개 변수를 선택합니다. 보고서 매개 변수 대화 상자가 열립니다. SalesPersonID 매개 변수가 매개 변수 창에 나타납니다.

  2. 데이터 형식 드롭다운 목록에서 Integer를 선택합니다.

  3. 프롬프트 입력란에 **Select Sales Person:**을 입력합니다.

  4. 사용 가능한 값 섹션에서 쿼리 사용을 선택합니다.

  5. 데이터 집합 드롭다운 목록에서 SalesPersons를 선택합니다.

  6. 필드에서 SalesPersonID를 선택합니다.

  7. 레이블 필드에서 Name을 선택합니다.

    이제 SalesPersonID 매개 변수에 대한 유효한 값의 드롭다운 목록에 SalesPersonID 대신 각 영업 사원의 이름이 표시됩니다.

  8. 기본값 섹션에서 쿼리 사용을 선택합니다.

  9. 데이터 집합 드롭다운 목록에서 SalesPersons를 선택합니다.

  10. 필드에서 SalesPersonID를 선택합니다.

  11. 확인을 클릭합니다.

  12. 미리 보기 탭을 클릭합니다. 보고서에 영업 사원 이름이 있는 드롭다운 목록이 표시됩니다.

다음 단계

단일 값 매개 변수를 기존 보고서에 성공적으로 추가했습니다. 다음 단원에서는 DayoftheWeekSalesOrderID 매개 변수를 수정하여 다중값이 되도록 합니다. 4단원: 모두 선택 옵션을 사용하여 다중값 매개 변수 추가를 참조하십시오.

참고 항목

관련 자료

Reporting Services의 매개 변수 작업
단일 값 및 다중값 매개 변수 사용
식에서 매개 변수 사용

도움말 및 정보

SQL Server 2005 지원 받기