Saltar al contenido

Exportar e importar un proyecto en Jitterbit Studio

Introducción

Studio permite importar componentes de proyectos entre organizaciones y entornos. Puedes exportar proyectos como archivos JSON o trabajar directamente con proyectos dentro del mismo entorno.

En conjunto, las funcionalidades de exportación e importación permiten transferir proyectos y sus componentes a otras organizaciones según sea necesario.

Las exportaciones de proyectos de Studio están en formato de archivo JSON. Después de tener una exportación de proyecto JSON, puedes importarla en cualquier organización.

Para migrar una API personalizada junto con el proyecto de Studio que contiene sus operaciones de backend, consulta Incluir proyectos de Studio vinculados en Exportar e importar APIs en API Manager.

Exportar un proyecto

Las opciones Exportar o Exportar Proyecto son accesibles desde estas ubicaciones:

Además, la pantalla de exportación del proyecto es accesible mediante el enlace Exportar al pie de la pantalla Configuración del Proyecto (consulta Editar configuración del proyecto en Creación y configuración de proyectos).

Al seleccionar Exportar o Exportar Proyecto, se abre la pantalla de exportación del proyecto, donde eliges las opciones de exportación y generas el proyecto como un archivo JSON:

export

  • Incluir Credenciales: Incluye en el proyecto exportado los valores especificados dentro de los campos de credenciales de las pantallas de configuración de componentes del proyecto.

    Nota

    Esta opción puede estar deshabilitada dependiendo de la política de organización Permitir que se exporten credenciales.

    Los campos de configuración específicos que se tratan como campos de credenciales varían según el componente del proyecto. Frecuentemente incluyen campos como contraseñas o tokens de seguridad. Los desarrolladores de conectores personalizados que usan el Connector SDK pueden designar tales campos con cualquiera de estos atributos:

    • "secret": "true": Designa únicamente que el campo se trata como un campo de credenciales. El valor del campo se encripta en la exportación del proyecto.

    • "widgetHint": "password": Designa que el campo se trata como un campo de credenciales y también oculta el valor en la interfaz de usuario de Studio reemplazando cada carácter con un punto negro. El valor del campo se encripta en la exportación del proyecto.

    Los valores de las variables del proyecto en sí no se tratan como credenciales, incluso si la opción Ocultar Valor está seleccionada en la interfaz (consulta Variables del proyecto). En su lugar, si se incluyen los valores de las variables del proyecto se controla con la selección Incluir Valores de Variables del Proyecto.

    Si se usa una variable del proyecto en un campo de credenciales (independientemente de si Incluir Valores de Variables del Proyecto está seleccionado), el "value" del campo de credenciales es el valor encriptado de la representación de sintaxis de corchetes del nombre de la variable del proyecto y cualquier otra entrada, si la hay.

    Cuando Incluir Credenciales no está seleccionado, el "value" del campo de credenciales no se incluye en la exportación del proyecto, excepto si se usa una variable del proyecto en un campo de credenciales. En ese caso, se incluye la entrada de texto sin encriptar del campo de credenciales. Esto puede ser problemático si el campo de credenciales usa cualquier otra entrada junto con la variable del proyecto, aunque este caso de uso es poco común. Por ejemplo, una entrada de campo de [pv_password]1234suffix se incluiría en la exportación del proyecto como [pv_password]1234suffix.

  • Incluir notificaciones por correo electrónico: Incluye notificaciones por correo electrónico en el proyecto exportado. Esta opción se aplica a todas las notificaciones por correo electrónico en un proyecto, independientemente de si están configuradas con acciones de operación para ejecutarse en caso de éxito, fallo o fallo de SOAP o si se hace referencia a ellas en un script.

  • Incluir valores de variables de proyecto: Incluye los valores predeterminados de variables de proyecto en el proyecto exportado.

    Los valores de las variables de proyecto configuradas con la opción Ocultar valor (consulta Variables de proyecto) se cifran en la exportación del proyecto.

  • Incluir programaciones: Incluye programaciones de operación en el proyecto exportado.

  • Exportar: Genera y descarga el proyecto como un archivo JSON. De forma predeterminada, el nombre del archivo JSON utiliza el nombre del proyecto.

    Nota

    Un proyecto exportado no conserva el historial del proyecto.

