Reporting Services의 식 작업

새 설치: 2005년 12월 5일

Reporting Services에서 식을 사용하면 보고서의 내용과 모양을 융통성 있게 조정할 수 있습니다. 일부 식은 자동으로 생성됩니다. 예를 들어 새 보고서를 만들고 데이터 집합에서 보고서 항목으로 필드를 끌어다 놓으면 텍스트 상자의 값은 이름에 따라 데이터 집합 필드를 참조하는 식으로 자동 설정됩니다. 보고서를 처리하는 동안 각 식은 보고서가 렌더링될 때 해당 식을 대신하는 단일 값으로 계산됩니다. 식은 또한 보고서 정의 전체에서 보고서 항목 속성, 텍스트 상자 속성, 매개 변수, 쿼리, 책갈피, 문서 구조, 필터, 그룹 정의, 정렬 정의에 대한 값을 지정하거나 계산하는 데 사용됩니다.

텍스트 상자나 속성에 텍스트를 입력하거나 대화 상자를 통해 보고서 항목에 식을 만듭니다. 식은 Microsoft Visual Basic으로 작성됩니다. 식은 등호(=)로 시작하고 상수, 연산자, 함수, 기본 제공 보고서 전역 컬렉션(필드와 매개 변수 포함)에 대한 참조로 구성됩니다. 또한 .NET Framework 클래스, 사용자 지정 코드, 보고서 처리 외부의 어셈블리에 대한 참조를 만들 수 있습니다. 식을 만드는 방법은 Reporting Services에서 식 만들기를 참조하십시오.

이 항목에서는 보고서 정의에서 식을 사용할 수 있는 위치를 간략하게 설명합니다. 이 항목의 예는 기본 보고서 만들기 자습서에서 만든 AdventureWorks 데이터 집합을 기반으로 합니다. 예를 살펴보려면 Reporting Services의 식 예를 참조하십시오.

필드 식 사용

식을 사용하여 데이터 집합의 필드를 참조하고 해당 값을 텍스트 상자에 표시할 수 있습니다. 검색한 데이터를 보고서 항목에 연결하려면 필드 식에서 Fields 전역 컬렉션, 필드 이름 및 Value 속성을 사용해야 합니다.

  • 데이터 집합 창에서 보고서 항목으로 필드를 끌어다 놓으면 필드 식이 자동으로 텍스트 상자에 추가됩니다.

    =Fields!LastName.Value
    결과
    Reiter
    Reiter
    Saraiva
  • 여러 필드나 상수의 데이터를 결합할 수 있습니다.

    =Fields!FirstName.Value & " " & Fields!LastName.Value
    결과
    Tsvi Reiter
    Tsvi Reiter
    Jose Saraiva

식에서 사용할 수 있는 모든 참조 유형의 목록은 Reporting Services에서 식 만들기를 참조하십시오.

Reporting Services의 기본 제공 함수 사용

식을 사용하여 식에 있는 기본 제공 보고서 함수의 호스트를 참조할 수 있습니다. 기본 제공 함수에는 행 그룹의 값을 계산하는 데 사용되는 Sum, Min, Max, Count 등의 표준 집계 함수는 물론 모든 행에 값을 제공하기 위해 세부 행에서 사용할 수 있는 RowNumber, RunningValue 등의 함수까지 포함됩니다.

  • Count 집계 함수를 사용하여 SalesOrder라는 데이터 집합의 LastName 필드에 있는 성의 개수를 계산합니다. 테이블의 정보 행에 식을 배치할 수 있지만 모든 3,906개 행에 같은 값이 입력되어 있음을 알게 될 것입니다. 집계 함수는 세부 행을 요약하도록 설계되었으며 일반적으로 데이터 영역이나 데이터 영역 그룹의 머리글 또는 바닥글 행에 있는 텍스트 상자에서 사용됩니다.

    ="Number of Names: " & Count(Fields!LastName.Value)
    결과
    Number of Names: 3906
  • Sum 집계 함수를 사용하여 TotalDue 필드를 합산합니다. 이 함수는 테이블의 바닥글 행에 배치합니다. 값에 형식이 지정되어 있지 않습니다.

    ="Total Sold: " & Sum(Fields!TotalDue.Value)
    결과
    Total Sold: 108266245.7018
  • Format 함수와 Microsoft .NET Framework 형식 문자열인 C를 사용하여 숫자 값의 형식을 지정합니다.

    ="Total Sold: " & Format(Sum(Fields!TotalDue.Value),"C")
    결과
    Total Sold: $108,266,245.70
  • RowNumber 함수를 사용하여 행에 번호를 매깁니다.

    =RowNumber(Nothing)
    결과
    1
    2
    3
  • RunningValue를 사용하여 지정된 범위의 누계를 집계합니다.

    =Format(RunningValue(Fields!TotalDue.Value,Sum,Nothing),"C")
    결과
    $27,231.55
    $28,947.73

