식(보고서 작성기 및 SSRS)Expressions (Report Builder and SSRS)

식은 데이터를 검색, 계산, 표시, 그룹화, 정렬, 필터링, 매개 변수화 및 서식 지정하기 위해 Reporting ServicesReporting Services 에서 페이지를 매긴 보고서 전체에서 광범위하게 사용됩니다.Expressions are widely used throughout Reporting ServicesReporting Services paginated reports to retrieve, calculate, display, group, sort, filter, parameterize, and format data.

많은 보고서 항목 속성을 식으로 설정할 수 있으므로Many report item properties can be set to an expression. 식을 사용하면 보고서의 내용, 디자인 및 상호 작용을 제어할 수 있습니다.Expressions help you control the content, design, and interactivity of your report. 식은 MicrosoftMicrosoft Visual BasicVisual Basic으로 작성되고 보고서 정의에 저장되며 보고서를 실행할 때 보고서 처리기에서 계산됩니다.Expressions are written in MicrosoftMicrosoft Visual BasicVisual Basic, saved in the report definition, and evaluated by the report processor when you run the report.

워크시트에서 데이터에 대해 직접 작업하는 MicrosoftMicrosoft Office Excel 등의 응용프로그램과는 달리, 보고서에서는 데이터의 자리 표시자인 식을 사용하여 작업합니다.Unlike applications such as MicrosoftMicrosoft Office Excel where you work with data directly in a worksheet, in a report, you work with expressions that are placeholders for data. 계산된 식을 사용하여 실제 데이터를 보려면 보고서 미리 보기를 수행해야 합니다.To see the actual data from the evaluated expressions, you must preview the report. 보고서를 실행하면 보고서 처리기가 보고서 데이터와 보고서 레이아웃 요소(예: 테이블 및 차트)가 결합될 때 각 식을 계산합니다.When you run the report, the report processor evaluates each expression as it combines report data and report layout elements such as tables and charts.

보고서를 디자인할 때 보고서 항목에 대한 여러 식이 설정됩니다.As you design a report, many expressions for report items are set for you. 예를 들어 데이터 창의 필드를 보고서 디자인 화면의 테이블 셀로 끌어서 놓으면 입력란 값이 필드의 간단한 식으로 설정됩니다.For example, when you drag a field from the data pane to a table cell on the report design surface, the text box value is set to a simple expression for the field. 다음 그림에서는 보고서 데이터 창에 데이터 집합 필드 ID, Name, SalesTerritory, Code 및 Sales가 표시됩니다.In the following figure, the Report Data pane displays the dataset fields ID, Name, SalesTerritory, Code, and Sales. [Name], [Code] 및 [Sales]라는 세 개의 필드가 테이블에 추가되었습니다.Three fields have been added to the table: [Name], [Code], and [Sales]. 디자인 화면에서 표기법 [Name]은 기본 식 =Fields!Name.Value를 나타냅니다.The notation [Name] on the design surface represents the underlying expression =Fields!Name.Value.

rs_DataDesignandPreviewrs_DataDesignandPreview

보고서를 미리 볼 때 보고서 처리기는 테이블 데이터 영역을 데이터 연결의 실제 데이터와 결합하고 결과 집합의 각 행마다 하나의 테이블 행을 표시합니다.When you preview the report, the report processor combines the table data region with the actual data from the data connection and displays a row in the table for every row in the result set.

식을 수동으로 입력하려면 디자인 화면에서 항목을 선택하고 바로 가기 메뉴 및 대화 상자를 사용하여 항목의 속성을 설정합니다.To enter expressions manually, select an item on the design surface, and use shortcut menus and dialog boxes to set the properties of the item. (fx) 단추나 <Expression> 값이 드롭다운 목록에 표시되면 해당 속성을 식으로 설정할 수 있다는 것입니다.When you see the (fx) button or the value <Expression> in a drop-down list, you know that you can set the property to an expression. 자세한 내용은 식 추가(보고서 작성기 및 SSRS)를 나타냅니다.For more information, see Add an Expression (Report Builder and SSRS).

복잡한 식이나 사용자 지정 코드 또는 사용자 지정 어셈블리를 사용하는 식을 개발하려면 SQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT)에서 보고서 디자이너를 사용하는 것이 좋습니다.To develop complex expressions or expressions that use custom code or custom assemblies, we recommend that you use Report Designer in SQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT). 자세한 내용은 보고서 디자이너의 식에 포함된 사용자 지정 코드 및 어셈블리 참조(SSRS)를 나타냅니다.For more information, see Custom Code and Assembly References in Expressions in Report Designer (SSRS).