Importar

Puedes importar proyectos y componentes utilizando cualquiera de estas dos opciones:

  1. Importar un proyecto: Esta opción (accesible desde la página Proyectos) te permite importar un proyecto completo desde un archivo JSON a tu organización.

  2. Importación selectiva: Esta opción (accesible desde el menú de acciones del proyecto en un proyecto) te permite importar componentes especificados de otro proyecto en el mismo entorno o desde un archivo JSON de proyecto a un proyecto existente.

Importar un proyecto

Puedes importar un proyecto haciendo clic en Importar en la página Proyectos:

projects page header

Consejo

Para importar solo componentes especificados a un proyecto existente, utiliza la opción Importar que se describe en Importación selectiva a continuación. Para componentes dentro del mismo entorno, puedes importar directamente desde proyectos existentes sin necesidad de exportar y cargar archivos JSON.

En la siguiente pantalla, importas el proyecto:

import

  • Archivo de proyecto: Utiliza el botón Examinar para buscar un archivo JSON de proyecto que se haya exportado desde Studio.

    Consejo

    Si el proyecto utiliza conectores personalizados, estos deben existir en la organización antes de importar el proyecto. Para exportar un conector de Connector Builder e importarlo en otra organización, consulta Exportaciones e importaciones de Connector Builder. Para instalar un conector del SDK de Connector en otra organización, consulta Implementación de un conector de Harmony.

    Al seleccionar un archivo, estos campos quedan disponibles:

    • Nombre del proyecto: El nombre del proyecto se completa previamente desde el archivo JSON. Para usar un nombre diferente, puedes editarlo aquí. El nombre del proyecto debe cumplir estos criterios:

      • Ser único para cada entorno.

      • No puede estar ya en uso como nombre de proyecto de Design Studio en el mismo entorno.

      Nota

      Si ya existe un proyecto con el mismo nombre en la nube de Harmony, ve a la página Consola de administración > Proyectos para administrar el proyecto implementado.

    • Organización: Utiliza el menú desplegable para seleccionar la organización a la que deseas importar el proyecto. Si tienes solo una organización, se selecciona de forma predeterminada.

    • Entorno: Utiliza el menú desplegable para seleccionar el entorno al que deseas importar el proyecto.

Precaución

Si el proyecto de origen utiliza [conectores que solo están disponibles en agentes privados](/es/studio/connectors/), no se puede importar a un entorno asociado a un grupo de agentes en la nube. Estos entornos aún aparecen en el menú desplegable **Environment**, pero no se pueden seleccionar.

  • Include Email Notifications: De forma predeterminada, si notificaciones por correo electrónico se incluyeron como parte del proyecto cuando se exportó, se incluyen cuando se importa el proyecto. Esta opción se aplica a todas las notificaciones por correo electrónico en un proyecto, independientemente de si se configuran con acciones de operación para ejecutarse en caso de éxito, falla o falta de SOAP, o si se referencian en un script. Para excluir las notificaciones por correo electrónico de la importación, desactiva la casilla.

    Precaución

    Las referencias a un componente de notificación por correo electrónico en un script no se eliminan aunque se excluyan las notificaciones por correo electrónico, por lo que es posible que tengas que corregir las referencias rotas después de excluir los correos electrónicos.

  • Include Schedules: De forma predeterminada, si cronogramas de operación se incluyeron como parte del proyecto cuando se exportó, se incluyen cuando se importa el proyecto. Para excluir los cronogramas de la importación, desactiva la casilla.

  • Global endpoints: Todos los puntos finales globales utilizados por el proyecto que se importa se enumeran y deben agregarse al entorno seleccionado mediante una de estas opciones:

    action required

    • Use existing global endpoint: Visible solo cuando el punto final global ya existe en la organización. Selecciona para agregar un punto final de entorno a un punto final global existente para el entorno seleccionado. Utiliza el menú para seleccionar el punto final global existente:

      existing global endpoint

      Si el punto final global existente ya tiene un punto final de entorno para el entorno seleccionado, se utiliza el punto final de entorno existente para el proyecto importado. Si el punto final global existente no tiene un punto final de entorno para el entorno seleccionado, se utilizan las credenciales proporcionadas en el proyecto importado (si corresponde). De lo contrario, el punto final del entorno deberá configurarse después de la importación.

    • Create new global endpoint: Selecciona para crear un nuevo punto final global para la organización:

      create new global endpoint

      Cuando se importa el proyecto, el punto final global se agregará al entorno seleccionado y deberá configurarse después de la importación.

  • Import: Haz clic para importar el proyecto. Si el proyecto se importó correctamente, el proyecto importado se abre en el lienzo de diseño. Además, el nuevo proyecto está disponible desde la página Projects.

    Después de importar el proyecto, aún no se ha implementado. Cuando estés listo para implementar, consulta Project deployment.

