XML의 RDL 요소 및 특성(보고서 작성기 1.0)
보고서를 XML 파일로 저장할 때 보고서 작성기는 RDL(Report Definition Language)을 XML로 변환해야 합니다. XML 내보내기 옵션은 보고서 항목을 XML 문서의 요소 또는 특성으로 저장합니다. 각 요소는 관련 특성 또는 하위 요소 집합을 포함할 수 있습니다. 특성 또는 요소는 보고서 항목에 따라 다릅니다. 이 항목에서는 XML로 저장할 때 RDL 스키마가 무엇으로 변경되는지 설명합니다.
보고서
Report는 XML 루트 노드입니다. 여기에는 XML 문서 및 보고서 이름에 대한 스키마 정보를 지정하는 특성이 포함됩니다.
XML 루트 노드에서 XSD(XML 스키마)는 다음과 같이 지정됩니다.
<Report xmlns="SchemaName" xmlns:sxi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="SchemaName ReportURL&rs:ImageID=SchemaName" Name="ReportName">
다음 표에서는 XML 내보내기 옵션에서 Report RDL 요소의 특성 및 요소가 어떻게 저장되는지 설명합니다.
RDL 특성 |
저장 대상 |
---|---|
Name |
루트 요소의 Name 특성 |
입력란
다음 표에서는 XML 내보내기 옵션에서 입력란이 어떻게 저장되는지 설명합니다. 입력란에 대한 DataElementStyle RDL 요소의 값에 따라 입력란 이름 및 값이 요소 또는 특성으로 저장됩니다.
RDL 요소 |
저장 대상 |
---|---|
DataElementName |
입력란 요소 또는 특성 이름. DataElementName을 지정하지 않은 경우 기본 이름은 RDL의 입력란 이름이 됩니다. |
Value |
입력란의 데이터 값 |
테이블
다음 표에서는 XML 내보내기 옵션에서 테이블이 어떻게 저장되는지 설명합니다. 테이블은 요소로 저장됩니다.
RDL 요소 |
저장 대상 |
---|---|
DataElementName |
테이블 요소 이름. DataElementName을 지정하지 않으면 RDL의 테이블 이름이 요소 이름으로 지정됩니다. |
TableGroup |
첫 번째 TableGroup 요소는 테이블 요소의 하위 요소로 저장됩니다. 후속 TableGroup 요소 각각은 이전 TableGroup 요소에 대한 그룹 인스턴스의 하위 요소로 저장됩니다. 그 결과 데이터 그룹이 중첩될 수 있습니다. |
Details |
마지막 TableGroup 요소에 대한 각 그룹 인스턴스의 하위 요소. 테이블 그룹이 없는 경우 Details는 테이블 요소의 하위 요소로 저장됩니다. |
테이블 그룹
다음 표에서는 XML 내보내기 옵션에서 테이블 그룹이 어떻게 저장되는지 설명합니다. 테이블 그룹은 요소로 저장됩니다.
RDL 요소 |
저장 대상 |
---|---|
DataCollectionName (Grouping) |
테이블 그룹 요소 이름. DataCollectionName을 지정하지 않으면 DataElementName 요소에 지정된 이름에 "_Collection" 문자열을 합한 이름이 요소 이름으로 지정됩니다. |
DataElementName (Grouping) |
그룹 인스턴스 요소 이름. 그룹 인스턴스 요소는 테이블 그룹 요소의 하위 요소입니다. DataElementName을 지정하지 않으면 RDL의 그룹화 이름이 요소 이름으로 지정됩니다. |
Header |
머리글의 모든 항목은 그룹 인스턴스 요소의 하위 요소 또는 특성으로 저장됩니다. |
세부 정보
다음 표에서는 XML 내보내기 옵션에서 Details RDL 요소의 특성 및 요소가 어떻게 저장되는지 설명합니다. Details는 요소로 저장됩니다.
RDL 요소 |
저장 대상 |
---|---|
DataCollectionName (Grouping) |
세부 정보 요소 이름. DataCollectionName을 지정하지 않으면 DataElementName 요소에 지정된 이름에 "_Collection" 문자열을 합한 이름이 요소 이름으로 지정됩니다. Details에 그룹화가 없는 경우 요소의 이름은 Detail_Collection이 됩니다. |
DataElementName (Grouping) |
그룹 인스턴스 요소 이름. 그룹 인스턴스 요소는 세부 정보 요소의 하위 요소입니다. DataElementName을 지정하지 않으면 RDL의 그룹화 이름이 요소 이름으로 지정됩니다. Details에 그룹화가 없는 경우 요소의 이름은 Detail이 됩니다. |
DetailsRows |
정보 행의 모든 항목은 그룹 인스턴스 요소의 하위 요소 또는 특성으로 저장됩니다. |
행렬
다음 표에서는 XML 내보내기 옵션에서 행렬이 어떻게 저장되는지 설명합니다. 행렬은 요소로 저장됩니다.
RDL 요소 |
저장 대상 |
---|---|
DataElementName |
행렬 요소 이름. DataElementName을 지정하지 않으면 RDL의 행렬 이름이 요소 이름으로 지정됩니다. |
Corner |
모퉁이의 모든 항목은 행렬 요소의 하위 요소 또는 특성으로 저장됩니다. |
RowGrouping |
첫 번째 RowGrouping 요소는 행렬 요소의 하위 요소로 저장됩니다. 후속 RowGrouping 요소 각각은 이전 RowGrouping 요소에 대한 그룹 인스턴스의 하위 요소로 저장됩니다. 그 결과 데이터 그룹이 중첩될 수 있습니다. |
ColumnGrouping |
첫 번째 ColumnGrouping 요소는 마지막 RowGrouping 요소에 대한 각 그룹 인스턴스의 하위 요소로 저장됩니다. 후속 ColumnGrouping 요소 각각은 이전 ColumnGrouping 요소에 대한 그룹 인스턴스의 하위 요소로 저장됩니다. |
MatrixCell |
마지막 ColumnGrouping 요소에 대한 각 그룹 인스턴스의 Cell 하위 요소. 행렬 셀의 모든 항목은 Cell 요소의 하위 요소 또는 특성으로 저장됩니다. |
행 그룹화
다음 표에서는 XML 내보내기 옵션에서 행 그룹화가 어떻게 저장되는지 설명합니다. 행 그룹화는 요소로 저장됩니다.
RDL 요소 |
저장 대상 |
---|---|
DataCollectionName (Grouping) |
행 그룹화 요소 이름. DataCollectionName을 지정하지 않으면 DataElementName 요소에 지정된 이름에 "_Collection" 문자열을 합한 이름이 요소 이름으로 지정됩니다. 이 이름은 정적 행 그룹화에서 사용할 수 없습니다. |
DataElementName (Grouping) |
그룹 인스턴스 요소 이름. 그룹 인스턴스 요소는 행 그룹화 요소의 하위 요소입니다. DataElementName을 지정하지 않으면 RDL의 그룹화 이름이 요소 이름으로 지정됩니다. 정적 행 그룹화의 경우 요소의 이름은 그룹 머리글의 입력란에 대한 DataElementName 값이 됩니다. 정적 행 머리글에 입력란이 없는 경우 요소의 이름은 RowN이 됩니다. 여기서 N은 행 그룹화에 지정된 번호입니다. |
ReportItems |
행 그룹화의 모든 항목은 행 그룹화 요소 부모의 하위 요소 또는 특성으로 저장됩니다. |
Subtotal |
행 그룹화 요소에 대한 형제 요소. 이 요소는 행렬 셀을 포함합니다. 이 요소의 이름은 부분합에 대한 DataElementName 요소에 지정된 이름이 됩니다. 지정된 이름이 없는 경우 요소의 이름은 Total이 됩니다. |
[!참고]
부분합은 기본적으로 저장되지 않습니다. XML 내보내기 옵션은 부분합에 대한 DataElementOutput RDL 요소 값이 Output인 경우에만 부분합을 저장합니다.
열 그룹화
다음 표에서는 XML 내보내기 옵션에서 열 그룹화가 어떻게 저장되는지 설명합니다. 열 그룹화는 요소로 저장됩니다.
RDL 요소 |
저장 대상 |
---|---|
DataCollectionName (Grouping) |
열 그룹화 요소 이름. DataCollectionName을 지정하지 않으면 DataElementName 요소에 지정된 이름에 "_Collection" 문자열을 합한 이름이 요소 이름으로 지정됩니다. 이 이름은 정적 열 그룹화에서 사용할 수 없습니다. |
DataElementName (Grouping) |
그룹 인스턴스 요소 이름. 그룹 인스턴스 요소는 열 그룹화 요소의 하위 요소입니다. DataElementName을 지정하지 않으면 RDL의 그룹화 이름이 요소 이름으로 지정됩니다. 정적 열 그룹화의 경우 요소의 이름은 사용된 그룹 머리글의 입력란에 대한 DataElementName의 값이 됩니다. 정적 열 머리글에 입력란이 없는 경우 요소의 이름은 ColumnN이 됩니다. 여기서 N은 열 그룹화에 지정된 번호입니다. |
ReportItems |
열 그룹화의 모든 항목은 열 그룹화 요소 부모의 하위 요소 또는 특성으로 저장됩니다. |
Subtotal |
열 그룹화 요소에 대한 형제 요소. 이 요소는 행렬 셀을 포함합니다. 이 요소의 이름은 부분합에 대한 DataElementName 요소에 지정된 이름이 됩니다. 지정된 이름이 없는 경우 요소의 이름은 Total이 됩니다. |
[!참고]
부분합은 기본적으로 저장되지 않습니다. XML 내보내기 옵션은 부분합에 대한 DataElementOutput RDL 요소 값이 Output인 경우에만 부분합을 저장합니다.
요소에 대해 좀 더 살펴보면 XML 내보내기 옵션이 보고서의 RDL(Report Definition Language) 요소를 XML 파일로 저장하는 방법을 보다 잘 이해할 수 있습니다. RDL 요소에 대한 자세한 내용은 SQL Server 온라인 설명서에서 "Report Definition Language" 항목을 참조하십시오.