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:  

Set vConcatenate = ; For each vFile in FileList('.\*.txt') Data: $(vConcatenate) LOAD * FROM [$(vFile)]; Set vConcatenate = Concatenate ; Next vFile

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

Puede especificar qué estado utilizar al expandir una variable. Los cambios en un estado específico no afectan a los valores de la variable que están expandidos en otro estado. Si no especifica un estado, la variable se expande en el estado predeterminado.

Example:  

Si tiene un estado denominado MyState y una variable denominada vMyVar:

  • $(vMyVar) expande la variable en el estado predeterminado.
  • $({MyState} vMyVar) expande la variable en el estado MyState.