Expansión de signo dólar empleando una variable
Cuando se utiliza una variable para reemplazo de texto en el script o en una expresión, se utiliza la sintaxis siguiente:
$(variablename)
$(variablename) expande al valor de la variable. Si variablename no existe, la expansión dará como resultado una cadena vacía.
Para expansiones de variables numéricas se emplea la sintaxis siguiente:
$(#variablename)
Siempre produce una representación de decimal válida del valor numérico de la variable, posiblemente con notación exponencial (para números muy grandes/pequeños). Si variablename no existe o no contiene un valor numérico, se expandirá a 0 en su lugar.
Example:
SET DecimalSep=',';
LET X = 7/2;
La expansión de signo dólar $(X) se expandirá a 3,5 mientras que $(#X) se expandirá a 3.5.
Example:
Set Mypath=C:\MyDocs\Files\;
...
LOAD * from $(MyPath)abc.csv;
Los datos se cargarán desde C:\MyDocs\Files\abc.csv.
Example:
Set CurrentYear=1992;
...
SQL SELECT * FROM table1 WHERE Year=$(CurrentYear);
Las filas con Year=1992 se seleccionarán.
Example:
En este ejemplo, todas.Los archivos txt del directorio se cargan usando el prefijo Concatenate. Esto puede ser necesario si los archivos difieren significativamente, en cuyo caso la auto-concatenación no funciona. La variable vConcatenate se establece inicialmente en una cadena vacía, ya que el prefijo Concatenate no se puede usar en la primera carga. Si el directorio contiene tres archivos denominados file1.txt, file2.txt y file3.txt, la sentencia LOAD durante las tres iteraciones se expandirá a:
LOAD * FROM[.\file1.txt];
Concatenate LOAD * FROM[.\file2.txt];
Concatenate LOAD * FROM[.\file3.txt];
Expandir variables en estados alternos
La variable tiene un solo valor y se usa en todos los estados alternos. Cuando expande una variable, el valor también es el mismo, independientemente de dónde se haya creado y del estado del objeto.
Si la variable es una variable calculada, es decir, la definición comienza con un signo igual, el cálculo se realiza en el estado predeterminado, a menos que especifique un estado alternativo en la definición de variable.
Example:
Si tiene un estado denominado MyState y una variable denominada vMyVar:
El contenido de la definición de variable, con una referencia explícita al nombre del estado alterno, determina en qué estado se evaluará el contenido de la variable.