qlikview 使用 chr() 函数设置表达式
qlikview set expression with chr()-function
我正在我的 qlikview 应用程序的脚本中设置一些变量。后来我尝试重用以前的变量之一,但 qlikview 给我一个错误。
SET vCurrentMonth = "=CAL.MONTH";
SET vMonthCounter = "SUM({<MONTH = {'$(vCurrentMonth)'}>} Counter)";
我试图使用脚本中不存在的普通集合表达式中已知的 $-expansion。但是后来我没有收到任何数据。
经过一些研究,我发现我必须用 chr() 函数替换 $。
SET vMonthCounter = "SUM({<MONTH = {'" & chr(36)& "(vCurrentMonth)'}>} Counter)";
但是这个 chr() 函数正在返回一个字符串,所以我没有收到我的计数器的总和,而是集表达式 ($03) 的字符串。
我究竟做错了什么?谁能解释一下如何在脚本中使用这个函数?
提前致谢
即使不使用 chr()
功能,它对我来说也能正常工作。我在 sum
之前添加了 =
(我为 vCurrentMonth
使用了简单的字符串并删除了那里的 =
):
SET vMonthCounter = "=SUM({<MONTH = {'$(vCurrentMonth)'}>} Counter)";
然后使用文本框中的变量(如下所示)给出了正确的结果:
= vMonthCounter
如果您仍然喜欢 chr()
方法,则需要对 vMonthCounter
进行一些更改才能获得相同的结果:
let vMonthCounter1 = '=SUM({ <category = {' & chr(39) & chr(36) & '(vCurrentMonth)' & chr(39) & '} >} value)';
set
替换为 let
。 let
计算表达式,实际上 运行 并将 chr()
替换为符号(顺便说一句,当使用 set
时,您没有义务将字符串括在任何引号中)
将开始和结束引号替换为单引号
集合表达式中的单引号替换为chr(39)
我正在我的 qlikview 应用程序的脚本中设置一些变量。后来我尝试重用以前的变量之一,但 qlikview 给我一个错误。
SET vCurrentMonth = "=CAL.MONTH";
SET vMonthCounter = "SUM({<MONTH = {'$(vCurrentMonth)'}>} Counter)";
我试图使用脚本中不存在的普通集合表达式中已知的 $-expansion。但是后来我没有收到任何数据。 经过一些研究,我发现我必须用 chr() 函数替换 $。
SET vMonthCounter = "SUM({<MONTH = {'" & chr(36)& "(vCurrentMonth)'}>} Counter)";
但是这个 chr() 函数正在返回一个字符串,所以我没有收到我的计数器的总和,而是集表达式 ($03) 的字符串。 我究竟做错了什么?谁能解释一下如何在脚本中使用这个函数?
提前致谢
即使不使用 chr()
功能,它对我来说也能正常工作。我在 sum
之前添加了 =
(我为 vCurrentMonth
使用了简单的字符串并删除了那里的 =
):
SET vMonthCounter = "=SUM({<MONTH = {'$(vCurrentMonth)'}>} Counter)";
然后使用文本框中的变量(如下所示)给出了正确的结果:
= vMonthCounter
如果您仍然喜欢 chr()
方法,则需要对 vMonthCounter
进行一些更改才能获得相同的结果:
let vMonthCounter1 = '=SUM({ <category = {' & chr(39) & chr(36) & '(vCurrentMonth)' & chr(39) & '} >} value)';
set
替换为let
。let
计算表达式,实际上 运行 并将chr()
替换为符号(顺便说一句,当使用set
时,您没有义务将字符串括在任何引号中)将开始和结束引号替换为单引号
集合表达式中的单引号替换为
chr(39)