Export von Anhängen
Hallo zusammen,
ich stehe vor einem Problem und suche nach der besten Lösung. Ich habe eine globale Funktion, die getCustomers() heißt. Diese rufe ich mit dem POST-Query-Endpoint ab und bekomme damit alle Daten von den Kunden in der Datenbank. Das Problem ist, dass ich in diesem Export auch gerne irgendwie die Bilder einpacken würde, idealerweise einen Share-Link von dem Anhang. Soweit ich aber sehen kann, kann ich einen Share-Link nur von einem Bildfeld erzeugen und nicht von dem Anhang.
Momentan mache ich abgekürzt folgendes:
In der Funktion:
let detaillierteKunden := for kunde in alleKunden do
let allFiles := files(kunde);
end;
Attachments: allFiles
Der JSON-Export sieht dann ungefähr so aus:
"Attachments": [ "G2772/example.jpg", "G2772/zentrale1.jpg" ]
Um jetzt hier die Bilder zu bekommen, musste ich dann noch einen API-Abruf für die Bilder machen. Geht es irgendwie, dass ich direkt die Share-Links von Anhängen exportiere, oder komme ich nicht drum herum, noch zusätzliche API-Abrufe zu machen, um die Bilder zu kriegen?
Wie macht ihr das? Was ist die beste Vorgehensweise, um einen kompletten Export mit Bildern auf ein Dritt-System zu liefern?
Die Funktion ist an sich relativ groß und der Export auch. Deswegen habe ich nur die relevanten Dinge herauskopiert.
6 Antworten
-
Bin selber nur Laie....
let filesauswahl := [Abrechnung, Bild1, Bild2, Bild3, Bild4, Bild5, Bild6, Bild7, Bild8, Bild9, Bild10]; for k in filesauswahl do if k != null then let data := { file: shareFile(k), };
-
Soweit ich das jetzt verstehe, kann man ShareFile() überhaupt nicht in einem Formularfeld benutzen. Also gilt das wohl auch für Skripte, die in globalen Funktionen sind, würde ich mal raten? Da ich jetzt bei der Query-Endpoint-Abfrage NULL zurückbekomme wenn ich es so verscuhe:
let link := shareFile(kunde, fileName)
-
Du kannst schon auch die shareFile() übergeben, benötigst aber ein Textfeld zum "zwischenlagern". Mal beispielhaft für einen Record der Code in einem Button zum Bilden eines JSON mit allen sharefiles(), die Benennung der files erfolgt über den Dateinamen. Dann kann dieses Textfeld in Dein JSON-Objekt eingefügt werden und schlussendlich wieder in JSON konvertiert werden für den API-Versand (habe ich aber nicht geprüft). Natürlich ließe sich dies auch mit einem zentralen Button für alle Datensätze gleichzeitig erledigen.
let allFiles := files(this); let resultObject := {}; for i in allFiles do setItem(resultObject, text(i), shareFile(i)) end; TEXTFELD := formatJSON(resultObject)
let myJSONObjekt := { erster: "content1", zweiter: "content2", Anhang: parseJSON(TEXTFELD) }; formatJSON(myJSONObjekt)
Mirko
Content aside
- Status Answered
- vor 5 MonatenZuletzt aktiv
- 6Antworten
- 89Ansichten
-
3
Folge bereits