참고

SQL Server Data Tools의 보고서 작성기 및 보고서 디자이너에서 페이지를 매긴 보고서 정의(.rdl) 파일을 만들고 수정할 수 있습니다.You can create and modify paginated report definition (.rdl) files in Report Builder and in Report Designer in SQL Server Data Tools. 각 제작 환경에서는 보고서 및 관련 항목을 만들고, 열고, 저장할 수 있는 여러 방법을 제공합니다.Each authoring environment provides different ways to create, open, and save reports and related items.

간단한 식 및 복잡한 식 이해 Understanding Simple and Complex Expressions

식은 등호(=)로 시작하며 MicrosoftMicrosoft Visual BasicVisual Basic으로 작성됩니다.Expressions begin with an equal sign (=) and are written in MicrosoftMicrosoft Visual BasicVisual Basic. 식에는 상수, 연산자, 기본 제공 값(필드, 컬렉션 및 함수)에 대한 참조, 외부 또는 사용자 지정 코드에 대한 참조의 조합이 포함될 수 있습니다.Expressions can include a combination of constants, operators, and references to built-in values (fields, collections, and functions), and to external or custom code.

식을 사용하여 여러 보고서 항목 속성 값을 지정할 수 있습니다.You can use expressions to specify the value of many report item properties. 가장 일반적인 속성은 입력란 및 자리 표시자 텍스트에 대한 값입니다.The most common properties are values for text boxes and placeholder text. 일반적으로 입력란에 식이 하나만 포함되어 있는 경우 식은 입력란 속성 값입니다.Typically, if a text box contains only one expression, the expression is the value of the text box property. 입력란에 여러 개의 식이 포함되어 있으면 각 식은 입력란의 자리 표시자 텍스트 값입니다.If a text box contains multiple expressions, each expression is the value of placeholder text in the text box.

기본적으로 식은 보고서 디자인 화면에서 간단한 식 이나 복잡한 식으로 나타납니다.By default, expressions appear on the report design surface as simple or complex expressions.

  • 간단한 식 간단한 식에는 데이터 집합 필드, 매개 변수 또는 기본 제공 필드와 같은 기본 제공 컬렉션에 있는 단일 항목에 대한 참조가 포함됩니다.Simple A simple expression contains a reference to a single item in a built-in collection, for example, a dataset field, a parameter, or a built-in field. 디자인 화면에서 간단한 식은 대괄호 안에 나타납니다.On the design surface, a simple expression appears in brackets. 예를 들어 [FieldName] 은 기본 식 =Fields!FieldName.Value에 해당합니다.For example, [FieldName] corresponds to the underlying expression =Fields!FieldName.Value. 보고서 레이아웃을 만들고 보고서 데이터 창의 항목을 디자인 화면으로 끌어서 놓으면 간단한 식이 자동으로 만들어집니다.Simple expressions are created for you automatically as you create the report layout and drag items from the Report Data pane to the design surface. 여러 다른 기본 제공 컬렉션을 나타내는 기호에 대한 자세한 내용은 간단한 식의 접두사 기호 이해를 참조하세요.For more information about the symbols that represent different built-in collections, see Understanding Prefix Symbols for Simple Expressions.

  • 복잡한 식 복잡한 식에는 여러 개의 기본 제공 참조, 연산자 및 함수 호출에 대한 참조가 포함됩니다.Complex A complex expression contains references to multiple built-in references, operators, and function calls. 복잡 한 식으로 나타나는 <<Expr >> 식 값의 간단한 참조 이상을 포함 하는 경우.A complex expression appears as <<Expr>> when the expression value includes more than a simple reference. 식을 보려면 식 위로 마우스를 이동하여 도구 설명을 사용합니다.To view the expression, hover over it and use the tooltip. 식을 편집하려면 대화 상자에서 식을 엽니다.To edit the expression, open it in the Expression dialog box.

    다음 그림에서는 입력란과 자리 표시자 텍스트 모두에 대한 일반적인 간단한 식과 복잡한 식을 보여 줍니다.The following figure shows typical simple and complex expressions for both text boxes and placeholder text.

    rs_ExpressionDefaultFormatrs_ExpressionDefaultFormat

    식에 대한 텍스트 대신 예제 값을 표시하려면 입력란 또는 자리 표시자 텍스트에 서식을 적용합니다.To display sample values instead of text for expressions, apply formatting to the text box or placeholder text. 다음 그림에서는 예제 값을 표시하도록 전환된 보고서 디자인 화면을 보여 줍니다.The following figure shows the report design surface toggled to show sample values:

    rs_ExpressionSampleValuesFormatrs_ExpressionSampleValuesFormat

    자세한 내용은 텍스트 및 자리 표시자 서식 지정(보고서 작성기 및 SSRS)에 대해 자세히 알아봅니다.For more information, see Formatting Text and Placeholders (Report Builder and SSRS).

