Entwerfen für die HTML-Ausgabe

Aktualisiert: 14. April 2006

Die HTML-Renderingerweiterung rendert einen Bericht im HTML-Format. Die Renderingerweiterung kann die folgenden Typen von HTML: HTML 3.2, HTML 4.0 oder MHTML erstellen. Die Renderingerweiterung kann außerdem vollständige HTML-Seiten oder HTML-Fragmente zum Einbetten in andere HTML-Seiten erstellen. HTML wird stets mit UTF-8-Codierung erstellt.

Die HTML-Renderingerweiterung ist die Standardrenderingerweiterung für Berichte, die mit einem Browser angezeigt werden. Der Standard-HTML-Typ ist HTML 4.0.

  • Wenn Sie HTML 4.0 verwenden möchten, öffnen Sie den Bericht im Berichts-Manager, einem SharePoint-Webpart oder einem Berichts-URL.
  • Zum Verwenden von HTML 3.2 müssen Sie im Berichts-URL darauf verweisen (z. B. http://<webserver>/reportserver?%2fProduct%sfSales&rs:Command=Render&rs:Format=HTML3.2).
  • Zum Verwenden von MHTML können Sie im Berichts-URL darauf verweisen oder das Format in der Liste der Exportformate in der Berichts-Symbolleiste auswählen. Das Exportformat für MHTML ist Webarchiv.

HTML 4.0-Berichte entsprechen abgesehen von einigen Ausnahmen den HTML 4.0- und CSS2-Spezifikationen (Cascading Stylesheets, Ebene 2). HTML 3.2-Berichte entsprechen der HTML 3.2-Spezifikation, aber es können Formate zum Optimieren der Darstellung enthalten sein. Die HTML-Renderingerweiterung unterstützt den Standard MHTML (MIME Encapsulation of Aggregate HTML Documents). Diese Renderingerweiterung bettet Ressourcen wie Bilder, Dokumente oder andere Binärdateien als MIME-Strukturen (Multipurpose Internet Mail Extensions) im Berichts-HTML-Code in einer einzelnen Datei ein. Durch die codierten Ressourcen in dem Bericht wird der Bericht zwar größer, die Einbettung der Ressourcen ist jedoch speziell für Clients nützlich, die keinen Zugriff auf Ressourcen auf dem Berichtsserver oder an einem anderen Speicherort haben. Daneben sind MHTML-Berichte zur Einbettung in E-Mail-Nachrichten geeignet, da alle Ressourcen in den Bericht eingeschlossen sind.

ms156022.security(de-de,SQL.90).gifSicherheitshinweis:
Wenn Sie einen Parameter vom Typ String definieren, wird dem Benutzer ein Textfeld angezeigt, in das ein beliebiger Wert eingegeben werden kann. Wenn ein Berichtsparameter nicht an einen Abfrageparameter gebunden ist, und die Parameterwerte im Bericht enthalten sind, hat ein Benutzer die Möglichkeit, Ausdruckssyntax, Skript oder einen URL in den Parameterwert einzugeben und den Bericht als HTML zu rendern. Zeigt ein anderer Benutzer den Bericht an und klickt auf den gerenderten Parameterinhalt, führt der Benutzer möglicherweise versehentlich das bösartige Skript bzw. die Verknüpfung aus. Um das Risiko der versehentlichen Ausführung bösartiger Skripts zu minimieren, sollten gerenderte Berichte nur von vertrauenswürdigen Quellen geöffnet werden. Weitere Informationen zum Sichern von Berichten finden Sie unter Sichern von Berichten und Ressourcen.

Weitere Informationen zu Browsern und Berichtsrendering finden Sie unter Browserunterstützung in Reporting Services und Exportieren von Berichten.

Positionieren von Elementen

Die HTML-Renderingerweiterung erstellt eine Tabelle in HTML für die Elemente in den verschiedenen Berichtselementsätzen. Die Elemente werden innerhalb der Tabelle positioniert, damit das Layout des Berichts beibehalten wird. Falls die Berichtselementsätze nur ein Berichtselement enthalten, wird das Berichtselement ohne die Tabelle gerendert. Alle Positionen und Größen der Elemente werden in Millimetern (mm) angegeben. Abweichungen bei Größe und Position von weniger als 0,2 mm werden als 0 mm gerendert.

Überlappende Elemente werden von HTML nicht unterstützt. Falls sich ein Berichtselement mit einem anderen Element überlappt, werden die Elemente ohne Überlappung angeordnet. Dies kann dazu führen, dass Elemente an einer anderen Position als vorgesehen auf der Seite angezeigt werden. In einigen Fällen überlappen sich Elemente in einem Designtool scheinbar nicht, obwohl dies tatsächlich der Fall ist. Die Größen- und Positionseigenschaften für die Berichtselemente zeigen die tatsächliche Position der Berichtselemente. Um die Position von sich überlappenden Elementen zu bestimmen, verwendet die Renderingerweiterung zuerst den Wert des Top-Elements für die Elemente, danach den Wert des Left-Elements und schließlich den Wert des ZIndex-Elements.

Paginierung

Die HTML-Renderingerweiterung rendert Seiten wie folgt als separate HTML-Seiten, die auch als "Abschnitte" bezeichnet werden:

  • Seitenumbrüche werden gerendert, wenn die folgenden Elemente in einer Liste mit einem Seitenumbruch oder aber direkt im Hauptteil des Berichts positioniert werden:
    • Rechtecke mit PageBreakAtEnd oder PageBreakAtStart festgelegt auf True.
    • Listen oder Listengruppen mit PageBreakAtEnd oder PageBreakAtStart festgelegt auf True.
    • Tabellen oder Tabellengruppen mit PageBreakAtEnd oder PageBreakAtStart festgelegt auf True. Die Tabelle muss mindestens eine sichtbare Spalte aufweisen. Alle übergeordneten Gruppen für eine Tabellengruppe müssen sichtbar sein.
    • Matrizen oder Zeilengruppen mit PageBreakAtEnd oder PageBreakAtStart festgelegt auf True.
    • Eingebettete Berichte mit einem der obigen Elemente.
  • Elemente, die über einem Element beginnen, das einen Seitenumbruch enthält, werden auf der Seite vor dem Seitenumbruch angezeigt.

Die HTML-Renderingerweiterung versucht, alle Seitenumbrüche in Elementen wie zuvor beschrieben zu rendern. Zwei Elemente mit Seitenumbrüchen, die nebeneinander auf der Seite angeordnet sind, können jedoch zu unvorhersehbaren Ergebnissen führen. Elemente mit Seitenumbrüchen, die in einer Tabelle, einer Matrix oder einem Rechteck enthalten sind, können ebenfalls zu unvorhersehbaren Ergebnissen führen.

Ein Element, das sich neben einem Element mit einem Seitenumbruch befindet, wird auf derselben Seite gerendert, wenn sich die obere Kante des Elements über der unteren Kante des Elements mit dem Seitenumbruch befindet. Beispielsweise wird ein Textfeld, das direkt rechts von einer Tabelle platziert wird, die einen Seitenumbruch am Ende der Tabelle enthält, auf derselben Seite wie die Tabelle angezeigt. Ein Textfeld, das rechts und unterhalb von der unteren Kante derselben Tabelle platziert wird, wird auf der nächsten Seite angezeigt.

Die HTML-Renderingerweiterung fügt außerdem Seitenumbrüche etwa in der Seitenhöhe ein, die in den Berichtseigenschaften definiert ist. Dadurch soll in erster Linie verhindert werden, dass ein umfangreicher Bericht ohne Seitenumbrüche beim Rendern extrem große HTML-Seiten generiert.

Rendering

Beim Rendern eines Berichts mithilfe der HTML-Renderingerweiterung können Sie u. a. die folgenden Geräteinformationseinstellungen angeben:

  • Browsertyp
  • Ob der HTML-Code als Fragment oder als vollständiges HTML-Dokument gerendert wird
  • Sichtbarkeit der Dokumentstruktur
  • Sichtbarkeit des Parameterbereichs
  • Sichtbarkeit der Symbolleiste
  • Suchinformationen
  • Datenstrominformationen
  • Zoominformationen
  • Die anzuzeigende Lesezeichen-ID
  • Das Ziel für Hyperlinks

Weitere Informationen zu den Geräteinformationseinstellungen finden Sie unter Reporting Services Device Information Settings.

In diesem Abschnitt

  • MHTML-Berichte
    Beschreibt, wie MHTML-Berichte von der HTML-Renderingerweiterung gerendert werden.

Siehe auch

Konzepte

Entwurfsaspekte für das Rendern von Berichten
Exportieren von Berichten

Andere Ressourcen

Implementing a Rendering Extension
HTML-Viewer (Reporting Services)
Specifying a Rendering Format in a URL

Hilfe und Informationen

Informationsquellen für SQL Server 2005

Änderungsverlauf

Version Verlauf

14. April 2006

Neuer Inhalt:
  • Sicherheitshinweis