Selective import

Para importar solo componentes especificados en un proyecto existente, utiliza el menú de acciones del proyecto y haz clic en Import From Project. Puedes importar componentes desde un archivo JSON de proyecto o desde otro proyecto en el mismo entorno.

project actions menu

Nota

Para importar un archivo JSON de proyecto completo como un nuevo proyecto, utiliza la opción Import From Project descrita en Import a project arriba.

Paso 1: Opciones de importación

Selecciona o carga un proyecto:

select items to import

  • Elige cargar un archivo local: Puedes proporcionar un archivo JSON de proyecto desde la zona de carga. Puedes arrastrar y soltar un archivo JSON de proyecto a la zona de carga o seleccionar un archivo manualmente.

    Al hacer clic, se abre un diálogo de selección de archivo. Selecciona el archivo y luego haz clic en Cargar:

    upload a local file

  • O selecciona un proyecto existente de tu entorno: Selecciona un proyecto existente del entorno del proyecto al que accedes actualmente.

  • Siguiente: Haz clic para continuar al siguiente paso.

  • Cancelar: Haz clic para cancelar el proceso de importación y volver al proyecto.

Paso 2: Elige componentes

Selecciona los componentes a importar:

select components

  • Importar desde proyecto: Este panel muestra el nombre del proyecto de origen y los componentes disponibles para importar.

  • Importar a proyecto: Este panel muestra el nombre del proyecto al que se accede y cualquier componente en el proyecto.

    • Mostrar / Ocultar elementos no afectados: Muestra (predeterminado) u oculta componentes no afectados por la importación.
  • Componentes del proyecto: Cada categoría de componente de proyecto disponible en un proyecto se muestra junto a un número entre paréntesis que indica cuántos componentes hay en la categoría. Los componentes en una categoría de componente se enumeran alfabéticamente. En el panel Importar desde proyecto, utiliza las casillas de verificación para seleccionar los componentes a importar en el proyecto al que se accede actualmente.

  • Seleccionar dependencias automáticamente: Activa esta opción para controlar cómo se manejan las dependencias de componentes durante la importación. Cuando está habilitada (predeterminado), seleccionar un componente selecciona automáticamente todas sus dependencias requeridas, que no se pueden deseleccionar individualmente. Cuando está deshabilitada, puedes seleccionar componentes individuales sin incluir automáticamente sus dependencias.

  • Buscar: Utiliza el cuadro de búsqueda para escribir una palabra clave única o una cadena de palabras clave. La cadena de palabras clave se resalta en azul dentro del nombre del componente:

    new components

  • Expandir / Contraer todas las categorías: Expande o contrae todas las categorías de componentes del proyecto.

  • Mover a proyecto: Se habilita cuando se selecciona un componente en el panel Importar desde proyecto. Una vez que se hace clic, los componentes seleccionados y sus dependencias se agregan al panel Importar a proyecto. Los componentes agregados al proyecto se indican con un icono azul Nuevo:

    new components

  • Agregar componentes importados a un nuevo flujo de trabajo: Selecciona esta opción para importar cualquier operación a un nuevo flujo de trabajo. El flujo de trabajo se llama Importado e incluye la fecha y hora de la importación en formato YYYY-MM-DD HH:MM:SS (por ejemplo, Importado 2025-10-15 08:30:00). Esta opción no está disponible hasta que selecciones al menos una operación para importar.

  • Conflictos: Cuando un componente importado comparte el mismo nombre que un componente en la misma categoría de componente, ocurre un conflicto:

    selective import conflict

    Cuando existen, los conflictos deben resolverse para completar la importación. Utiliza las flechas arriba y abajo para navegar a cada conflicto.

    Los extremos con conflictos tienen estas acciones:

    replace or copy component

    • Usar extremo existente: Selecciona esta opción para usar un extremo configurado en el proyecto al que se accede actualmente. Utiliza el menú para seleccionar el extremo existente.
  • Reemplazar o copiar componente: Si el endpoint existente del proyecto y el endpoint importado tienen el mismo tipo de actividad con nombres coincidentes, estas opciones están disponibles:

        -   **Reemplazar:** Selecciona esta opción para reemplazar el tipo de actividad existente con el tipo de actividad que se está importando.
    
        -   **Mantener ambos:** Selecciona esta opción para mantener ambos tipos de actividad del endpoint como componentes independientes. El nombre del componente que se está importando se complementa con un número incrementado entre paréntesis.
    
    • Crear nuevo endpoint: Selecciona esta opción para crear un nuevo endpoint en el proyecto al que se está accediendo. Utiliza el menú para seleccionar Global (consulta Endpoints globales) o Nivel de proyecto.

    Todos los componentes con conflictos (excepto los endpoints) tienen estas acciones:

    • Reemplazar: Reemplaza el componente existente con el componente que se está importando. Los componentes importados que se utilizan como reemplazo se indican con un icono Reemplazar de color púrpura:

      replace

    • Mantener ambos: Mantiene ambos componentes. El nombre del componente que se está importando se complementa con un número incrementado entre paréntesis. Estos componentes se indican visualmente con un icono Nuevo de color azul:

      new

    Para componentes conflictivos que incluyen diferencias de contenido o configuración, aparece un botón Ver cambios junto al conflicto. Haz clic en Ver cambios para abrir una vista de diferencias que muestre el contenido o la configuración del componente en el proyecto al que se está accediendo en comparación con el componente entrante. La vista de diferencias permanece accesible antes y después de confirmar las resoluciones de conflictos, y vuelve a estar disponible si haces clic en Editar cambios. El botón aparece solo cuando existen diferencias.

    diff view

    La barra de título de la vista de diferencias muestra el tipo y el nombre del componente (por ejemplo, "Decisión: Decisión" u "Operación: Inserción masiva"). Los siguientes controles están disponibles en la barra de título:

    • Abrir en ventana: Abre la vista de diferencias en una nueva ventana emergente. Haz clic de nuevo para devolverla a la posición en línea.
    • Maximizar / Restaurar: Expande la vista de diferencias para ocupar el espacio de pantalla disponible o la devuelve a su tamaño predeterminado.
    • Cerrar: Cierra la vista de diferencias.

    Puedes arrastrar la vista de diferencias por su barra de título para reposicionarla en cualquier lugar de la pantalla, y redimensionarla arrastrando sus bordes o esquinas. Hay una barra de desplazamiento vertical disponible cuando la vista de diferencias contiene muchos cambios.

    La vista de diferencias utiliza uno de los siguientes formatos, según el tipo de componente:

    • Vista de diferencias de código: Se utiliza para scripts y transformaciones. Muestra dos paneles uno al lado del otro:

      • Panel izquierdo: Muestra el contenido del componente en el proyecto al que se está accediendo. Las líneas eliminadas se resaltan en rojo.

      • Panel derecho: Muestra el contenido del componente entrante. Las líneas agregadas se resaltan en verde.

      Para transformaciones, cada regla de asignación modificada aparece como una sección plegable etiquetada con la ruta del campo (por ejemplo, "Regla de asignación json/isActive"). Haz clic en el símbolo de intercalación para expandir o contraer secciones individuales.

    • Vista de diferencias de comparación de campos: Se utiliza para herramientas, notificaciones por correo electrónico, operaciones (incluyendo sus programaciones, acciones y opciones), variables del proyecto, endpoints de conectores y actividades de conectores. Muestra una tabla con columnas Nombre, Antes y Después que enumeran cada campo modificado:

      field diff

      Una fila modificada tiene un tono rojo en la columna Antes y verde en la columna Después, y los caracteres o palabras específicos que cambiaron dentro de un valor se resaltan más intensamente. Los campos relacionados se agrupan bajo encabezados de sección, como las condiciones individuales de una herramienta Decisión, los grupos de opciones anidadas de un endpoint de conector o los pasos de una operación. Un campo cuyo valor hace referencia a una variable del proyecto o una variable global se muestra como una referencia vinculada que muestra el nombre de la variable en lugar de su valor literal. Un campo de credencial, como una contraseña o un token de seguridad, se enmascara en las columnas Antes y Después.

