Rozszerzenie przez znak dolara przy użyciu zmiennej

Gdy w celu zastąpienia tekstu w skrypcie lub w wyrażeniu używana jest zmienna, używana jest następująca składnia:

$(variablename)      

$(variablename) powoduje rozwinięcie do wartości w zmiennej. Jeśli variablename nie istnieje, wówczas wynikiem rozwinięcia będzie pusty ciąg znaków.

W celu rozwinięcia zmiennej numerycznej używana jest następująca składnia:

$(#variablename)      

Takie rozwinięcie zawsze pozwala na uzyskanie prawidłowej reprezentacji separatora dziesiętnego wartości liczbowej zmiennej — jeśli to możliwe, zwracana jest postać w zapisie wykładniczym (w przypadku bardzo dużych/małych liczb). Jeśli variablename nie istnieje lub nie zawiera wartości liczbowej, zostanie rozszerzone do 0.

Przykład:  

SET DecimalSep=',';

LET X = 7/2;

Rozszerzenie przez znak dolara $(X) zostanie rozwinięte do 3,5, z kolei $(#X) zostanie rozwinięte do 3.5.

Przykład:  

Set Mypath=C:\MyDocs\Files\;

...

LOAD * from $(MyPath)abc.csv;

Dane zostaną załadowane z C:\MyDocs\Files\abc.csv.

Przykład:  

Set CurrentYear=1992;

...

SQL SELECT * FROM table1 WHERE Year=$(CurrentYear);

Wybrane zostaną wiersze zawierające Year=1992.

Przykład:  

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

W tym przykładzie wszystkie pliki .txt w katalogu są ładowane przy użyciu prefiksu Concatenate. Może to być wymagane, jeśli pola nieco się od siebie różnią, przez co konkatenacja automatyczna nie działa. Zmienna vConcatenate jest początkowo ustawiana jako pusty ciąg znaków, ponieważ w pierwszym ładowaniu nie można użyć prefiksu Concatenate. Jeśli katalog zawiera pliki o nazwach file1.txt, file2.txt i file3.txt, instrukcja LOAD podczas trzech iteracji zostanie rozwinięta do:

LOAD * FROM[.\file1.txt];

Concatenate LOAD * FROM[.\file2.txt];

Concatenate LOAD * FROM[.\file3.txt];