Power Automate Flow – Werte aus SharePoint Liste in ein Word-Dokument einfügen und in PDF konvertieren

Die Ausgangslage für diesen Blog beschäftigt mich seit längerer Zeit. Daten aus unterschiedlichsten Quellen verwenden, um diese in ein Word-Dokument einzufügen, um anschließend eine PDF-Datei zu generieren. Das Vorhaben ist nicht besonders kompliziert, leider scheiterte es in der Vergangenheit mehrfach daran, dass die Dokumentkonvertierung nicht mittels Power Automate Aktion vom Erfolg gekrönt war, somit deren Verwendung im Flow Fehler verursachte, da diese Aktion als (Vorschau) deklariert war und noch bis heute (28.02.2024), seit langem weiterhin ist.

Heute machte ich mich erneut daran, es umzusetzen, und war erstaunt, dass es sowohl mit dem neuen als auch mit dem klassischen Power Automate Designer ohne Probleme gelang!

Der nachfolgend beschriebene Flow hat die Aufgabe nach dem Erstellen eines Eintrags in einer SharePoint Liste daraus beliebige Daten in eine Word-Vorlagen-Datei in vorgefertigte Felder einzufügen, diese anschließend sowohl in SharePoint als auch auf OneDrive for Business zu speichern, um letztlich die Word-Datei in eine PDF-Datei zu konvertieren.

Nachfolgend ist der Flow inkl. zugehöriger Aktionen abgebildet.

clip_image002

Die Übersicht der einzelnen Aktionen.

Der Trigger: „Wenn ein Element erstellt wird

Definition der Websiteadresse und des Listennamens.

clip_image004

Die zweite Aktion hat einen kleinen Haken, es ist eine Premium-Aktion, d.h. hierfür wird eine kostenpflichtige Power Automate Premium Lizenzierung fällig. Diese ist für jeden User erforderlich, der mit diesem Flow arbeitet, sowohl für den Ersteller als auch für alldiejenigen die diesen verwenden.

clip_image006

Die Aktion „Microsoft Word-Vorlage auffüllen“ bestimmt per „Speicherort“ die Microsoft 365 Gruppe, anders gesprochen handelt es sich um einen SharePoint „Teamwebsite“ der automatisch mit einer M365 Gruppe als Ressource verbunden ist.

Hinweis: Die von mir vorbereitete Word-Datei ist sehr einfach gehalten, sie besteht aus zwei Zeilen Text, um das Prinzip zu erläutern. Wichtig ist, dass die Datei als Word (.docx) auf dem SharePoint in einer beliebigen Bibliothek gespeichert wird, nicht als (.dotx).

Weiterhin ist es wichtig zu beachten, dass sich innerhalb der Datei richtig formatierte Felder (Steuerelemente) befinden. Richtig bedeutet, per Registerkarte „Entwicklertools“ hinzugefügte Inhaltssteuerelemente.

clip_image008

In dem Beispieldokument befindet sich das Steuerelement „Nur Text“ als Antwort-Feld.

clip_image010

Word-Dokumente enthalten überwiegend Textplatzhalter, insofern ist darauf zu achten, dass die im Dokument eingefügten Steuerelemente vom TypNur Text“ verwendet werden, nichtRich Text“, da es ansonsten scheitert, ansonsten erscheint das Feld leider nicht als Auswahl in der Aktion auf, siehe Screenshot.

clip_image011

Ist das befolgt worden, ist der Rest recht einfach. Es geht weiter mit der Aktion
„Datei erstellen“

clip_image013

Die Websiteadresse für den Speicherort der ausgefüllten Word-Datei, Ordnerpfad, Dateiname und schließlich die Angabe von Dateiinhalt. Den Dateiinhalt liefert die zuvor ausgeführte Aktion „Microsoft Word-Vorlage auffüllen“ als „Microsoft Word-Dokument“ per Dynamischer Inhalt.

clip_image015

Nach dem Erstellen der Word-Datei im SharePoint, ist es für die Konvertierung der Datei ins PDF-Format erforderlich, sie auf OneDrive für Business zu speichern. Die Aktion „Datei erstellen“ (ODB) wird verwendet.

clip_image017

In dieser Aktion geschieht nahezu das Gleiche wie in der vorherigen. Ordnerpfad Angabe als Speicherort, frei wählbarer Dateiname (ID und Title.docx) in meinem Fall. Dateiinhalt analog zum SharePoint.

Nun folgt die Konvertierung mittels Aktion „Datei konvertieren“ (ODB).

clip_image019

Die Datei wird über „ID“, die aus der vorherigen Aktion als dynamischer Inhalt verwendet wird, eingesetzt. Der „Zieltyp“ lautet „PDF“.

Abschließend habe ich noch eine weitere Aktion „Datei erstellen“ in SharePoint eingefügt, damit die PDF-Datei außer in OneDrive für Business (ODB) zusätzlich auch auf dem SharePoint abgespeichert wird.

clip_image021

Angaben wie Websiteadresse, Ordnerpfad, Dateiname und Dateiinhalt wiederholen sich. Wobei die vorherige Aktion „Datei konvertieren“ mir per „dynamischer Inhalt“ die Verknüpfung (Dateiname und Dateiinhalt) liefert.

clip_image023

Damit ist der Flow fertig und einsatzbereit. Er funktioniert ohne Fehler!

Kommentare sind geschlossen