---
title: "¿Cómo utilizar el Componente Destination Update?"
canonical: "https://onesaitplatform-es.refined.site/space/DOC/2216122185/%C2%BFC%C3%B3mo%20utilizar%20el%20Componente%20Destination%20Update%3F"
format: markdown
---
> ℹ️ Modo de Upsert en MongoDB disponible desde la versión 2.1.2

> ℹ️ Modo de Upserts masivos en MongoDB disponible desde la versión 2.3.0

> Macro (toc)

# Descripción

La etapa de destino Onesait de Dataflow actualiza la información sobre las ontologías configuradas.

![image](media://e0430ed2-4cc4-4c31-aac0-f81c1ae67cbb)

# Cómo usarla

## Importación al pipeline

Para añadirlo al pipeline, busca Onesait en la paleta de etapas así:

![image](media://b4ea6654-54e8-497a-a7e7-846356bfb002)

Arrastra y suelta en el panel.  


![image](media://e0430ed2-4cc4-4c31-aac0-f81c1ae67cbb)

Una vez importado, se puede configurar para conseguir diferentes comportamientos según el caso.

# Pestañas de configuración disponibles

## General

<span style="color: #091e42">Esta pestaña muestra información general y una opción para mostrar el punto generador de eventos en el escenario.</span>

![image](media://f18ec88e-323b-4c20-aa94-f4a8d429b794)

Marcando la opción *"Producir Eventos",* el escenario muestra otro punto para hacer uso de los eventos.

![image](media://538ca12d-cdba-4daa-becb-9fe30cfc12dc)

Los eventos que se activan son:

- Documento modificado
  - Que envía los registros actualizados en una lista (data-updated).
- Documento no modificado
  - Que envía los registros no actualizados en una lista (data-not-updated).

Por ejemplo, data-not-updated:

![image](media://6f868b85-5906-4c93-b2bd-5bfe49a7fb1f)

## Origen

<span style="color: #091e42">Esta pestaña muestra un formulario para rellenar con la información del Broker Digital de Onesait Platform.</span>


![image-20241210-120244.png](media://96ace6e0-44b0-4ecf-a5ef-547e14f6402e)


## Destino

Esta pestaña muestra el formulario principal de la etapa.

![image](media://98aa782f-b08e-4a8e-8f9e-c7e84f9dc0cc)

- **ThreadPool (Pozo de hilos)**: Número de hilos a crear.

Los dos últimos formularios mapean los campos del registro con la fuente de datos (data source) para actualizar los documentos

- **Filtering fields (Campos de filtrado)**: Filtro aplicado al actualizar los documentos.
  - **Record field (Campo del registro)**: Campo del registro del que se obtendrá el valor.
  - **Operator (Operador):** Operador SQL.
  - **Column name (Nombre de la columna)**: Ruta de la propiedad en la fuente de datos.
- **Update fields (Campos a actualizar)**: Campos que actualizar en los documentos filtrados en el formulario anterior.
  - **Record field (Campo del registro)**: Campo del registro del que se va a obtener el valor.
  - **Column name (Nombre de la columna)**: Ruta de la propiedad en la fuente de datos.

Si se selecciona la opción **Usar SQL**, se puede utilizar una consulta SQL personalizada:

![image](media://b44fe927-a1a4-4c46-b7b6-7bf3911f4220)

# Ejemplo

Digamos que recibimos datos como esta estructura sencilla.

![image](media://9d5dc45f-a9b4-4b74-be45-bbb1005a6922)

Y en nuestra ontología tenemos documentos con un índice único en el path *user.id. *

Si queremos actualizar las propiedades user.first_name y user.last_name en nuestra ontología, configuraríamos la pestaña Destino así:

![image](media://4d12dda8-b7fb-4bd2-980e-109cec9e5426)

Tenemos que establecer el campo de filtrado para que coincida con el valor del campo de registro y el índice único en la ontología para obtener el documento que necesitamos.

A continuación, estableceríamos las propiedades a actualizar en el nombre de la columna, en función de los valores de los campos de registro.

## Modo de Upsert en MongoDB (a partir de la versión 2.1.2)

A partir de la versión 2.1.2 es posible utilizar el nodo upsert como nodo upsert (sólo para ontologías MongoDB) con la siguiente configuración:

![image](media://1d2ebafe-be61-4136-a754-96daa9179d64)

"Usar SQL" debe estar desmarcado y “modo Upsert” debe estar marcado. Este modo tiene tres parámetros de configuración:

- **Root node type (Tipo de nodo raíz) →** como en el nodo de inserción, se puede utilizar el tipo de nodo raíz de la ontología de destino.
- **Custom root node name (Nombre personalizado de nodo raíz) →** sólo se puede utilizar cuando se selecciona “Nombre personalizado de nodo raíz” para especificar el nombre personalizadodel nodo raíz.
- **Key fields to perform upsert (Campos clave para realizar upsert) **→ Selecciona los campos de datos entrantes para generar la clave dinámica del registro. Cuando se encuentra esta clave, se aplica la actualización, y cuando no se encuentra, se produce una inserción.

## Modo de Upserts Masivos en MongoDB (desde 2.3.0)

A partir de la versión 2.3.0 es posible utilizar el modo masivo con upserts (sólo para ontologías MongoDB) con la siguiente configuración:

![image](media://06dcb15f-f0fb-49a8-97e2-c0f32acfb59f)

Donde **Bulk (Masivo) **es el número de consultas que se van a ejecutar en modo masivo cada vez.