Jump to content

Hilfe beim DSAB Update


Go to solution Solved by Micha Zenke,

Recommended Posts

  • Solution

Ich habe es gelöst!

 

Es lag daran, dass Power Automate nach 2048 Datensätzen die SQL Sicht neu lädt,

dabei neu sortiert, und dann die nächsten 2048 Datensätze lädt 🙈

 

Also @Philip Alvermann du warst schon nah dran mit deiner Vermutung das es mit Paginierung zusammenhängt.

 

@Philip Alvermann & @Bülent Erbas Vielen Dank für eure Unterstützung.

 

@Alle:

Sorry für die Vielen Nachrichten 🙈

  • Like 3
  • Haha 1
  • Thanks 1
Link to comment
Share on other sites

vor 3 Stunden schrieb Micha Zenke:

Also @Philip Alvermann du warst schon nah dran mit deiner Vermutung das es mit Paginierung zusammenhängt.

Ist ja auch ein Experte in API, das was ich bisher so mitbekomme 😅
Ich muss mich da noch reinlesen/reindenken, hab noch bisschen was vor mir 🙈

Aber der Austausch hier ist echt Klasse.. ich lerne dabei allerhand

  • Like 1
Link to comment
Share on other sites

@Philip Alvermann

Ich habe die SQL sich noch nach einer eindeutigen Spalte per ORDER BY sortiert.

 

Musste dann aller dings noch am anfang meiner abfrage den SELECT befehlt Limitieren.

Hab also gesagt SELECT TOP 10000

dann meine Normale SQL abfragen

Und am Enden den ORDER BY auf die entsprechende Spalte gelegt.

 

Hab mich bewusst für die TOP 10000 entschieden, um den gleichen wert wie bei Paginierung zu haben.

 

Wenn mans weiß ist es ganz einfach und auch nachvollziehbar.

 

  • Thanks 2
Link to comment
Share on other sites

@Micha Zenke super, dass ihr den Fehler selber gefunden habt. Das mit der Paginierung – bzw. dass man manchmal nur Teilmengen kriegt – ist grundsätzlich eine Fehelerquelle bei Power Automate. Nicht nur mit der SQL-Action. Einen ähnlichen Fall hatte ich auch schonmal mit einer Excel-Action ("List all rows in a table").

Ich hätte ansonsten noch validieren wollen, ob die ganzen IDs alle passen (smapID, dsabID usw.), aber diese Fehlerquelle konntest du ja eigentlich schon ausschließen, weil du sagtest du hättest nix geändert und fing dann an zu klemmen...

Danke auch @Philip Alvermann und @Bülent Erbas für die Hilfe! ❤️

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

  • 2 weeks later...

Schön, dass die Ursache gefunden werden konnte.

Hier haben wir ein Paradebeispiel, wie etwas in der Entwicklung / Testumgebung einwandfrei funktionieren kann und bei der Produktivschaltung dann "Fehler" mit sich bringt.

Ich möchte hier anmerken, dass die Paginierung auch einen immensen Vorteil mit sich bringt und zwar eine gewisse Stabilität des Automatismus.
Umso höher die Paginierung eingestellt wird, desto mehr Daten werden per einziger Abfrage übermittelt, bei SQL sind es standardmäßig 2048 und bei Excel 256. 
Es gibt viele Leute, die das Problem haben und das erste was man findet ist immer: "stell doch die Paginierung hoch".
Wie instabil das ganze am Ende wird, verrät jedoch kaum einer 😞
Desto mehr Daten auf einmal übertragen werden, desto eher riskiert man hiermit einen Timeout, da die Anfrage zu viel Zeit beanspruchen kann.

Meine Lösung in Power Automate hierfür ist, dass man die Abfragen in der Do until-Schleife in eine Variable schmeißt um am Ende ohne Timeout alle Daten zu sammeln und anschließend weiterverarbeiten zu können.

Hinweis: Ob SQL oder Excel macht kaum einen Unterschied, bis auf den SkipCount von 2048 oder 256.

 

Variablen:

image.png.b9974740255ec44eccd6b4d567520c1c.png

Schleife - Anfang

image.png.24f3740f380afabfa80be92d07e45cdd.png

image.png.5c4a138be785859d3a35897bc286f5e0.png

image.png.13bb00e288f73747fd00bf215a1c7600.png

Erläuterung zu Union:
Union fasst Listen (Arrays) zusammen und löscht Duplikate heraus (hier aufpassen, wenn Dopplungen wichtig sind!).
LINK zur Referenz von Microsoft

image.png.00d97ee79df14cfab49d87fe2bd1be06.png

image.png.93d0f41b44aa71986f5fac663101a018.png

Wenn der nextLink leer ist, gibt es keine weiteren Daten mehr und die Schleife wird beendet.

image.png.299ae60e5ababd190869ea64ec206333.png

Schleife - Ende

  • Like 1
  • Thanks 3
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...