Overzicht renderextensies

Een rendering-extensie is een component of module van een rapportserver die rapportgegevens en lay-outinformatie omzet naar een apparaatspecifiek formaat. SQL Server Reporting Services bevat verschillende renderextensies: HTML, Excel, Word, PowerPoint, CSV of Text, XML, Image, Data Feed en PDF. Je kunt andere renderextensies maken om rapporten in andere formaten te genereren.

Note

Om te bepalen welke renderextensies beschikbaar zijn, kun je de lijst van geïnstalleerde extensies in het RSReportServer.config-bestand bekijken.

De volgende tabel beschrijft de renderextensies die zijn inbegrepen bij Reporting Services.

Extensienaam Beschrijving
WORDOPENXML Render een rapport in Microsoft Word als een DOCX-bestand. Het formaat wordt weergegeven als Word in de Export-dropdownlijst van de rapportbalk.
WOORD Render een rapport in Microsoft Word als een DOC-bestand. Het formaat wordt niet weergegeven in de exportkeuzemenu van de rapportwerkbalk omdat het is opgenomen voor achterwaartse compatibiliteit.
EXCELOPENXML Rendert een rapport in Microsoft Excel als een XLSX-bestand. Het formaat wordt weergegeven als Excel in de exporteerlijst van de rapportbalk.
EXCEL Rendert een rapport in Microsoft Excel als een XLS-bestand. Het formaat wordt niet weergegeven in de exportkeuzemenu van de rapportwerkbalk omdat het is opgenomen voor achterwaartse compatibiliteit.
PPTX Rendert een rapport in PowerPoint als een PPTX-bestand. Het formaat wordt weergegeven als PowerPoint in de Exporteerlijst van de rapportbalk.
PDF Geeft een rapport in de PDF.
AFBEELDING Rendert een rapport in een pagina-georiënteerd formaat. Het formaat wordt weergegeven als TIFF-bestand in de Export-dropdownlijst van de rapportbalk.
MHTML (onderdeel van de HTML-renderextensie) Geeft een rapport in MHTML. Het rapport opent in de browser. Het formaat wordt weergegeven als MHTML (web archive) in de Export dropdownlijst van de rapportbalk.
CSV Geeft een rapport in komma-gescheiden formaat. Het rapport opent in een weergavetool die gekoppeld is aan CSV-bestandsformaten. Het formaat wordt weergegeven als CSV (komma-afbakening) in de Export-dropdownlijst van de rapportwerkbalk.
XML Rendert een rapport in XML. Het rapport opent in een browser. Extra transformaties die op deze XML-output worden toegepast, kunnen een kosteneffectieve manier zijn om te voorkomen dat je je eigen rendering-extensie ontwikkelt. Het formaat wordt weergegeven als XML-bestand met rapportgegevens in de Exporteerlijst van de rapportwerkbalk.
ATOM Rendert een rapport in datafeedformaat als een ATOMSVC-bestand. Het formaat wordt weergegeven als Datafeed in de Export dropdownlijst van de rapportbalk.
HTML4.0 (onderdeel van de HTML-renderextensie) HTML4.0 wordt gebruikt als de browser HTML5 niet ondersteunt.
HTML5 (onderdeel van de HTML-renderingsextensie) HTML5 is het formaat waarmee het rapport aanvankelijk in de browser wordt weergegeven. Als je browser HTML5 ondersteunt, is dat het formaat dat wordt gebruikt. Anders wordt HTML 4.0 gebruikt.
RPL RPL is het tussenformaat dat door de rapportserver wordt gebruikt en is de standaard renderextensie.
NULL Geeft geen rapport een specifiek formaat. Deze rendering-extensie is handig om rapporten in de cache te plaatsen. Null rendering moet worden gebruikt bij een geplande uitvoering of levering.

Voor meer informatie over de aanbevolen formaten en hun toepassingen, zie Export reports (Report Builder en SSRS).

Elke renderextensie die door Microsoft zijn geïmplementeerd en met Reporting Services worden geleverd, gebruikt een gemeenschappelijke set interfaces. Deze gemeenschappelijke set interfaces zorgt ervoor dat elke extensie vergelijkbare functionaliteit implementeert en vermindert de complexiteit van de rendercode in de kern van de rapportserver.

Rendering Object Model

Wanneer een rapport wordt verwerkt, resulteert het resultaat in een openbaar blootgesteld objectmodel dat bekendstaat als het Rendering Object Model (ROM). Het Rendering Object Model is een verzameling klassen die de inhoud, indeling en gegevens van een verwerkt rapport definiëren. De ROM is beschikbaar voor ontwikkelaars die aangepaste rendering-extensies voor Reporting Services willen ontwerpen, ontwikkelen en implementeren. ROM wordt geproduceerd wanneer de rapportserver de XML-definitie van een rapport verwerkt samen met de door de gebruiker gedefinieerde rapportgegevens. Wanneer de verwerking is voltooid, wordt het publieke objectmodel gebruikt door een renderingsextensie om de output van het rapport te definiëren. De beschikbare publieke klassen van de ROM zijn gedefinieerd in Microsoft. ReportingServices.OnDemandReportRendering naamruimte.

Schrijf aangepaste rendering-extensies

Voordat je besluit een aangepaste rendering-extensie te maken, moet je eenvoudigere alternatieven overwegen. U kunt het volgende doen:

  • Pas de gerenderde uitvoer aan door apparaatinformatie-instellingen voor bestaande extensies te specificeren.

  • Voeg aangepaste opmaak- en presentatiefuncties toe door XSL-transformaties (XSLT) te combineren met de output van het XML-renderformaat.

Het schrijven van een aangepaste renderingsextensie is moeilijk. Een rendering-extensie moet doorgaans alle mogelijke combinaties van rapportelementen ondersteunen en vereist dat je honderden klassen, interfaces, methoden en eigenschappen implementeert. Als je een rapport moet renderen in een formaat dat niet bij Reporting Services is inbegrepen en besluit je eigen beheerde code-implementatie van een rendering-extensie te schrijven, moet de rendering-extensiecode de Microsoft implementeren. ReportingServices.OnDemandReportRendering.IRenderingExtension-interface, die vereist is door de rapportserver.