eBizTalk - Berichten, Unterhalten, Weiterbilden
Ob Branchendiskurs, Fachartikel oder ein Blick hinter die Unternehmenskulissen: eBizTalk ist die Plattform, die uns auffordert, unsere Leser über Events und Projekte auf dem Laufenden zu halten. Und uns gegenseitig natürlich auch.

Microsoft Office Automation – Der erste Kontakt

Veröffentlicht am 01.05.2016 von Alexander Müller , Automation , Custom Development

Um die Qualität und Geschwindigkeit bei der Erstellung häufig benötigter Dokumente im Unternehmen zu verbessern, hat eBiz sich mit dem Thema Microsoft Office Automation auseinandergesetzt. In diesem Kontext haben wir die verschiedenen Erweiterungsmöglichkeiten von Microsoft Office näher betrachtet und die gewonnenen Erkenntnisse in diesem Beitrag zusammengefasst.

Das Schreiben von Firmendokumenten wie Rechnungen oder Verträge kann schnell zu einer zeitfressenden Aufgabe werden, sodass andere wichtige Themen in den Hintergrund gedrängt werden. Zusätzlich schleichen sich leicht Fehler ein, vor allem, wenn Dokumente unter Zeitdruck verfasst werden. Um dem entgegenzusteuern, haben wir untersucht, auf welche Weise eine automatische Generierung solcher Dokumente mit Microsoft Office erreicht werden kann.

Erweiterung von Microsoft Office

eBiz setzt, wie die Mehrzahl der Unternehmen, auf die Office Suite aus dem Hause Microsoft. Um diese zu erweitern, bietet Microsoft verschiedene Modelle an, die unter dem Begriff Office Add-Ins geführt und im Speziellen in die drei folgenden Typen untergliedert werden:

  • COM-Add-Ins

    Seit Office 97 lassen sich Office-Anwendungen durch Component Object Model (COM) Add-Ins erweitern. Diese Möglichkeit besteht bis heute, wird aber seit der Einführung der “bequemeren” Visual Studio Tools for Office (VSTO)-Add-Ins selten genutzt.

  • VSTO-Add-Ins

    VSTO-Add-Ins wurden mit Office 2003 eingeführt und erlauben die Entwicklung von Add-Ins unter Verwendung der .NET Plattform und bspw. C# oder VB.NET. Dabei werden aus einer verwalteten Laufzeitumgebung über Primary Interop Assembly (PIA) die Office COM-Schnittstellen verwendet.

  • Office Web-Add-Ins

    Der jüngste Add-In-Typ ermöglicht die Office-Entwicklung mit aktuellen Webtechnologien und ist ab Office 2013 verfügbar. Der Weg soll zukünftig weg vom proprietären Visual Basic for Applications (VBA) und “schwergewichtigen” Add-In-Typen hin zu den weitverbreiteten, webbasierten Sprachen (HTML, CSS, JavaScript usw.) führen. Dazu hat Microsoft eine JavaScript API veröffentlicht und ermöglicht damit die Integration von Web-Inhalten in Office Client-Anwendungen.

Die Qual der Wahl

Die Wahl des geeigneten Typs ist abhängig von den technischen und fachlichen Anforderungen, die an das Add-In gestellt werden. Auch der Bedarf an zukünftigen, zusätzlichen Features muss abgeschätzt werden, da ein nachträglicher Typen-Wechsel eine Neuimplementierung erfordert.

Ein Office Web-Add-In ist dann gut geeignet, wenn

  • Daten mit Webkomponenten visualisiert werden sollen,
  • Inhalte des Dokuments rudimentär verändert werden sollen,
  • das Add-In möglichst einfach verteilt werden soll (Office Store) oder/und
  • Know-How in der Webentwicklung vorhanden ist.

Aber sie unterliegen auch einigen Einschränkungen, die bei der Entscheidung berücksichtigt werden müssen. So lassen sich beispielsweise nur einfache Vorgänge innerhalb des Dokuments automatisieren, und ein Zugriff auf das Host-System ist gar nicht möglich. Dadurch kann ein Großteil der klassischen Office Automatisierungsthemen nicht bedient werden.

Gerade für diese Themen eigenen sich VSTO- und COM-Add-Ins hervorragend, da sie fast uneingeschränkten Zugriff auf die Host-Anwendung bieten und somit Funktionen der Client-Anwendung aufrufen können. Da sie ein gleichwertiges Objekt-Modell verwenden, fällt eine Entscheidung für oder gegen einen der beiden Typen meist auf technischer Argumentationsbasis. Da VSTO-Add-Ins das modernere Programmierkonzept bieten, gehen sie in der Regel als Präferenz hervor.

Fazit

Durch die Einschränkungen der JavaScript Office API, insbesondere was das Thema Automation angeht, ist ein Web-Add-In häufig ungeeignet. Dennoch ist dieser Ansatz durchaus vielversprechend und die zukünftige Entwicklung interessant. Eine Roadmap seitens Microsoft wäre jedoch angebracht. Bei komplexen Anforderungen ist es sinnvoll, direkt ein VSTO-Add-In zu verwenden, um nicht über technische Limitierungen von Web-Add-Ins zu stolpern. Diesen Weg haben auch wir eingeschlagen, und wir haben ihn bisher nicht bereut!

google_about_ebiz fb_about_ebiztwitter_about_ebizxing_about_ebiz
ebiz_consulting_expertise