(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisboa

Cómo usar la actividad If Condition en Azure Data Factory

João Barros 16 de July de 2026 4 min de lectura

La actividad If Condition en Azure Data Factory te permite ramificar un pipeline según una condición que devuelve verdadero o falso, igual que un if en un lenguaje de programación. Es la forma más sencilla de asegurar que ciertas actividades solo se ejecuten cuando se cumple una regla — por ejemplo, copiar datos solo cuando hay archivos nuevos en una carpeta. Es una actividad de control de flujo esencial y se configura por completo en el Azure Data Factory Studio, sin escribir código.

Requisitos previos

  • Una instancia de Azure Data Factory ya creada, con acceso al Azure Data Factory Studio.
  • Un pipeline, nuevo o existente, donde puedas añadir actividades.
  • Conocer lo esencial del canvas del pipeline: arrastrar actividades y conectarlas.
  • Opcional: una actividad Get Metadata, si quieres decidir según el número de archivos.

Paso 1: Añadir la actividad If Condition al pipeline

En el Azure Data Factory Studio, abre tu pipeline. En el panel Activities, a la izquierda, escribe If en el cuadro de búsqueda y arrastra la actividad If Condition al canvas. En la pestaña General, dale un nombre claro, por ejemplo Check_Files, para que la lógica del pipeline sea fácil de leer.

Paso 2: Definir la expresión verdadero/falso

Selecciona la actividad y abre la pestaña Activities. En el campo Expression, haz clic en Add dynamic content y escribe una expresión que devuelva un valor booleano. El lenguaje de expresiones de ADF siempre empieza por @. Un ejemplo sencillo, basado en un parámetro del pipeline (que defines en la pestaña Parameters):

@greater(pipeline().parameters.numeroFicheiros, 0)

Esta expresión es verdadera cuando el parámetro numeroFicheiros es mayor que cero. También puedes comparar texto — por ejemplo, ejecutar la rama verdadera solo en el entorno de producción:

@equals(pipeline().parameters.ambiente, 'prod')

Además, puedes combinar condiciones con las funciones and, or y not para reglas más completas.

Paso 3: Construir la rama verdadera (True)

Todavía en la pestaña Activities, haz clic en el icono del lápiz de la sección True (Edit activities). El canvas cambia a un contenedor donde colocas las actividades que deben ejecutarse cuando la condición es verdadera. Arrastra, por ejemplo, una actividad Copy data para copiar los archivos. Para volver al pipeline principal, usa la ruta de navegación (breadcrumb) en la parte superior del canvas.

Paso 4: Construir la rama falsa (False)

Repite el proceso en la sección False: haz clic en el lápiz y añade las actividades para cuando la condición no se cumple. Un patrón común es colocar aquí una actividad Wait corta o una que solo registra un mensaje. No estás obligado a rellenar las dos ramas — si no necesitas el caso falso, puedes dejarlo vacío.

Paso 5: Un ejemplo real con Get Metadata

Un uso muy frecuente es decidir según el contenido de una carpeta. Si tienes una actividad Get Metadata que devuelve la lista childItems, conéctala antes del If Condition y usa esta expresión:

@greater(length(activity('Get Metadata1').output.childItems), 0)

Así, la rama verdadera solo se ejecuta cuando la carpeta tiene al menos un archivo, evitando ejecuciones innecesarias.

Atención a una limitación importante: no puedes colocar una actividad If Condition (ni una Switch) dentro de otra If Condition o Switch. Sí puedes, en cambio, usarlas dentro de una ForEach o Until.

Cómo queda en JSON

Si abres la vista de código del pipeline, la actividad tiene esta forma mínima, con la expresión y las dos listas ifTrueActivities y ifFalseActivities:

{
  "name": "Check_Files",
  "type": "IfCondition",
  "typeProperties": {
    "expression": {
      "value": "@greater(pipeline().parameters.numeroFicheiros, 0)",
      "type": "Expression"
    },
    "ifTrueActivities": [],
    "ifFalseActivities": []
  }
}

Verificar el resultado

Haz clic en Debug para ejecutar el pipeline. En el panel Output, ves la actividad If Condition y qué rama se ejecutó. Prueba los dos casos: cambia el valor del parámetro (o el contenido de la carpeta) para forzar primero el resultado verdadero y luego el falso, y confirma que se ejecuta la rama correcta en cada situación.

Conclusión

Con la actividad If Condition ganas control de flujo en tu pipeline sin escribir código. A partir de aquí, prueba a combinarla con la ForEach para decidir dentro de un bucle, o usa la actividad Switch cuando tengas más de dos caminos posibles. Un consejo final: da siempre nombres descriptivos a las actividades, para que la lógica del pipeline se lea casi como una frase. ¿Qué condición querrás probar primero en tu próximo pipeline?