Zentrale 
Dokumentengenerierung 
mit dem Open XML SDK 
André Krämer 
Softwareentwickler, Trainer, Berater
Video Auszeichnungen Trainings Zertifizierungen
Herausforderung 
• Unternehmen erzeugen täglich 
individualisierte elektronische 
Dokumente in hoher Stückzahl 
• Angebote...
Lösungsansatz: Manuelles Erstellen 
• Zeitaufwändig 
• Mitarbeiter stehen in dieser Zeit nicht für wichtigere Aufgaben zur...
Lösungsansatz: Word Automatisierung 
• Sehr beliebt Ende der 90er 
• Setzt ein installiertes Word voraus 
• Scheidet auf d...
Office Open XML 
• Offener Standard (ECMA-376) seit 2006 
• Word, Excel, PowerPoint 
• WordProcessingML 
• SpreadsheetML 
...
Office Open XML 
• Zip Container 
• Enthält XML und binäre Inhalte in einer Ordner-Struktur
Demo
Aufbau Open XML 
ZIP Container 
[Content_ 
Types] 
docProps 
app/core 
Title, Author, 
Application 
word 
document 
w:docu...
Zugriff auf das Dokument per Quellcode 
(lesend) 
• Entpacken der Datei 
• Entsprechende XML Datei in XmlDocument laden 
•...
Zugriff auf das Dokument per Quellcode 
(lesend) 
• Entpacken der Datei 
• Entsprechende XML Datei in XmlDocument laden 
•...
Lösungsansatz: Microsoft Open XML SDK 
• Wrapper um das ECMA-376 Office Open XML Dateiformat 
• Liest und schreibt .docx 
...
Demo 
Open XML SDK Productivity Tool 
(Quellcode: Siehe http://andrekraemer.de)
Demo 
Dokumenteigenschaften auslesen 
(Quellcode: Siehe http://andrekraemer.de)
Notwendige Referenzen
string fileName = @"C:DemoDocsHallo Basta.docx"; 
using (var document = WordprocessingDocument.Open(fileName, false)) 
{ 
...
Demo 
Neues Dokument erzeugen 
(Quellcode: Siehe http://andrekraemer.de)
Demo 
Text eines Dokuments auslesen 
(Quellcode: Siehe http://andrekraemer.de)
Demo 
Teilnehmerliste 
(Quellcode: Siehe http://andrekraemer.de)
Demo 
Teilnehmerliste (Verbessert) 
(Quellcode: Siehe http://andrekraemer.de)
Demo 
Schulungszertifikat 
(Quellcode: Siehe http://andrekraemer.de)
Fazit
Open XML SDK 
• Manipulation von Dokumenten ohne installiertes Word möglich 
• Sehr performant (Dokumente mit mehreren 100...
Open XML SDK 
• Reiner Wrapper um das Dateiformat, nicht um die Word 
Oberfläche! 
• Der Entwickler benötigt Wissen über d...
Grenzen des Open XML SDK 
• Zugriff auf das Word UI 
• Konvertierung von Dokumenten (PDF, DOC, RTF, HTML) 
• Extrahieren v...
Alternative
Vielen Dank! 
Homepage 
Blog 
Xing 
Facebook 
Twitter 
Google+ 
andre@andrekraemer.de | http://andrekraemer.de | http://an...
Zentrale Dokumentengenerierung mit dem Open XML SDK
Zentrale Dokumentengenerierung mit dem Open XML SDK
Zentrale Dokumentengenerierung mit dem Open XML SDK
Zentrale Dokumentengenerierung mit dem Open XML SDK
Zentrale Dokumentengenerierung mit dem Open XML SDK
Zentrale Dokumentengenerierung mit dem Open XML SDK
Nächste SlideShare
Wird geladen in …5
×

Zentrale Dokumentengenerierung mit dem Open XML SDK

2.321 Aufrufe

Veröffentlicht am

Ob Rechnung, Teilnahmebescheinigung, Urlaubsantrag, Tätigkeitsnachweis oder Artikelstückliste: Heutzutage gibt es unzählige standardisierte Dokumente, die Tag für Tag in Unternehmen erstellt werden. Dass die manuelle Erzeugung keine Alternative ist, dürfte jedem klar sein. Schließlich bindet sie unnötige Ressourcen und ist fehleranfällig. Doch wie sieht die Alternative aus? VSTO oder sogar Word Automatisierung, so wie man es in den 90ern gemacht hat? In diesem Vortrag werden Sie eine weitere Alternative für die serverseitige Dokumentengenerierung kennen lernen: Das Microsoft Office Open XML SDK. Nach einem kurzen Überblick über den Aufbau und den Funktionsumfang des SDKs werden Sie Anhand von praxisnahen Live Demos erfahren, wie Sie kostenlos Word Kompatible (*.docx) Dokumente erzeugen können. Dabei werden Sie jedoch nicht nur erfahren, was alles geht, sondern auch wo die Grenzen sind.

Veröffentlicht in: Software
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
2.321
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
1.344
Aktionen
Geteilt
0
Downloads
5
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Zentrale Dokumentengenerierung mit dem Open XML SDK

  1. 1. Zentrale Dokumentengenerierung mit dem Open XML SDK André Krämer Softwareentwickler, Trainer, Berater
  2. 2. Video Auszeichnungen Trainings Zertifizierungen
  3. 3. Herausforderung • Unternehmen erzeugen täglich individualisierte elektronische Dokumente in hoher Stückzahl • Angebote • Rechnungen • Teilnehmerzertifikate • Einladungsschreiben • ….
  4. 4. Lösungsansatz: Manuelles Erstellen • Zeitaufwändig • Mitarbeiter stehen in dieser Zeit nicht für wichtigere Aufgaben zur Verfügung • Fehleranfällig
  5. 5. Lösungsansatz: Word Automatisierung • Sehr beliebt Ende der 90er • Setzt ein installiertes Word voraus • Scheidet auf dem Server aus • Anwender benötigt spezielle Word- Version • Läuft selten stabil
  6. 6. Office Open XML • Offener Standard (ECMA-376) seit 2006 • Word, Excel, PowerPoint • WordProcessingML • SpreadsheetML • PresentationML • De facto Standard für Austauschformate
  7. 7. Office Open XML • Zip Container • Enthält XML und binäre Inhalte in einer Ordner-Struktur
  8. 8. Demo
  9. 9. Aufbau Open XML ZIP Container [Content_ Types] docProps app/core Title, Author, Application word document w:document w:body w:run styles Styles Tab positions rels rels
  10. 10. Zugriff auf das Dokument per Quellcode (lesend) • Entpacken der Datei • Entsprechende XML Datei in XmlDocument laden • Passende Knoten über XPath-Queries suchen.
  11. 11. Zugriff auf das Dokument per Quellcode (lesend) • Entpacken der Datei • Entsprechende XML Datei in XmlDocument laden • Passende Knoten über XPath-Queries suchen.
  12. 12. Lösungsansatz: Microsoft Open XML SDK • Wrapper um das ECMA-376 Office Open XML Dateiformat • Liest und schreibt .docx • Benötigt kein installiertes Word • Wird auf dem Server unterstützt
  13. 13. Demo Open XML SDK Productivity Tool (Quellcode: Siehe http://andrekraemer.de)
  14. 14. Demo Dokumenteigenschaften auslesen (Quellcode: Siehe http://andrekraemer.de)
  15. 15. Notwendige Referenzen
  16. 16. string fileName = @"C:DemoDocsHallo Basta.docx"; using (var document = WordprocessingDocument.Open(fileName, false)) { string author = document.PackageProperties.Creator; Console.WriteLine(author); }
  17. 17. Demo Neues Dokument erzeugen (Quellcode: Siehe http://andrekraemer.de)
  18. 18. Demo Text eines Dokuments auslesen (Quellcode: Siehe http://andrekraemer.de)
  19. 19. Demo Teilnehmerliste (Quellcode: Siehe http://andrekraemer.de)
  20. 20. Demo Teilnehmerliste (Verbessert) (Quellcode: Siehe http://andrekraemer.de)
  21. 21. Demo Schulungszertifikat (Quellcode: Siehe http://andrekraemer.de)
  22. 22. Fazit
  23. 23. Open XML SDK • Manipulation von Dokumenten ohne installiertes Word möglich • Sehr performant (Dokumente mit mehreren 100 Seiten in weniger als 5 Minuten) • Gut Dokumentiert 
  24. 24. Open XML SDK • Reiner Wrapper um das Dateiformat, nicht um die Word Oberfläche! • Der Entwickler benötigt Wissen über die internen Word Strukturen • Auch „einfache“ Aufgaben sind in der Umsetzung sehr aufwändig • Defensive Programmierung ist wichtig!
  25. 25. Grenzen des Open XML SDK • Zugriff auf das Word UI • Konvertierung von Dokumenten (PDF, DOC, RTF, HTML) • Extrahieren von Bildern • Automatische Aktualisierung von Feldern (z. B. Fußnotennummerierung) • Drucken
  26. 26. Alternative
  27. 27. Vielen Dank! Homepage Blog Xing Facebook Twitter Google+ andre@andrekraemer.de | http://andrekraemer.de | http://andrekraemer.de/blog 33 Schulung und Beratung mit den Schwerpunkten: • Windows 8 und Windows Phone Apps • ASP.NET MVC, Web API & JavaScript • Team Foundation Server / ALM • Automatische Dokumentengenerierung mit TX Text Control • Performance- & Memory Analysen • Softwarearchitektur

×