Saltar al contenido

Leer y escribir archivos en Box usando Jitterbit Studio

Introducción

El conector de Box proporciona dos actividades dedicadas a nivel de archivo: Download File para leer archivos de Box y Upload File para escribir archivos en Box. Ambas actividades intercambian contenido de archivo como cadenas codificadas en Base64. Usa Base64Decode para decodificar el contenido descargado al procesar texto, y Base64Encode para codificar el contenido antes de cargarlo.

Antes de crear las operaciones descritas en esta guía, configura una conexión de Box con credenciales JWT según se describe en Requisitos previos de Box.

Patrón de diseño

El patrón utiliza dos grupos de operaciones independientes.

Leer archivos de Box

%%{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]

La operación Search localiza archivos en una carpeta de Box y pasa el ID del archivo a una variable de proyecto. La operación Download File, activada cuando la operación Search tiene éxito, utiliza esa variable como entrada de File ID.

Escribir archivos en Box

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

La transformación proporciona los campos requeridos fileName y fileContent a la actividad Upload File. fileContent debe ser una cadena codificada en Base64.

Parte 1: Leer un archivo de Box

Paso 1: Configurar la operación Search

  1. En el lienzo de diseño, crea una nueva operación.

  2. Agrega una actividad Search de Box como origen. Haz doble clic en la actividad para abrir su configuración.

  3. Name: Ingresa un nombre como Search Box Files.

  4. Ancestor Folder IDs: Ingresa el ID de la carpeta de Box en la que deseas buscar. El ID de la carpeta aparece en la URL al ver una carpeta en Box (por ejemplo, el ID en https://app.box.com/folder/123456789 es 123456789).

  5. Type: Selecciona File.

  6. Query: Opcionalmente, ingresa un nombre de archivo o palabra clave para limitar los resultados. Déjalo en blanco para devolver todos los archivos en la carpeta.

  7. Haz clic en Finished.

  8. Agrega un paso de Transformation como destino de la operación.

  9. En la transformación, agrega un nodo de script a nivel raíz que almacene el ID del primer archivo coincidente en una variable de proyecto:

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

    Nota

    La respuesta de Search incluye un array entries donde cada elemento tiene un campo id. Este script selecciona el primer resultado. Para procesar múltiples archivos, itera a través del array entries e invoca la operación de descarga para cada ID.

  10. Guarda la transformación.

Paso 2: Configurar la operación Download File

  1. En el lienzo de diseño, crea una segunda operación.

  2. Agrega una actividad Download File de Box como origen. Haz doble clic en la actividad para abrir su configuración.

  3. Name: Ingresa un nombre como Download Box File.

  4. File ID: Ingresa [box_file_id] para hacer referencia a la variable de proyecto completada por la operación Search.

  5. Haz clic en Finished.

  6. Agrega un paso de Transformation después de la actividad Download File. El esquema de respuesta incluye un campo fileContent que contiene el archivo descargado como una cadena codificada en Base64. Para trabajar con el contenido como texto, decodifícalo en un nodo de script:

    $fileText = Base64Decode(Source.fileContent);
    

    Asigna fileText a los campos de destino según lo requiera el destino.

  7. Agrega una actividad de destino y configúrala para el destino.

  8. Vuelve a la operación Search. En su configuración de operación, configura la acción On Success para ejecutar la operación Download File. Esto encadena las dos operaciones de modo que la descarga comience solo después de que se haya recuperado el ID del archivo.

Parte 2: Escribir un archivo en Box

Paso 1: Configurar la actividad Subir archivo

  1. En el lienzo de diseño, crea una nueva operación.

  2. Añade una actividad de origen y configúrala para los datos que se van a subir.

  3. Añade una actividad de Box Subir archivo como destino. Haz doble clic en la actividad para abrir su configuración.

  4. Nombre: Introduce un nombre como Upload Box File.

  5. Haz clic en Finalizado.

Paso 2: Configurar la transformación

  1. Añade un paso de Transformación entre la actividad de origen y la actividad Subir archivo.

  2. El esquema de solicitud Subir archivo requiere dos campos:

    • fileName: Asigna un valor de cadena para el nombre de archivo de destino (por ejemplo, "output.csv"). Puede ser un valor literal, un campo de los datos de origen o una variable de proyecto.

    • fileContent: Asigna una cadena codificada en Base64. Para codificar contenido de texto antes de subirlo, usa un nodo de script:

      Base64Encode(HexToBinary(StringToHex($textContent)))
      

      Reemplaza $textContent con la variable o el campo de origen que contenga el texto a subir.

      Consejo

      Si los datos de origen ya son una cadena codificada en Base64 (por ejemplo, de una actividad anterior de Box Descargar archivo), asigna fileContent directamente sin recodificar.

  3. Guarda la transformación.

Verificar la integración

  1. Implementa y ejecuta la operación Buscar manualmente.

  2. En los registros de operación, confirma que la actividad Buscar devuelve resultados. Si box_file_id está vacío o la búsqueda no devuelve entradas, verifica el valor de IDs de carpeta antecesora y asegúrate de que la conexión de Box pueda acceder a la carpeta de destino.

  3. Después de que se complete la operación Buscar, confirma que la operación Descargar archivo se ejecute automáticamente. En los registros, verifica que la descarga se realizó correctamente y que la transformación procesó el contenido del archivo como se esperaba.

  4. Implementa y ejecuta la operación de escritura. Abre Box y confirma que el archivo subido aparece en la ubicación esperada con el nombre de archivo y contenido correctos.

Consejo

Para programar cualquiera de las operaciones para que se ejecute automáticamente, consulta Programar una operación para que se ejecute automáticamente.