Expresiones CEL y limitaciones en DataStage
Utilice expresiones para definir condiciones, valores de entrada y variables de usuario en un flujo de orquestación. Si un trabajo de secuencia migrado contiene expresiones, deben traducirse a la sintaxis CEL.
Puede acceder a las funciones incorporadas y a otros elementos de codificación a través del Creador de expresiones. El generador de expresiones utiliza CEL (Common Expression Language). Para obtener más información sobre las funciones incorporadas, consulte Funciones. Para funciones DataStage-specific, véase DataStage.
Las expresiones se evalúan en el contexto de una ejecución de trabajo determinada en un ámbito específico. El ámbito puede ser un proyecto, espacio o catálogo. Utilice el objeto ctx
para hacer referencia a propiedades de contexto como, por ejemplo, el nombre y el ID del ámbito, el trabajo, el usuario y la interconexión. Ejemplo: ctx.pipeline.id
.
Para hacer referencia a un nodo en la interconexión, copie el ID de nodo de las propiedades de ese nodo. También puede utilizar el objeto tasks
para hacer referencia a nodos y resultados de trabajo. Los componentes con la salida estándar utilizan el objeto results
para almacenar los resultados del flujo. Para salidas no estándar, también puede utilizar results
para recuperar salidas personalizadas o variables establecidas como salida. Cuando se desencadena el manejo de errores, el objeto error
se puede utilizar dentro del manejador de excepciones.
Descripción de expresión | CEL | DataStage |
---|---|---|
Operadores lógicos | a > b || c < 10 |
a > b OR c < 10 |
Operador ternario | a > b ? 'A' : 'B' |
IF a > b THEN 'A' ELSE 'B' |
concatenación de series | "prefix-" + parameter + "-suffix" |
"prefix-" : parameter : "-suffix" |
La serie empieza por | param.startsWith('abc') |
Left(param,3) = 'abc' |
Índice de subserie | param.indexOf('abc') |
Index(param, 'abc', 1) |
Sustitución de serie | param.replace('he', 'we') |
Ereplace(param, "he", "we") |
Serie en minúsculas | param.lowerAscii() |
DownCase(param) |
Es nulo | param == null |
IsNull(param) |