In Flow gibt es noch keine Aktion, um auf den Versionsverlauf von SharePoint-Listenelementen (oder Dokumenten) zuzugreifen. Wie können wir also zu älteren Versionen eines Listenelements in Flow gelangen, einschließlich aller alten Spaltenwerte? Ein Kunde hat heute gefragt, ob es eine Möglichkeit gibt, mit einem Flow zu erkennen, ob sich eine bestimmte Spalte geändert hat (bei Artikeländerung), und dann … Dinge zu tun.
Zum Glück haben wir alles, was wir brauchen, um dies mit Hilfe unseres besten Freundes zu erreichen: Senden Sie eine HTTP-Anfrage an SharePoint SharePoint ist die Intranetlösung von Microsoft. SharePoint Online SharePoint online (SPO) ist in der Regel in deinem Microsoft 365-Abonnements enthalten, kann aber auch direkt erworben werden. SharePoint Online hat den Vorteil, dass kein eigener Server betrieben werden muss, es fehlen jedoch die Anpassungsoptionen einer selbst gehosteten Installation von SharePoint.SharePoint-Online ist zwar auf Kernfunktionen im Bereich der Zusammenarbeit, des Dokumenten- und Content-Managements sowie... mehr erfahren.
Hier sind die Hauptschritte:
Auslöser für ein Element, das von geändert erstellt wurde, Triggerbedingung hinzufügen, damit es beim Erstellen nicht ausgelöst wird (da dies unnötige Läufe auslöst)
Berechnen Sie die vorherige Versionsnummer, damit wir wissen, nach welcher Version wir suchen müssen
Rufen Sie mithilfe der HTTP-Anforderung alle SharePoint-Listenelementversionen von SharePoint ab
Analysieren Sie das Ergebnis (JSONJavaScript Object Notation wird mit JSON abgekürzt. JSON ist von der Programmiersprache unabhängig und kompakt. Wir setzen JSON-Code zum Formatieren von SharePoint-online ein: Suchergebnisse anzeigen mehr erfahren) aus SharePoint
SharePoint ist die Intranetlösung von Microsoft. SharePoint Online SharePoint online (SPO) ist in der Regel in deinem Microsoft 365-Abonnements enthalten, kann aber auch direkt erworben werden. SharePoint Online hat den Vorteil, dass kein eigener Server betrieben werden muss, es fehlen jedoch die Anpassungsoptionen einer selbst gehosteten Installation von SharePoint.SharePoint-Online ist zwar auf Kernfunktionen im Bereich der Zusammenarbeit, des Dokumenten- und Content-Managements sowie... mehr erfahren
Schleifen Sie alle Versionen und ziehen Sie die gewünschte Version heraus (vorherige Version)
Sachen machen.
Konfigurieren Sie den Trigger mit Bedingung
Gehen Sie zunächst zu den Einstellungen des Triggerschritts:
Fügen Sie dann die folgende Bedingung hinzu, um sicherzustellen, dass der Flow nur ausgeführt wird, wenn die Version NICHT 1.0 ist:
not(contains(triggerBody()?[‘{VersionNumber}’],’1.0′))
Berechnen Sie die vorherige Nummer
Der nächste Schritt besteht darin, die vorherige Zahl mithilfe einer Aktion „Verfassen“ zu berechnen. Wir können dies tun, indem wir den Unterausdruck mit einer verschachtelten int-Funktion verwenden, um die Versionsnummer in eine Ganzzahl zu konvertieren (so dass ’sub‘ zwei Ganzzahlen zum Arbeiten erhält). Und dann fügen wir nach dem Ausdruck einfach „.0“ hinzu, um das richtige Format zu erhalten („2.0“ und nicht nur „2“).
sub(int(triggerBody()?[‘{VersionNumber}’]),1)
Rufen Sie SharePoint
SharePoint ist die Intranetlösung von Microsoft. SharePoint Online SharePoint online (SPO) ist in der Regel in deinem Microsoft 365-Abonnements enthalten, kann aber auch direkt erworben werden. SharePoint Online hat den Vorteil, dass kein eigener Server betrieben werden muss, es fehlen jedoch die Anpassungsoptionen einer selbst gehosteten Installation von SharePoint.SharePoint-Online ist zwar auf Kernfunktionen im Bereich der Zusammenarbeit, des Dokumenten- und Content-Managements sowie... mehr erfahren auf und rufen Sie den Versionsverlauf der SharePoint-Liste ab
Um die Version unseres Listenelements zu erhalten, rufen wir HTTP auf und übergeben die ID des Listenelements. Beachten Sie, dass der Titel der Liste der Anzeigename und nicht der Systemname / die URLEin Uniform Resource Locator identifiziert und lokalisiert eine Ressource, beispielsweise eine Webseite, über die zu verwendende Zugriffsmethode und den Ort der Ressource in Computernetzwerken. mehr erfahren ist. Selbst wenn Sie ein guter Entwickler waren und der Liste den Systemnamen „catvisitorslog“ gegeben haben, um eine schöne und saubere URLEin Uniform Resource Locator identifiziert und lokalisiert eine Ressource, beispielsweise eine Webseite, über die zu verwendende Zugriffsmethode und den Ort der Ressource in Computernetzwerken. mehr erfahren zu erhalten, möchte der HTTP-Aufruf „cat Besucher Log“.
Analysieren Sie das JSON-Ergebnis
Dieser ist etwas kniffliger, wenn Sie zuvor noch nicht mit JSONJavaScript Object Notation wird mit JSON abgekürzt. JSON ist von der Programmiersprache unabhängig und kompakt. Wir setzen JSON-Code zum Formatieren von SharePoint-online ein: Suchergebnisse anzeigen mehr erfahren gearbeitet haben. Bevor Sie die Aktion selbst hinzufügen. Speichern Sie den Flow und führen Sie ihn aus, um zu testen, ob der HTTP-Aufruf zum Abrufen von Versionen funktioniert. Kopieren Sie dann den gesamten JSON-Block aus dem Body-Abschnitt unter den Ausgaben:
Gehen Sie dann zurück, um den Ablauf zu bearbeiten, und fügen Sie die Aktion JSONJavaScript Object Notation wird mit JSON abgekürzt. JSON ist von der Programmiersprache unabhängig und kompakt. Wir setzen JSON-Code zum Formatieren von SharePoint-online ein: Suchergebnisse anzeigen mehr erfahren analysieren hinzu. Fügen Sie den Ausgabetext aus dem HTTP-Aufruf „Versionen abrufen“ als Inhalt hinzu und klicken Sie dann auf „Beispielnutzlast verwenden …“, um den gerade kopierten JSON-Code einzufügen. Dadurch wird dem Flow mitgeteilt, wie die Datenstruktur aussieht und wie sie analysiert wird.
Alle Versionen schleifen und … Sachen tun Unser letzter Schritt besteht darin, die Versionen zu durchlaufen, die wir gerade analysiert haben, zu ermitteln, welche Version wir ziehen möchten, und dann etwas zu tun. In diesem Beispiel speichere ich den Wert der Spalte „Bürostandort“, um zu sehen, wo sich etwas entfernt hat. Erstellen Sie zunächst für jede eine Apply und geben Sie die Ergebnisse aus der „Parse VersionHistory from JSON“ an, da diese alle unsere Versionen enthält. Fügen Sie dann eine Bedingung hinzu, die das VersionLabel aus dem geloopten Element übernimmt (unter „Parse VersionHistory from JSON“), und vergleichen Sie diese mit der Ausgabe des zuvor erstellten Schritts „Calculate PreviousVersionNumber“. Dadurch wird jede Schleife auf die Version überprüft Die Nummer der Schleife ist in der Tat die vorherige Version, auf die wir abzielen möchten. Wenn beispielsweise 4 Versionen des Elements vorhanden sind, wird die Version 1.0, 2.0 durchlaufen und auf false validiert. Wenn sie jedoch auf 3.0 kommt, wird sie auf validiert wahr und wir können anfangen, unsere Magie zu wirken! In diesem Beispiel greife ich nur nach dem Wert für Bürostandort und Speichern für weitere Logik. Wenn Sie es also ausführen, erhalten Sie den Standortwert:
Quelle: https://www.catapultsystems.com/blogs/get-previous-versions-of-sharepoint-list-items-in-flow/
Dieser Beitrag ist auch verfügbar auf: English (Englisch)