Expansão de sinal de dólar usando uma variável
Ao utilizar uma variável para a substituição de texto no script ou em uma expressão, é usada a seguinte sintaxe:
$(variablename)
$(variablename) expande para o valor na variável. Se variablename não existir, a expansão resultará em uma string vazia.
Para expansões variáveis numéricas, use a seguinte sintaxe:
$(#variablename)
Ela sempre gera uma representação de ponto decimal válido do valor numérico da variável, possivelmente com notação exponencial (para números muito grandes/pequenos). Se variablename não existir ou não contiver um valor numérico, expandirá para 0.
Exemplo:
SET DecimalSep=',';
LET X = 7/2;
A expansão de sinal de dólar $(X) expande para 3,5 e $(#X) expande para 3.5.
Exemplo:
Set Mypath=C:\MyDocs\Files\;
...
LOAD * from $(MyPath)abc.csv;
Os dados serão carregados de C:\MyDocs\Files\abc.csv.
Exemplo:
Set CurrentYear=1992;
...
SQL SELECT * FROM table1 WHERE Year=$(CurrentYear);
As linhas com Year=1992 serão selecionadas.
Exemplo:
Neste exemplo, todos os arquivos .txt no diretório são carregados usando o prefixo Concatenate. Isso pode ser necessário se os campos forem ligeiramente diferentes e, nesse caso, a concatenação automática não funciona. A variável vConcatenate é inicialmente configurada como uma string vazia, pois o prefixo Concatenate não pode ser usado no primeiro carregamento. Se o diretório contiver três arquivos chamados file1.txt, file2.txt e file3.txt, a declaração LOAD durante as três iterações será expandida para:
LOAD * FROM[.\file1.txt];
Concatenate LOAD * FROM[.\file2.txt];
Concatenate LOAD * FROM[.\file3.txt];
Expandindo Variáveis em Estados Alternados
A variável tem apenas um valor, e esse é usado em todos os estados alternados. Quando você expande uma variável, o valor também é o mesmo, independente de onde a expansão é feita e do estado do objeto.
Se a variável for uma variável calculada, ou seja, a definição começa com um sinal de igual, o cálculo será feito no estado padrão, a menos que você especifique um estado alternado na definição da variável.
Exemplo:
Se você tem um estado chamado MyState e uma variável chamada vMyVar:
O conteúdo da definição da variável, com uma referência explícita ao nome do estado alternado, determina em que estado o conteúdo da variável será avaliado.