外部保存的 Qlik Sense 表达式中的字符串
String within externally saved Qlik Sense expression
我有一个小问题,所以这里有一些背景知识:
我们正在开发 Qlik Sense 应用程序,我们通常将表达式写入外部脚本。我们将这些保存为变量,然后在应用程序中评估变量。这样做的好处是 a) 我们可以通过 GIT 使用更好的版本控制,并且 b) 如果我们将来需要更改平台,我们可以将查询与应用程序分开。
我的问题:
我遇到过这样一种情况,我们需要将字符串连接到表达式的结果,这在应用程序中很容易完成,但是当您将表达式保存到外部文件时,表达式周围的单引号干扰字符串周围的单引号。
我试过了
- 仅对字符串使用双引号,但 qlik 无法正确评估它。
- 同样适用于仅使用双引号的表达式。
- 转义表达式中的单引号,例如。 "\'" 但同样的故事。
我接下来想做的是将引号更改为流氓字符,这样 qlik 会忽略它作为文本,然后稍后用引号替换它,这样 qlik 就会尝试评估它。
示例代码:
SET variable = 'if(isnull(month),'Month: ' & date(now(), 'MMM-YYYY'),'Month: ' & only({$<year={2016}, month={6}>}month)';
经过进一步研究,我发现 Qlik 有自己的转义字符方式,无需使用“\”字符。我能够通过像这样转义内部单引号来解决这个问题:
SET variable = 'if(isnull(month),''Month: '' & date(now(), ''MMM-YYYY''),''Month: '' & only({$<year={2016}, month={6}>}month)';
现在感觉这是一个非常愚蠢的疏忽,但希望这会在将来为某人节省一些时间。
我有一个小问题,所以这里有一些背景知识:
我们正在开发 Qlik Sense 应用程序,我们通常将表达式写入外部脚本。我们将这些保存为变量,然后在应用程序中评估变量。这样做的好处是 a) 我们可以通过 GIT 使用更好的版本控制,并且 b) 如果我们将来需要更改平台,我们可以将查询与应用程序分开。
我的问题:
我遇到过这样一种情况,我们需要将字符串连接到表达式的结果,这在应用程序中很容易完成,但是当您将表达式保存到外部文件时,表达式周围的单引号干扰字符串周围的单引号。
我试过了
- 仅对字符串使用双引号,但 qlik 无法正确评估它。
- 同样适用于仅使用双引号的表达式。
- 转义表达式中的单引号,例如。 "\'" 但同样的故事。
我接下来想做的是将引号更改为流氓字符,这样 qlik 会忽略它作为文本,然后稍后用引号替换它,这样 qlik 就会尝试评估它。
示例代码:
SET variable = 'if(isnull(month),'Month: ' & date(now(), 'MMM-YYYY'),'Month: ' & only({$<year={2016}, month={6}>}month)';
经过进一步研究,我发现 Qlik 有自己的转义字符方式,无需使用“\”字符。我能够通过像这样转义内部单引号来解决这个问题:
SET variable = 'if(isnull(month),''Month: '' & date(now(), ''MMM-YYYY''),''Month: '' & only({$<year={2016}, month={6}>}month)';
现在感觉这是一个非常愚蠢的疏忽,但希望这会在将来为某人节省一些时间。