Exportieren nach Microsoft Excel (Berichts-Generator 2.0)
Die Excel-Renderingerweiterung rendert einen Bericht, der mit Microsoft Excel 97 und höher kompatibel ist. Der Bericht wird in eine Excel-Kalkulationstabelle exportiert, wobei einige Elemente des Layouts sowie des ursprünglichen Entwurfs entfernt werden. Diese Änderungen werden in diesem Thema beschrieben. Das Format für Berichte, die als Microsoft Excel gerendert werden, ist Binary Interchange File Format (BIFF). Der Inhaltstyp von Dateien, der von diesem Renderer generiert wird, ist application/vnd.ms-excel. Die Erweiterung des Dateinamens bei Dateien, die von diesem Renderer generiert wird, lautet XLS.
Sicherheitshinweis |
---|
Wenn Sie einen Parameter vom Typ String definieren, wird den Benutzern ein Textfeld angezeigt, das jeden beliebigen Wert annehmen kann. Wenn ein Berichtsparameter nicht an einen Abfrageparameter gebunden ist und die Parameterwerte im Bericht enthalten sind, können Benutzer des Berichts Ausdruckssyntax, ein Skript oder eine URL in den Parameterwert eingeben und den Bericht für Excel rendern. Wenn anschließend ein anderer Benutzer den Bericht anzeigt und auf die gerenderten Parameterinhalte klickt, führt der Benutzer möglicherweise unbeabsichtigt das bösartige Skript bzw. den bösartigen Link aus. |
Wenn Sie das Risiko des unbeabsichtigten Ausführens von böswilligen Skripts minimieren möchten, öffnen Sie gerenderte Berichte nur über vertrauenswürdige Quellen. Weitere Informationen zum Sichern von Berichten finden Sie unter Sichern von Berichten und Ressourcen.
Berichtselemente in Excel
Rechtecke, Unterberichte, der Hauptteil des Berichts und Datenbereiche werden als Bereich von Excel-Zellen gerendert. Textfelder, Bilder und Diagramme müssen innerhalb einer Excel-Zelle gerendert werden. Abhängig vom Layout des restlichen Berichts kann diese möglicherweise zusammengeführt werden.
Bilder, Diagramme und Linien werden innerhalb einer Excel-Zelle positioniert, befinden sich jedoch eine Ebene über dem Zellenraster. Linien werden als Zellrahmen gerendert.
Paginierung
Dieser Renderer unterstützt nur logische Seitenumbrüche. Für jeden explizit definierten logischen Seitenumbruch wird eine neue Excel-Arbeitsblatt-Registerkarte erstellt.
Seitenbenennung
Falls die Arbeitsmappe mit Ausnahme der Dokumentstruktur aus nur einem Arbeitsblatt besteht, entspricht der Name des Arbeitsblatts dem des Berichtsnamens.
Falls die Arbeitsmappe mit Ausnahme der Dokumentstruktur aus mehreren Arbeitsblättern besteht, werden die Arbeitsblätter mit der Bezeichnung TabelleX benannt, wobei X für die Nummer der Tabelle in der Arbeitsmappe steht. Das fünfte Arbeitsblatt wird also mit der Bezeichnung Tabelle5 benannt.
Anpassen der Seitengröße
Die Excel-Renderingerweiterung verwendet die Einstellungen zur Seitenhöhe und -breite, um zu ermitteln, welche Papiereinstellung im Excel-Arbeitsblatt definiert werden soll. Excel versucht, die Eigenschaftseinstellungen PageHeight und PageWidth mit einer der gebräuchlichsten Papiergrößen abzugleichen.
Wenn keine Übereinstimmungen gefunden werden, verwendet Excel die Standardseitengröße für den Drucker. Falls die Papierbreite kleiner als die Papierhöhe ist, wird die Ausrichtung auf Hochformat festgelegt, andernfalls auf Querformat.
Dokumenteigenschaften
Der Excel-Renderer schreibt die folgenden Metadaten in die Excel-Datei.
Berichtselementeigenschaften |
Beschreibung |
---|---|
Erstellt |
Datum und Zeit der Berichtsausführung als Datums-/Uhrzeitwert im ISO-Format. |
Autor |
Autor des Berichts |
Beschreibung |
Berichtsbeschreibung |
LastSaved |
Datum und Zeit der Berichtsausführung als Datums-/Uhrzeitwert im ISO-Format. |
Seitenkopf- und -fußzeilen
Abhängig von der Einstellung Geräteinformationen SimplePageHeaders kann der Seitenkopf auf zwei Arten gerendert werden: Er kann entweder oben auf jedem Arbeitsblattzellenraster oder im eigentlichen Excel-Arbeitsblatt-Kopfzeilenabschnitt gerendert werden. Standardmäßig wird der Seitenkopf zum Zellenraster auf dem Excel-Arbeitsblatt gerendert.
Der Seitenfuß wird unabhängig vom Wert der Einstellung SimplePageHeaders immer auf dem eigentlichen Excel-Arbeitsblatt-Footerabschnitt gerendert.
Excel-Kopf- und -Fußzeilenabschnitte unterstützen einschließlich Markup ein Maximum von 256 Zeichen. Falls diese Grenze überschritten wird, entfernt der Excel-Renderer vom Ende der Zeichenfolge des Seitenkopfs und/oder Seitenfußes her Markupzeichen, um die Anzahl der Zeichen insgesamt zu verringern. Falls alle Markupzeichen entfernt werden und die Länge noch immer über der maximal zulässigen liegt, wird die Zeichenfolge von rechts her abgeschnitten.
SimplePageHeader-Einstellungen
Standardmäßig wird die Einstellung Geräteinformationen SimplePageHeaders mit False festgelegt. Daher werden die Seitenköpfe im Bericht auf der Excel-Arbeitsblattoberfläche als Zeilen gerendert. Die Arbeitsblattzeilen, die die Kopfzeilen enthalten, werden gesperrte Zeilen. Sie können den Bereich in Excel fixieren oder die Fixierung des Bereichs aufheben. Bei ausgewählter Option Titel drucken wird automatisch festgelegt, dass diese Kopfzeilen auf jeder Arbeitsblattseite ausgedruckt werden.
Wenn in Excel die Option Titel drucken auf der Registerkarte Seitenlayout ausgewählt ist, wird der Seitenkopf außer auf dem Dokumentstrukturdeckblatt oben auf jedem Arbeitsblatt in der Arbeitsmappe wiederholt. Wenn im Dialogfeld Berichtskopfeigenschaften bzw. Berichtsfußeigenschaften die Option Auf erster Seite drucken bzw. Auf letzter Seite drucken nicht ausgewählt ist, wird die Kopfzeile nicht zur ersten bzw. letzten Seite hinzugefügt.
Seitenfüße werden im Excel-Fußzeilenabschnitt gerendert.
Aufgrund von Einschränkungen in Excel können in Excel-Kopf- und -Fußzeilenabschnitten ausschließlich Textfelder als Berichtselement angezeigt werden.
Interaktivität
Einige interaktive Elemente werden in Excel unterstützt. Im Folgenden werden spezifische Funktionsweisen beschrieben.
Einblenden und Ausblenden
Microsoft Excel weist Einschränkungen auf, wie ausgeblendete und angezeigte Berichtselemente beim Exportieren verwaltet werden. Gruppen, Zeilen und Spalten, die Berichtselemente enthalten, die ein- und ausgeschaltet werden können, werden als Excel-Gliederungen gerendert. Excel erstellt Gliederungen, die Zeilen und Spalten über die gesamte Zeile oder Spalte hinweg erweitern oder reduzieren. Dadurch können unter Umständen Berichtselemente reduziert werden, die nicht zum Reduzieren vorgesehen sind. Darüber hinaus können die Gliederungssymbole von Excel übermäßig viele sich überschneidende Gliederungen enthalten. Beim Verwenden der Excel-Renderingerweiterung werden daher die folgenden Gliederungsregeln angewendet, um diese Probleme zu vermeiden:
Das Berichtselement oben links, das ein- und ausgeschaltet werden kann, kann in Excel weiterhin ein- und ausgeschaltet werden. Berichtselemente, die ein- und ausgeschaltet werden können und einen gemeinsamen horizontalen oder vertikalen Bereich mit dem Berichtselement aufweisen, das oben links ein- und ausgeschaltet werden kann, können in Excel nicht ein- und ausgeschaltet werden.
Um zu ermitteln, ob ein Datenbereich zeilen- bzw. spaltenweise reduzierbar ist, wird die Position des Berichtselements ermittelt, das das Ein-/Ausschalten und die Position des Berichtselements steuert, das ein- und ausgeschaltet wird. Falls das Element, das das Ein-/Ausschalten steuert, vor dem ein- bzw. auszublendenden Element auftritt, kann das Element zeilenweise reduziert werden. Andernfalls ist das Element spaltenweise reduzierbar. Falls das Element, das das Ein-/Ausschalten steuert, zu gleichen Teilen neben und über dem ein- bzw. auszublendenden Bereich auftritt, wird das Element mit Zeilen gerendert, die zeilenweise reduziert werden können.
Um zu ermitteln, ob die Teilergebnisse im gerenderten Bericht platziert werden, überprüft die Renderingerweiterung die erste Instanz eines dynamischen Elements. Falls direkt darüber ein statisches Peerelement auftritt, wird davon ausgegangen, dass es sich beim dynamischen Element um die Teilergebnisse handelt. Gliederungen werden festgelegt, um anzugeben, dass es sich dabei um Zusammenfassungsdaten handelt. Falls keine statisch gleichgeordneten Elemente eines dynamischen Elements vorhanden sind, ist die erste Instanz der Instanz das Teilergebnis.
Aufgrund einer Einschränkung in Excel können geschachtelte Gliederungen nur bis zu 7 Ebenen aufweisen.
Dokumentstruktur
Wenn im Bericht Dokumentstrukturbezeichnungen vorhanden sind, wird eine Dokumentstruktur gerendert. Die Dokumentstruktur wird als Excel-Deckarbeitsblatt gerendert, das an der Position der ersten Registerkarte in die Arbeitsmappe eingefügt wird. Das Arbeitsblatt wird Dokumentstruktur genannt.
Der in der Dokumentstruktur angezeigte Text wird von der DocumentMapLabel-Eigenschaft des Berichtselements oder der Gruppe bestimmt. Dokumentstrukturbezeichnungen werden in der Reihenfolge aufgeführt, in der sie, angefangen bei der ersten Zeile, in der ersten Spalte im Bericht auftreten. Jede Dokumentstruktur-Bezeichnungszelle wird um die Anzahl der Ebenen eingerückt, an der sie im Bericht auftritt. Jede Einzugsebene wird dargestellt, indem die Bezeichnung in einer nachfolgenden Spalte einfügt wird. Excel unterstützt bis zu 256 Ebenen der Gliederungsschachtelung.
Die Dokumentstrukturgliederung wird als reduzierbare Excel-Gliederung gerendert. Die Gliederungsstruktur stimmt mit der geschachtelten Struktur der Dokumentstruktur überein. Die Gliederung kann ab der zweiten Ebene erweitert und reduziert werden.
Der Stammknoten der Struktur entspricht dem Berichtsnamen (<reportname>.rdl), der nicht interaktiv ist. Die Schriftart des Dokumentstrukturlinks ist Arial, 10pt.
Drillthroughlinks
In Textfeldern enthaltene Drillthroughlinks werden in der Zelle als Excel-Hyperlinks gerendert, in die der Text gerendert wird. Drillthroughlinks für Bilder und Diagramme werden beim Rendern als Excel-Hyperlinks auf dem Bild gerendert. Beim Klicken auf den Drillthroughlink wird der Standardbrowser des Clients geöffnet und zur HTML-Ansicht des Ziels navigiert.
Hyperlinks
In Textfeldern enthaltene Hyperlinks werden in der Zelle als Excel-Hyperlinks gerendert, in die der Text gerendert wird. Hyperlinks für Bilder und Diagramme werden beim Rendern als Excel-Hyperlinks auf dem Bild gerendert. Beim Klicken auf den Hyperlink wird der Standardbrowser des Clients geöffnet und zur HTML-Ansicht der Ziel-URL navigiert.
Interaktives Sortieren
Excel unterstützt keine interaktive Sortierung.
Lesezeichen
Lesezeichenlinks in Textfeldern werden in der Zelle als Excel-Hyperlinks gerendert, in die der Text gerendert wird. Lesezeichenlinks für Bilder und Diagramme werden beim Rendern als Excel-Hyperlinks auf dem Bild gerendert. Durch Klicken auf das Lesezeichen wird zur Excel-Zelle gewechselt, in der das mit Lesezeichen versehene Berichtselement gerendert wird.
Rendern von Formaten in Excel
Im Folgenden wird kurz beschrieben, wie Elemente in Excel gerendert werden.
Farbpalette
Excel unterstützt eine Palette von bis zu 56 Farben. Die ersten im Bericht verwendeten 56 eindeutigen Farben werden in einer benutzerdefinierten Palette definiert. Falls mehr als 56 Farben im Bericht verwendet werden, gleicht die Renderingerweiterung die erforderliche Farbe mit einer der 56 bereits in der Palette vorhandenen Farben ab. Der Farbanpassungsalgorithmus von Excel wird verwendet, um Farben mit einer bereits in der Palette vorhandenen abzugleichen.
Einschränkungen in Excel
Aufgrund der in BIFF zur Verfügung stehenden Formatfähigkeiten treten in Excel Einschränkungen bei exportierten Berichten auf. Die wichtigsten Einschränkungen sind folgende:
Die maximale Anzahl an Zeilen in einem Arbeitsblatt ist auf 65.536 beschränkt. Wenn diese Einschränkung überschritten wird, zeigt der Renderer eine Fehlermeldung an.
Die maximale Anzahl an Spalten in einem Arbeitsblatt ist auf 256 beschränkt. Wenn diese Einschränkung überschritten wird, zeigt der Renderer eine Fehlermeldung an.
Die maximale Spaltenbreite ist auf 255 Zeichen bzw. 1726,5 Punkte beschränkt. Der Renderer prüft nicht, ob die Spaltenbreite unterhalb der Grenze liegt.
Die maximale Zeilenhöhe beträgt 409 Punkte. Falls die Zeilenhöhe aufgrund des Zeileninhalts 409 Punkte überschreitet, wird der Inhalt aufgeteilt und stattdessen zur nächsten Zeile hinzugefügt.
Die maximale Anzahl an Zeichen in einer Zeile ist auf 32.767 Zeichen beschränkt. Wenn diese Einschränkung überschritten wird, zeigt der Renderer eine Fehlermeldung an.
Hinweis Im Arbeitsblatt werden in einer Excel-Zelle ca. 1000 Zeichen angezeigt. Es können jedoch Zeichen bis zur maximalen Anzahl in der Bearbeitungsleiste bearbeitet werden.
Die maximale Anzahl an Arbeitsblättern wird nicht in Excel definiert. Stattdessen können externe Faktoren wie der Arbeitsspeicher und der Speicherplatz dazu führen, dass Einschränkungen auftreten.
Textfeldwerte, die Ausdrücke sind, werden nicht in Excel-Formeln konvertiert. Der Wert jedes Textfelds wird während der Berichtsverarbeitung ausgewertet. Der ausgewertete Ausdruck wird als Inhalt jeder Excel-Zelle exportiert.
Wenn Zellen zusammengeführt werden, funktioniert der Zeilenumbruch nicht ordnungsgemäß. Falls zusammengeführte Zellen in einer Zeile vorhanden sind, in der ein Textfeld mit der Eigenschaft AutoSize gerendert wird, wird diese Eigenschaft nicht angewendet.
Hintergrundbilder für Berichtselemente werden ignoriert, da Excel keine Hintergrundbilder für einzelne Zellen unterstützt.
Textfelder werden innerhalb einer Excel-Zelle gerendert. Schriftgrad, Schriftart, Schriftdekoration und Schriftschnitt sind die einzigen Formatierungen, die für einzelne Textabschnitte innerhalb einer Excel-Zelle unterstützt werden.
Der Texteffekt Überlagernde Linie wird in Excel nicht unterstützt.
Excel-Kopf und -Fußzeilen unterstützen einschließlich Markup ein Maximum von 256 Zeichen. Die Renderingerweiterung schneidet die Zeichenfolge bei 256 Zeichen ab.
In Gliederungen ermöglicht Excel maximal sieben geschachtelte Ebenen.
Falls sich das Berichtselement, das steuert, ob ein anderes Element ein- oder ausgeschaltet wird, nicht in der vorherigen bzw. nächsten Zeile oder Spalte des Elements befindet, das ein- oder ausgeschaltet wird, wird die Gliederung ebenfalls deaktiviert.
Die Excel-Renderingerweiterung unterstützt nur das Hintergrundbild des Hauptteils des Berichts. Falls das Hintergrundbild des Hauptteils eines Berichts im Bericht angezeigt wird, wird das Bild als Arbeitsblatt-Hintergrundbild gerendert.
Excel fügt einen Standardtextabstand von ungefähr 3,75 Punkten links und rechts von den Zellen hinzu. Falls die Textabstandeinstellungen eines Textfelds unter 3,75 Punkten liegen und der Text kaum aufgenommen werden kann, wird dieser in Excel unter Umständen umbrochen.
Hinweis Verbreitern Sie das Textfeld im Bericht, um dieses Problem zu umgehen.
Geräteinformationseinstellungen
Sie können einige Standardeinstellungen für diesen Renderer ändern, indem Sie die Geräteinformationseinstellungen ändern. Weitere Informationen finden Sie unter Geräteinformationseinstellungen in Reporting Services.
Siehe auch