보고서 모델 수식Report Model Formulas

보고서 모델을 데이터 원본으로 사용하는 데이터 집합에 대한 쿼리를 디자인할 때 수식을 만들 수 있습니다.When you are designing a query for a dataset that uses a report model as a data source, you can create formulas. 수식은 보고서 모델의 데이터를 기반으로 하는 보고서의 값에 대해 수행되는 계산입니다.Formulas are calculations performed on values in a report that are based on data from a report model.

자세한 내용은 보고서 모델 쿼리의 수식(보고서 작성기 및 SSRS)을 참조하세요.For more information, see Formulas in Report Model Queries (Report Builder and SSRS).

간단한 식의 접두사 기호 이해 Understanding Prefix Symbols in Simple Expressions

간단한 식은 기호를 사용하여 참조가 필드, 매개 변수, 기본 제공 컬렉션 또는 ReportItems 컬렉션 중 어느 항목에 대한 것인지를 나타냅니다.Simple expressions use symbols to indicate whether the reference is to a field, a parameter, a built-in collection, or the ReportItems collection. 다음 표에서는 표시 텍스트 및 식 텍스트의 예를 보여 줍니다.The following table shows examples of display and expression text:

항목Item 표시 텍스트 예Display text example 식 텍스트 예Expression text example
데이터 집합 필드Dataset fields [Sales]

[SUM(Sales)]

[FIRST(Store)]
=Fields!Sales.Value

=Sum(Fields!Sales.Value)

=First(Fields!Store.Value)
보고서 매개 변수Report parameters [@Param]

[@Param.Label]
=Parameters!Param.Value

=Parameters!Param.Label
기본 제공 필드Built-in fields [&ReportName] =Globals!ReportName.Value
표시 텍스트에 사용되는 리터럴 문자Literal characters used for display text \[Sales\] [Sales]

복잡한 식 작성 Writing Complex Expressions

식에는 함수, 연산자, 상수, 필드, 매개 변수, 기본 제공 컬렉션의 항목 및 포함된 사용자 지정 코드나 사용자 지정 어셈블리에 대한 참조가 포함될 수 있습니다.Expressions can include references to functions, operators, constants, fields, parameters, items from built-in collections, and to embedded custom code or custom assemblies.

참고

복잡한 식이나 사용자 지정 코드 또는 사용자 지정 어셈블리를 사용하는 식을 개발하려면 SQL ServerSQL Server SQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT)에서 보고서 디자이너를 사용하는 것이 좋습니다.To develop complex expressions or expressions that use custom code or custom assemblies, we recommend that you use Report Designer in SQL ServerSQL Server SQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT). 자세한 내용은 보고서 디자이너의 식에 포함된 사용자 지정 코드 및 어셈블리 참조(SSRS)를 나타냅니다.For more information, see Custom Code and Assembly References in Expressions in Report Designer (SSRS).

다음 표에서는 식에 포함할 수 있는 참조의 종류를 보여 줍니다.The following table lists the kinds of references you can include in an expression:

참조References DescriptionDescription 예제Example
상수Constants 글꼴 색과 같은 상수 값을 요구하는 속성에 대해 대화형으로 액세스할 수 있는 상수에 대해 설명합니다.Describes the constants you can access interactively for properties that require constant values, such as font colors. ="Blue"
연산자Operators 식에서 참조를 조합하는 데 사용할 수 있는 연산자에 대해 설명합니다.Describes the operators you can use to combine references in an expression. 예를 들어 & 연산자는 문자열을 연결하는 데 사용됩니다.For example, the & operator is used for concatenating strings. ="The report ran at: " & Globals!ExecutionTime & "."
기본 제공 컬렉션Built-in Collections 식에 포함할 수 있는 기본 제공 컬렉션(예: Fields, ParametersVariables)에 대해 설명합니다.Describes the built-in collections that you can include in an expression, such as Fields, Parameters, and Variables. =Fields!Sales.Value

=Parameters!Store.Value

