跳到主要内容

使用变量进行货币符号扩展

在该页面上

使用变量进行货币符号扩展

如果要在脚本或表达式中使用变量进行文本替换,需使用以下语法:

$(variablename)      

$(variablename) 扩展至变量中的值。如果 variablename 不存在,那么该扩展将为空字符串。

对于数字变量扩展,使用以下语法:

$(#variablename)      

其总是生成合法小数点来表示变量的数字值,可能带有指数符号(对于非常大/小的数值)。如果 variablename 不存在或不包含数字值,那宏扩展将被扩展至 0

Example:  

SET DecimalSep=',';

LET X = 7/2;

货币符号扩展 $(X) 将扩展至 3,5,而 $(#X) 将扩展至 3.5

Example:  

Set Mypath=C:\MyDocs\Files\;

...

LOAD * from $(MyPath)abc.csv;

数据将从 C:\MyDocs\Files\abc.csv 加载。

Example:  

Set CurrentYear=1992;

...

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

将选中 Year=1992 的行。

Example:  

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

在该示例中,目录中的所有 .txt 文件将使用 Concatenate 前缀加载。如果字段略有不同(在这种情况下自动串联不起作用),则可能必须采用这种方法。vConcatenate 变量初始设置为空字符串,因为 Concatenate 前缀在第一次加载中无法使用。如果目录包含三个名为 file1.txtfile2.txtfile3.txt 的文件,LOAD 语句将在三次迭代过程中扩展至:

LOAD * FROM[.\file1.txt];

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

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

以备用状态扩展变量

在展开变量时,您可能指定要使用哪个状态。特定状态下的更改不会影响在另一状态下扩展的变量值。如果您没有指定状态,则会以默认状态展开变量。

Example:  

如果您有名为 MyState 的状态以及名为 vMyVar 的变量:

  • $(vMyVar) 以默认状态扩展变量。
  • $({MyState} vMyVar)MyState 状态扩展变量。