Un campo cuyo nombre o valor es demasiado largo para mostrarse en la tabla, o cuyo valor es un objeto o matriz (mostrado como una cadena JSON), incluye un icono de expansión. Haz clic en el icono para abrir una comparación en línea del contenido de ese campo, mostrada como una diferencia de código con líneas eliminadas resaltadas en rojo y líneas añadidas resaltadas en verde.

Para una actividad de conector que consulta o recupera datos, un campo de Respuesta puede mostrar el esquema de respuesta como un árbol expandible. Los campos añadidos al esquema se resaltan en verde.

Para un conflicto de extremo de conector, esta misma vista de comparación de diferencias de campos está disponible desde el botón Ver cambios junto a la actividad listada bajo Reemplazar o copiar componente (descrito arriba).

Una fila de Pasos lista las actividades usadas por una operación, y una fila de Operación lista la operación referenciada por una herramienta Decisión o Invocar operación. Cuando una actividad u operación referenciada comparte un nombre con un componente ya existente en el proyecto al que se accede actualmente, se añade "(proyecto de origen)" a su nombre en la columna Después, para distinguir el componente entrante del existente con el mismo nombre.

Nota

La fila de Operación para una herramienta entrante de Decisión u Invocar operación solo aparece en la vista de diferencias si también importas la operación que referencia desde el proyecto de origen.