=Variables!MyCalculation.Value
기본 제공 보고서 및 집계 함수Built-in Report and Aggregate Functions Sum 또는 Previous와 같이 식에서 액세스할 수 있는 기본 제공 함수에 대해 설명합니다.Describes the built-in functions, such as Sum or Previous, that you can access from an expression. =Previous(Sum(Fields!Sales.Value))
보고서 디자이너의 식에 포함된 사용자 지정 코드 및 어셈블리 참조(SSRS)Custom Code and Assembly References in Expressions in Report Designer (SSRS) 기본 제공 CLR 클래스 MathConvert, 다른 CLR 클래스, Visual BasicVisual Basic 런타임 라이브러리 함수 또는 외부 어셈블리의 메서드에 액세스할 수 있는 방법에 대해 설명합니다.Describes how you can access the built-in CLR classes Math and Convert, other CLR classes, Visual BasicVisual Basic run-time library functions, or methods from an external assembly.

보고서에 포함된 사용자 지정 코드 또는 컴파일하여 사용자 지정 어셈블리로 보고서 클라이언트와 보고서 서버에 설치한 사용자 지정 코드에 액세스할 수 있는 방법에 대해 설명합니다.Describes how you can access custom code that is embedded in your report, or that you compile and install as a custom assembly on both the report client and the report server.
=Sum(Fields!Sales.Value)

=CDate(Fields!SalesDate.Value)

=DateAdd("d",3,Fields!BirthDate.Value)

=Code.ToUSD(Fields!StandardCost.Value)

식 유효성 검사 Validating Expressions

특정 보고서 항목 속성에 대한 식을 만들 때 식에 포함할 수 있는 참조는 보고서 항목 속성에 허용될 수 있는 값 및 속성이 계산되는 범위에 따라 달라집니다.When you create an expression for a specific report item property, the references that you can include in an expression depend on the values that the report item property can accept and the scope in which the property is evaluated. 예를 들어For example:

  • 기본적으로 [Sum] 식은 식이 계산될 때 범위 내에 있는 데이터의 합계를 계산합니다.By default, the expression [Sum] calculates the sum of data that is in scope at the time the expression is evaluated. 테이블 셀의 경우 범위는 행 및 열 그룹 멤버 자격에 따라 달라집니다.For a table cell, the scope depends on row and column group memberships. 자세한 내용은 합계, 집계 및 기본 제공 컬렉션의 식 범위(보고서 작성기 및 SSRS)를 나타냅니다.For more information, see Expression Scope for Totals, Aggregates, and Built-in Collections (Report Builder and SSRS).

  • Font 속성 값은 글꼴 이름으로 계산되어야 합니다.For the value for a Font property, the value must evaluate to the name of a font.

  • 식 구문은 디자인 타임에 유효성이 검사됩니다.Expression syntax is validated at design time. 보고서를 게시할 때 식 범위 유효성 검사가 수행됩니다.Expression scope validation occurs when you publish the report. 실제 데이터에 따라 달라지는 유효성 검사의 경우 런타임에만 오류가 검색될 수 있습니다.For validation that depends on the actual data, errors can only be detected at run-time. 이 식 중 일부는 렌더링된 보고서에 #Error를 오류 메시지로 생성합니다.Some of these expressions produce #Error as an error message in the rendered report. 이러한 종류의 오류에 대한 문제를 확인하려면 SQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT)에서 보고서 디자이너를 사용해야 합니다.To help determine the issues for this kind of error, you must use Report Designer in SQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT). 보고서 디자이너에는 이 오류에 대한 자세한 정보를 제공하는 출력 창이 있습니다.Report Designer provides an Output window that provides more information about these errors.

    자세한 내용은 식 참조(보고서 작성기 및 SSRS)를 나타냅니다.For more information, see Expression Reference (Report Builder and SSRS).

섹션 내용 In This Section

식 추가(보고서 작성기 및 SSRS)Add an Expression (Report Builder and SSRS)

보고서에 사용되는 식(보고서 작성기 및 SSRS)Expression Uses in Reports (Report Builder and SSRS)

합계, 집계 및 기본 제공 컬렉션의 식 범위(보고서 작성기 및 SSRS)Expression Scope for Totals, Aggregates, and Built-in Collections (Report Builder and SSRS)

식 참조(보고서 작성기 및 SSRS)Expression Reference (Report Builder and SSRS)

관련 항목:See Also

자세한 내용 및 예제는 다음 항목을 참조하십시오.For more information and examples, see the following topics: