跳到主要内容 跳到补充内容

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

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

$(variablename)      

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

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

$(#variablename)      

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

示例:  

SET DecimalSep=',';

LET X = 7/2;

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

示例:  

Set Mypath=C:\MyDocs\Files\;

...

LOAD * from $(MyPath)abc.csv;

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

示例:  

Set CurrentYear=1992;

...

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

将选中 Year=1992 的行。

示例:  

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];

展开备用状态的变量

变量只有一个值,并且在所有备用状态中都使用该值。展开变量时,值也是相同的,与变量的位置和对象的状态无关。

如果变量是计算变量,即定义以等号开头,则在默认状态下进行计算,除非在变量定义中指定了备用状态。

示例:  

如果有一个名为 MyState 的状态和一个名为 vMyVar 的变量:

vMyvar: =only({MyState} MyField)

变量定义内容(带有对备用状态名称的显式引用)确定将在哪个状态中计算变量内容。

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们如何改进!

加入分析现代化计划

Remove banner from view

使用分析现代化计划实现现代化,同时不损害您宝贵的 QlikView 应用程序。 单击此处 了解更多信息或联系: ampquestions@qlik.com