
Un script es un objeto de un solo uso que se utiliza para llamar funciones y asignar valores en un job o flujo de trabajo.
Uso de script
Hay muchos casos de uso para los scripts. Incluido:
- Inicialización de job
- Existencia de archivo
- Enviar alertas por correo electrónico
- Verificaciones y actualizaciones de la tabla de estado
Puede ejecutar un script antes de los flujos de datos para los pasos de inicialización, para calcular los valores que se transfieren a otras partes del job o para asignar valores a variables.
Puede ejecutar un script para ejecutar funciones, para verificar la existencia de ficheros, por ejemplo. Su job puede utilizar condiciones para determinar vías de acceso de ejecución.
También puede ejecutar un script después de flujos de trabajo y flujos de datos para enviar notificaciones o registrar información de ejecución, como el tiempo, o un cambio en el número de filas en un conjunto de datos.
Lenguaje de scripting de Data Services
Con el lenguaje de scripting de Data Services, puede asignar valores a variables, llamar funciones y utilizar operadores matemáticos y de cadena estándar. La sintaxis se puede utilizar en ambas expresiones, como cláusulas WHERE y scripts.
Sentencias de script
- Declaraciones de asignación
- Llamadas de función
- Declaraciones If
- Declaraciones While
- Expresiones
Las expresiones son una combinación de constantes, operadores, funciones y variables que evalúan un valor de un tipo de datos determinado. Utilice expresiones dentro de sentencias de script o añada expresiones a objetos de flujo de datos.
Sintaxis Basic
Siga estas reglas básicas de sintaxis cuando cree una expresión con el lenguaje de scripting de Data Services:
- Finalice cada enunciado con un punto y coma (;).
- Comience los nombres de variables con un signo de dólar ($).
- Incluir valores de cadena entre comillas simples (' ').
- Inicie los comentarios con un signo numérico (#).
- Especifique parámetros en llamadas de función, incluso si la llamada de función no utiliza parámetros.
- Sustituya el valor de la expresión por corchetes, por ejemplo:
Print(’The value of the start date is:[sysdate()+5]’);
- Cite el valor de la expresión entre comillas simples entre corchetes, por ejemplo:
$StartDate = sql(’demo_target’, ’SELECT ExtractHigh FROM Job_Execution_Status WHERE JobName = {$JobName}’);
Sintaxis para referencias de columna y tabla en expresiones
Las expresiones se pueden utilizar dentro de los objetos de flujo de datos y pueden contener nombres de columna.
El lenguaje de scripting de Data Services reconoce nombres de columnas y tablas sin sintaxis especial. Por ejemplo, puede indicar la columna start_date como la entrada de una función en la ficha Asignación de una consulta comoto_char(start_date, ’dd.mm.yyyy’).
La columna start_date debe estar en el esquema de entrada de la consulta. Si hay más de una columna con el mismo nombre en el esquema de entrada de una consulta, indique qué columna se incluye en una expresión calificando el nombre de columna con el nombre de tabla. Por ejemplo, indique la columna start_date en el estado de la tabla comostatus.start_date.
Los nombres de columna y tabla como parte de las cadenas SQL pueden requerir una sintaxis especial basada en el SGBDR por el que se evalúa el SQL. Por ejemplo, seleccione todas las filas de la columna LAST_NAME de la tabla CUSTOMER como sql(’oracle_ds’,’select CUSTOMER.LAST_NAME from CUSTOMER’).
Marcas de oferta
Las comillas, los caracteres de escape y los espacios en blanco finales pueden tener un efecto adverso en su script si se utilizan incorrectamente.
El tipo de comillas que se utilizan en las cadenas depende de si se utilizan identificadores o constantes.
Identificadores
- Un identificador es el nombre del objeto, como una tabla, columna, flujo de datos o función.
- Utilice comillas dobles en los identificadores si contienen caracteres no alfanuméricos.
- Por ejemplo, use comillas dobles en la cadena "calcular números grandes" porque la cadena contiene espacios en blanco.
Constantes
- Una constante es un valor fijo utilizado en el cálculo.
- Existen dos tipos de constantes:
- Constantes de cadena, por ejemplo, "Hello" o "2007.01.23"
- Constantes numéricas, por ejemplo, 2,14
- Utilice comillas simples en las constantes de cadena y no comillas en las constantes numéricas.
Caracteres de escape
Los caracteres especiales como comillas simples o barras inversas deben ir precedidos por un carácter de escape para que se evalúen correctamente en una cadena. Data Services utiliza la barra invertida como carácter de escape como se muestra en esta tabla:
| Carácter | Ejemplo |
|---|---|
| Comillas simples (') | 'Libros del mundo' |
| Barra invertida (\) | "C:\\temp" |
NULL, strings vacíos y espacios en blanco a la derecha
Para ajustarse al estándar ANSI VARCHAR al tratar con NULL, cadenas vacías y espacios en blanco a la derecha, Data Services:
- Trata una cadena vacía (' ') como un valor varchar de longitud cero, en lugar de como un valor NULL.
- Devuelve un valor de FALSO cuando se utilizan los operadores Igual (=) y No igual (<>) para comparar con un valor NULL.
- Proporciona los operadores IS NULL e IS NOT NULL para probar los valores NULL.
- Trata los espacios en blanco al final como caracteres regulares al leer de todas las fuentes, en lugar de recortarlos.
- Ignora los espacios en blanco finales en las comparaciones en transformaciones y funciones.
Al asignar un string vacío (' ') a una variable, Data Services trata el valor de la variable como un string de longitud cero.
Se produce un error si asigna una cadena vacía a una variable que no es varchar. Utilice la constante NULL para asignar un valor NULL a una variable de cualquier tipo.
Verifique si una columna (COLX) es nula o no con estas expresiones:
- EL COLX ES NULO
- EL COLX NO ES NULO
Utilice la función NVL para eliminar valores NULL. Data Services no verifica los valores NULL en las columnas de datos.
Para obtener más información sobre el lenguaje de scripting, consulte la guía del diseñador
y la guía de referencia