식에서 참조될 수 있는 보고서 관련 기본 제공 함수의 전체 목록은 식에 보고서 함수 사용(Reporting Services)을 참조하십시오.

범위

그룹이 여러 개 정의되어 있을 수 있으므로 집계 함수가 사용할 범위를 지정할 수 있습니다. 범위는 집계 계산 방법을 나타내기 위해 집계 함수로 전달할 수 있는 이름입니다. 예를 들어 그룹이 두 개 이상 정의된 테이블의 안쪽 그룹 머리글 행에서 바깥쪽 그룹을 참조하려는 경우 Nothing 범위는 가장 바깥쪽 범위를 사용하도록 함수에 지시합니다. 그룹화가 없는 단순 테이블 데이터 영역에서는 범위가 하나만 있습니다.

보고서 항목 그룹화에 알맞은 범위를 확인하려면 항목을 선택하고 속성 대화 상자를 연 다음 그룹 탭을 클릭하고 범위를 확인하는 데 사용할 수 있는 그룹 레이블 목록을 봅니다.

.NET Framework 및 시스템 네임스페이스 사용

식을 사용하여 Microsoft.VisualBasic 런타임 라이브러리의 기본 제공 네임스페이스는 물론 .NET Framework 네임스페이스인 System.ConvertSystem.Math를 참조할 수 있습니다. 다른 .NET Framework CLR(공용 언어 런타임) 네임스페이스를 참조하려면 System.Text.StringBuilder와 같이 정규화된 네임스페이스를 사용해야 합니다. 외부 어셈블리에 대한 참조의 경우 보고서 속성을 통해 어셈블리를 확인하고 보고서 서버에서 해당 어셈블리를 사용할 수 있는지 확인해야 합니다. 자세한 내용은 방법: 보고서에 어셈블리 참조 추가(보고서 디자이너)Referencing Assemblies in an RDL File를 참조하십시오.

사용자 지정 코드 및 클래스 참조 사용

식을 사용하여 고유한 사용자 지정 인스턴스 및 클래스 인스턴스를 참조할 수 있습니다. 보고서 속성을 통해 보고서에 코드를 직접 추가하거나 사용자 지정 어셈블리를 작성한 다음 식 내에서 해당 어셈블리를 참조함으로써 이를 처리할 수 있습니다. 자세한 내용은 식에 사용자 지정 코드 참조 사용(Reporting Services)을 참조하십시오.

조건부 서식 사용

식을 사용하여 보고서 항목의 모양을 조정할 수 있습니다. 예를 들어 데이터에 따라 다양한 색으로 데이터를 표시하는 텍스트 상자의 Color 속성에 대한 식을 작성할 수 있습니다. 다음 예에서는 TotalDue 필드의 값이 10,000 미만일 경우 값을 빨간색으로 표시합니다. 그 이상일 경우에는 텍스트가 검정으로 나타납니다.

=Iif(Fields!TotalDue.Value < 10000,"Red","Black")

