Zum Inhalt springen

Dateien in Box mit Jitterbit Studio lesen und schreiben

Einführung

Der Box-Connector bietet zwei dedizierte Aktivitäten auf Dateiebene: Download File zum Lesen von Dateien aus Box und Upload File zum Schreiben von Dateien in Box. Beide Aktivitäten tauschen Dateiinhalte als Base64-codierte Strings aus. Verwende Base64Decode, um heruntergeladene Inhalte beim Verarbeiten von Text zu dekodieren, und Base64Encode, um Inhalte vor dem Hochladen zu codieren.

Bevor du die in diesem Handbuch beschriebenen Vorgänge erstellst, konfiguriere eine Box-Verbindung mit JWT-Anmeldedaten wie in Box-Voraussetzungen beschrieben.

Entwurfsmuster

Das Muster verwendet zwei unabhängige Operationsgruppen.

Dateien aus Box lesen

%%{init: {"themeVariables": {"lineColor": "#6b7280", "edgeLabelBackground": "#f5f5f5"}}}%% flowchart LR A[Box Search] --> B[Transformation] B -->|On Success| C[Box Download File] --> D[Transformation] --> E[Target activity]

Die Search-Operation findet Dateien in einem Box-Ordner und übergibt die Datei-ID an eine Projektvariable. Die Download File-Operation, die bei Erfolg der Search-Operation ausgelöst wird, verwendet diese Variable als File ID-Eingabe.

Dateien in Box schreiben

%%{init: {"themeVariables": {"lineColor": "#6b7280", "edgeLabelBackground": "#f5f5f5"}}}%% flowchart LR A[Source activity] --> B[Transformation] --> C[Box Upload File]

Die Transformation stellt die erforderlichen Felder fileName und fileContent für die Aktivität Upload File bereit. fileContent muss ein Base64-codierter String sein.

Teil 1: Eine Datei aus Box lesen

Schritt 1: Die Search-Operation konfigurieren

  1. Erstelle auf der Design-Canvas eine neue Operation.

  2. Füge eine Box-Aktivität Search als Quelle hinzu. Doppelklicke auf die Aktivität, um deren Konfiguration zu öffnen.

  3. Name: Gib einen Namen wie Search Box Files ein.

  4. Ancestor Folder IDs: Gib die Box-Ordner-ID ein, in der gesucht werden soll. Die Ordner-ID wird in der URL angezeigt, wenn ein Ordner in Box angezeigt wird (beispielsweise ist die ID in https://app.box.com/folder/123456789 die ID 123456789).

  5. Type: Wähle File aus.

  6. Query: Gib optional einen Dateinamen oder ein Schlüsselwort ein, um die Ergebnisse einzugrenzen. Lasse das Feld leer, um alle Dateien im Ordner zurückzugeben.

  7. Klicke auf Finished.

  8. Füge einen Transformation-Schritt als Ziel der Operation hinzu.

  9. Füge in der Transformation einen Skriptknoten auf der Stammebene hinzu, der die ID der ersten gefundenen Datei in einer Projektvariable speichert:

    $box_file_id = Source.entries[0].id;
    

    Hinweis

    Die Search-Antwort enthält ein entries-Array, bei dem jedes Element ein id-Feld hat. Dieses Skript wählt das erste Ergebnis aus. Um mehrere Dateien zu verarbeiten, durchlaufe das entries-Array und rufe die Download-Operation für jede ID auf.

  10. Speichere die Transformation.

Schritt 2: Die Download File-Operation konfigurieren

  1. Erstelle auf der Design-Canvas eine zweite Operation.

  2. Füge eine Box-Aktivität Download File als Quelle hinzu. Doppelklicke auf die Aktivität, um deren Konfiguration zu öffnen.

  3. Name: Gib einen Namen wie Download Box File ein.

  4. File ID: Gib [box_file_id] ein, um auf die Projektvariable zu verweisen, die von der Search-Operation gefüllt wird.

  5. Klicke auf Finished.

  6. Füge einen Transformation-Schritt nach der Aktivität Download File hinzu. Das Antwortschema enthält ein fileContent-Feld mit der heruntergeladenen Datei als Base64-codiertem String. Um mit dem Inhalt als Text zu arbeiten, dekodiere ihn in einem Skriptknoten:

    $fileText = Base64Decode(Source.fileContent);
    

    Ordne fileText je nach Anforderung des Ziels den Zielfeldern zu.

  7. Füge eine Zielaktivität hinzu und konfiguriere sie für das Ziel.

  8. Kehre zur Search-Operation zurück. Konfiguriere in ihren Operation-Einstellungen die Aktion On Success, um die Download File-Operation auszuführen. Dies verknüpft die beiden Operationen, sodass der Download nur nach dem Abrufen der Datei-ID startet.

Teil 2: Datei in Box schreiben

Schritt 1: Die Aktivität „Upload File" konfigurieren

  1. Erstellen Sie auf der Design-Oberfläche einen neuen Vorgang.

  2. Fügen Sie eine Quellaktivität hinzu und konfigurieren Sie diese für die hochzuladenden Daten.

  3. Fügen Sie eine Box-Aktivität Upload File als Ziel hinzu. Doppelklicken Sie auf die Aktivität, um ihre Konfiguration zu öffnen.

  4. Name: Geben Sie einen Namen ein, z. B. Upload Box File.

  5. Klicken Sie auf Finished.

Schritt 2: Die Transformation konfigurieren

  1. Fügen Sie einen Transformation-Schritt zwischen der Quellaktivität und der Aktivität Upload File hinzu.

  2. Das Request-Schema von Upload File erfordert zwei Felder:

    • fileName: Ordnen Sie einen Zeichenfolgenwert für den Zieldateinamen zu (z. B. "output.csv"). Dies kann ein Literalwert, ein Feld aus den Quelldaten oder eine Projektvariable sein.

    • fileContent: Ordnen Sie eine Base64-codierte Zeichenkette zu. Um Textinhalte vor dem Hochladen zu codieren, verwenden Sie einen Script-Node:

      Base64Encode(HexToBinary(StringToHex($textContent)))
      

      Ersetzen Sie $textContent durch die Variable oder das Quellfeld mit dem hochzuladenden Text.

      Tipp

      Wenn die Quelldaten bereits eine Base64-codierte Zeichenkette sind (z. B. aus einer vorherigen Box-Aktivität Download File), ordnen Sie fileContent direkt ohne erneute Codierung zu.

  3. Speichern Sie die Transformation.

Die Integration überprüfen

  1. Stellen Sie den Suchvorgang bereit und führen Sie ihn aus.

  2. Bestätigen Sie in den Operationslogs, dass die Aktivität Search Ergebnisse zurückgibt. Falls box_file_id leer ist oder die Suche keine Einträge zurückgibt, überprüfen Sie den Wert Ancestor Folder IDs und stellen Sie sicher, dass die Box-Verbindung auf den Zielordner zugreifen kann.

  3. Nachdem der Suchvorgang abgeschlossen ist, bestätigen Sie, dass der Vorgang „Download File" automatisch ausgeführt wird. Überprüfen Sie in den Logs, ob der Download erfolgreich war und ob die Transformation den Dateiinhalt wie erwartet verarbeitet hat.

  4. Stellen Sie den Schreibvorgang bereit und führen Sie ihn aus. Öffnen Sie Box und bestätigen Sie, dass die hochgeladene Datei am erwarteten Ort mit dem korrekten Dateinamen und Inhalt angezeigt wird.

Tipp

Um einen der beiden Vorgänge automatisch ausführen zu lassen, siehe Einen Vorgang zur automatischen Ausführung einplanen.