Zum Inhalt springen

S3-Upload mehrerer Dateien im Jitterbit App Builder

Bitte machen Sie sich mit dem Multi-File-Upload-Widget vertraut und Konfigurieren von Amazon S3 Web Services, bevor diese Funktionalität implementiert wird.

Bild 1

Die Mindestanforderungen für die Kombination der Funktionen zum Hochladen mehrerer Dateien und zum S3-Speichern sind eine Art eindeutiges Feld, das an den Anfang des S3-Dateinamens angehängt wird, um ihn innerhalb der Anwendung zuzuordnen.

Bild 2

Dieses Feld organisiert die Dateien, indem es dem Dateinamen ein Präfix mit einer GUID anfügt und wird zum Zuordnen zum S3-Bucket verwendet. In diesem Beispiel wird die GroupID zum Zuordnen zur S3-Datei verwendet und beschränkt den Zugriff auf die Datei für Benutzer, die zu dieser Gruppe gehören.

Bild 3

Diese Funktionalität basiert auf einer Benutzertabelle, entweder einer anwendungsspezifischen oder der öffentlichen Vinyltabelle User_Read, sofern Sie die Funktion Who('userid') anwenden können, um den aktuellen Benutzer zu identifizieren.

Bild 4

Außerdem sollten Gruppen konfiguriert werden. Mithilfe einer Benutzergruppentabelle kann eine reichweitenbasierte Sicherheit angewendet werden.

Bild 5

Auf der Seite, auf der die Uploads erfolgen, sollte ein Panel vorhanden sein, das die GUID speichert, in diesem Beispiel die UserParameter-Tabelle mit einer Spalte zur Auswahl einer Gruppe, zu der der Benutzer gehört; dieses Panel befindet sich in diesem Beispiel auf der linken Seite.

Konfigurieren Sie das Widget „Multi File Upload“ auf einem anderen Panel mit einem auf UserParameter ausgerichteten Geschäftsobjekt. Konfigurieren Sie beim Update-Ereignis dieses Geschäftsobjekts drei Aktionen.

  • Eine XP CRUD-Einfügeregel zum Einfügen der Dateien in den S3-Bucket. Verketten Sie in dieser Einfügeregel die Gruppen-ID + „/“ + den Dateinamen.

  • Eine weitere CRUD-Einfügeregel zum Erstellen von Datensätzen in einer lokalen Tabelle (in diesem Beispiel S3File genannt), die die Dateiinformationen enthält (aber nicht den eigentlichen Dateiinhalt); stellen Sie sicher, dass der Dateiname identisch zum S3-Bucket-Einfügenamen gespeichert ist. Die Verwendung dieser Tabelle zum Zuordnen zur S3-Datei optimiert die Seitenladezeiten, sodass immer nur auf eine S3-Datei gleichzeitig zugegriffen wird.

  • (Optional) Verwenden Sie das Persistable - Refresh Row-Plugin, um die Benutzererfahrung zu optimieren.

Das dritte Panel auf dieser Seite sollte ein Geschäftsobjekt enthalten, das auf die im zweiten CRUD-Insert angegebene Tabelle abzielt. Dieses enthält die Spalte „Dateiname“ mit dem Präfix „GroupID“. Binden Sie dieses Panel an das Panel „Erster Benutzerparameter“ (in diesem Beispiel das linke), mit einer LIKE-Anweisung für die GroupID zum Dateinamen. Hier kommt das GUID-Präfix für den Dateinamen ins Spiel. Dadurch kann die Anwendung den Zugriff auf S3-Dateien basierend auf der Konfiguration ihrer Wahl beschränken.

Bild 6

Da das untere Panel über der lokalen Tabelle und nicht über dem eigentlichen S3-Bucket liegt, erfolgt der Download-Zugriff auf den eigentlichen Dateiinhalt über eine Popup-Seite, die über den Dateinamen verknüpft ist. Die Popup-Seite verfügt über ein Panel mit der S3-Bucket-Tabelle dahinter.

Bild 7

Videoübersicht zum Hochladen mehrerer Dateien