보고서 항목에 대한 서식 지정 식을 입력하려면 속성 창을 열고 서식을 지정하려는 속성의 값 필드에 식을 입력합니다. 조건부 서식에 대한 자세한 내용은 조건부 서식 추가를 참조하십시오.

쿼리 식 사용

식을 사용하여 데이터 집합 내에 포함된 쿼리를 정의할 수 있습니다. 이 기능을 사용하면 사용자의 입력, 다른 데이터 집합의 데이터 또는 다른 변수를 기반으로 쿼리가 변경되는 보고서를 디자인할 수 있습니다. 쿼리에 대한 자세한 내용은 보고서 데이터 집합 정의를 참조하십시오.

필터링, 그룹화 및 정렬 식 사용

식을 사용하여 보고서에 표시되는 데이터의 양과 형식을 제한하는 필터를 정의할 수 있습니다. 필터는 데이터 원본에서 데이터가 검색된 후 해당 데이터에 적용됩니다. 데이터 집합, 데이터 영역 및 데이터 영역 그룹에 필터를 정의할 수 있습니다. 필터링에 대한 자세한 내용은 방법: 필터 추가(보고서 디자이너)보고서에서 데이터 필터링을 참조하십시오.

식을 사용하여 데이터 영역에 대한 그룹을 정의할 수 있습니다. 식은 주로 데이터 그룹에 대한 집계 계산에 사용됩니다. 그룹은 데이터 영역에 대해 그룹 머리글을 만들어 정의합니다. 데이터를 그룹화하는 방법은 보고서에서 데이터 그룹화방법: 테이블에 그룹 추가(보고서 디자이너)를 참조하십시오.

식을 사용하여 데이터 영역에 대해 정렬을 정의할 수 있습니다. 데이터 집합, 데이터 영역의 세부 행 및 데이터 영역의 그룹을 정렬할 수 있습니다. 데이터를 정렬하는 방법은 보고서에서 데이터 정렬방법: 테이블의 데이터 정렬(보고서 디자이너)을 참조하십시오.

기본 제공 보고서 컬렉션 사용

식을 사용하여 기본 제공 보고서 컬렉션 클래스를 참조할 수 있습니다. 앞에서 설명한 Fields 컬렉션 외에 Globals, User, Parameters, ReportItems, DataSetsDataSources 컬렉션의 항목을 참조하는 식을 만들 수 있습니다. 이러한 컬렉션을 식에서 사용하면 보고서를 처리하는 동안 동적으로 결정되는 보고서 속성과 데이터에 액세스할 수 있습니다. 자세한 내용은 식에 전역 컬렉션 사용(Reporting Services)을 참조하십시오.

로캘 설정 사용

식을 사용하여 User.Language 값을 통해 클라이언트 컴퓨터의 로캘 설정을 참조하여 보고서가 사용자에게 표시되는 방식을 결정할 수 있습니다. 예를 들어 로캘 값에 따라 다른 쿼리 식을 사용하는 보고서를 만들 수 있습니다. 반환되는 언어에 따라 다양한 열에서 지역화된 정보를 검색하기 위해 쿼리가 변경될 수 있습니다. 또한 이 변수를 기반으로 하는 보고서나 보고서 항목의 언어 설정에 식을 사용할 수 있습니다.

[!참고] 보고서의 언어 설정을 변경할 수 있지만 이로 인한 표시 문제에 유의해야 합니다. 예를 들어 보고서의 로캘 설정을 변경하면 보고서의 날짜 형식을 변경할 수 있지만 통화 형식도 변경될 수 있습니다. 통화가 적절하게 변환되지 않으면 잘못된 통화 기호가 보고서에 표시될 수 있습니다. 이를 방지하려면 변경할 항목에만 개별적으로 언어 정보를 설정하거나 통화 데이터가 있는 항목을 특정 언어로 설정합니다.

참고 항목

작업

방법: 식 추가(보고서 디자이너)

참조

Reporting Services의 식 예

개념

보고서 레이아웃 방법 도움말 항목

관련 자료

식 편집(보고서 디자이너)

도움말 및 정보

SQL Server 2005 지원 받기