价格变化时标记指标,QLIK SENSE

问题描述 投票:0回答:1

我需要在 qliksense 前端创建一个标志指标(集分析)。 当该指标检测到价格变化时需要标记为 1,如果检测到价格变化则标记为 0。聚合(观察线)是实验室、产品、演示。它们不在同一个表中,但在“关系”表中彼此相关

有了这些数据:

产品 A,新闻。 A、价格300(Flag必须为0)

产品 A,新闻。 A、价格350(Flag必须为1)

产品 A,新闻。 A、价格250(Flag必须为1)

产品 A,新闻。 A、价格250(Flag必须为0) 等等...

我要创建的图表是这样的:

产品|时代变迁|最后更改日期
一个 | 2 | 2023 年 10 月 27 日

谢谢!!!!

flags qliksense qlik-expression set-analysis
1个回答
0
投票

向您的数据集添加了更多行以展示其工作原理。该脚本有一些硬编码数据,然后按排序加载它并查找上一行以查看是否有更改。

Source:
Load * Inline [
    Date,       Product,    Pres,   Price
    27/10/2023, A,          A,      300 
    28/10/2023, A,          A,      350 
    29/10/2023, A,          A,      250 
    30/10/2023, A,          A,      250 
    27/10/2023, B,          A,      100
    28/10/2023, B,          A,      100
    29/10/2023, B,          A,      150
];



Output:
Load *,
    if(peek(Product)=Product and peek(Pres)=Pres and peek(Price)<>Price,1,0) as PriceChangeFlag
;
Load * Resident Source
Order by Product asc, Pres asc, Date asc;

drop table Source;

然后给出如下输出表:

Date        Product Pres    Price   PriceChangeFlag
27/10/2023  B       A       100     0
27/10/2023  A       A       300     0
28/10/2023  B       A       100     0
28/10/2023  A       A       350     1
29/10/2023  B       A       150     1
29/10/2023  A       A       250     1
30/10/2023  A       A       250     0

然后可以用它在前端显示如下:

Product Pres    Sum(PriceChangeFlag)    date(max({<PriceChangeFlag={1}>}Date))
A       A       2                       29/10/2023
B       A       1                       29/10/2023

希望有帮助!

我不确定你所说的聚合线位于另一个表中是什么意思。如果您的意思是上面示例中的 Product 和 Pres 不会位于同一个表中,那么我建议您在执行此操作之前首先映射或加入它。

© www.soinside.com 2019 - 2024. All rights reserved.