XML 출력에 변환 적용
업데이트: 2006년 12월 12일
XML 렌더링 확장 프로그램을 사용하면 런타임에 보고서 내보내기 작업 중 만들어지는 XML 파일을 생성할 수 있습니다. 결과 XML 파일은 나중에 XSLT(XSL 변환)를 사용하여 거의 모든 형식으로 변환될 수 있습니다. XML 렌더링 확장 프로그램과 XSLT를 사용하면 기존 렌더링 확장 프로그램에서 지원되지 않는 형식도 만들 수 있습니다.
다음은 XSLT를 사용하는 일반적인 세 가지 시나리오입니다.
- 데이터 전송 Reporting Services의 XML 출력을 다른 응용 프로그램에서 읽을 수 있는 다른 XML 형식으로 변환할 수 있습니다.
- 텍스트 렌더링 XML 보고서를 일반 텍스트 파일로 변환할 수 있습니다. 보고서 데이터에 따라 앰퍼샌드 문자와 같은 특수 문자는 HTML로 인코딩된 형식(예: &)으로 렌더링될 수 있습니다. 특수 문자가 HTML로 인코딩되는 것을 방지하려면 다음과 같은 메서드 특성을 XSLT 파일에 추가합니다.
<xsl:output method="text" encoding="utf-8" media-type="text/plain"/>
. - HTML 렌더링 XML 보고서에서 HTML 또는 기타 문서를 만들 수 있습니다.
XML 렌더링 확장 프로그램에서 생성된 XML은 보고서마다 다릅니다. 따라서 XSL 변환도 해당 보고서에 맞게 작성해야 합니다.
[!참고] 보안상의 이유로 Reporting Services는 Microsoft Visual Basic 코드가 포함된 XSL 변환을 지원하지 않습니다.
예
다음과 같은 XSL을 파일로 저장하고 보고서 서버에 업로드하면 Product Catalog 예제 보고서를 일반 텍스트 형식의 제품 모델 목록으로 변환할 수 있습니다.
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" encoding="utf-8" media-type="text/plain"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/">
<xsl:text>Product Models</xsl:text>
<xsl:text>
</xsl:text>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="Report">
<xsl:for-each select="ProductTable/ProductTable_Group1_Collection/ProductTable_Group1">
<xsl:text>
</xsl:text>
<xsl:value-of select="@Category"/>
<xsl:for-each select="ProductTable_Group2_Collection/ProductTable_Group2">
<xsl:text>
 </xsl:text>
<xsl:value-of select="@SubCategory"/>
<xsl:for-each select="ProductTable_Group3_Collection/ProductTable_Group3">
<xsl:text>
 </xsl:text>
<xsl:value-of select="@Model"/>
</xsl:for-each>
</xsl:for-each>
</xsl:for-each>
<xsl:apply-templates/>
</xsl:template>
</xsl:stylesheet>
예제 보고서를 변환하려면 보고서 실행에 사용되는 URL에 있는 장치 정보 설정을 사용합니다. 예를 들어 다음 URL은 보고서를 실행하고 변환을 적용하여 확장명이 .txt인 파일을 출력합니다. 이 예에서는 이전 예의 XSL이 보고서 서버에서 Product Catalog 보고서와 동일한 폴더에 ProductModels.xsl 이름으로 저장되어 있다고 가정합니다.
https://localhost/reportserver?/AdventureWorks%20Sample%20Reports/Product+Catalog&rs:Command=Render&rs:Format=XML&rc:OmitSchema=True&rc:FileExtension=txt&rc:XSLT=ProductModels.xsl
Reporting Services 이외의 다른 응용 프로그램에서도 XSLT를 사용하여 XML 보고서를 변환할 수 있습니다. 보고서 서버에서 XML을 검색한 다음 고유의 응용 프로그램을 사용하여 XSLT를 적용할 수도 있습니다.
[!참고] 이 예에 사용된 XSL 파일은 Product Catalog 예제 보고서에만 사용할 수 있습니다. 다른 보고서를 사용하거나 Product Catalog 보고서를 변경하면 파일이 제대로 변환되지 않을 수도 있습니다.
참고 항목
개념
보고서 내보내기
XML 데이터의 보고서 데이터 집합 정의
XML 출력 디자인
관련 자료
Using a URL to Access Report Server Items
AdventureWorks 보고서 예제
도움말 및 정보
변경 내역
릴리스 | 내역 |
---|---|
2006년 12월 12일 |
|
2005년 12월 5일 |
|