Si una actividad u operación referenciada es en sí misma un conflicto y lo resuelves reutilizando el componente existente en el proyecto, la columna Después se actualiza para mostrar el nombre que el componente entrante tendrá realmente una vez importado.

Importante

Si cambias una resolución de conflicto después de haber visto su diferencia, cierra y reabre la vista de diferencias para ver la comparación actualizada.

Nota

Las filas mostradas para una actividad de conector reflejan sus propiedades de configuración subyacentes, que no siempre se alinean uno a uno con las pantallas de configuración basadas en pasos de la actividad. Por ejemplo, la actividad Consulta de Salesforce presenta varios pasos de configuración que todos actualizan una única propiedad de consulta subyacente, por lo que editar campos en varios pasos en la actividad puede aparecer como una única fila cambiada en la diferencia.

Estas acciones se habilitan solo cuando se realizan cambios en los conflictos:

  • Reemplazar todo: Haz clic para seleccionar en masa Reemplazar (descrito arriba) para todos los conflictos de componentes.

  • Mantener todo: Haz clic para seleccionar en masa Mantener ambos (descrito arriba) para todos los conflictos de componentes.

  • Confirmar cambios: Se habilita solo cuando se selecciona una acción para todos los conflictos. Haz clic para guardar las acciones de conflicto seleccionadas. Una vez que hagas clic, el botón Finalizar se habilita.

  • Editar cambios: (Visible después de hacer clic en Confirmar cambios.) Haz clic para editar las resoluciones de conflictos.

  • Restablecer todo: Restablece el proyecto a su estado original, eliminando cualquier componente nuevo o reemplazado del panel Importar a proyecto.

  • Cancelar: Haz clic para cancelar el proceso de importación y volver al proyecto.

  • Anterior / Siguiente:

  • Importar: Haz clic para importar los componentes y volver al proyecto. Los componentes importados se categorizan en un grupo personalizado llamado Importado seguido de la fecha y hora de la importación (en formato YYYY-MM-DD HH:MM:SS):

    grupo personalizado de importación selectiva