Qlikview:显示0条但维持秩序

时间:2017-10-04 15:20:48

标签: qlikview

我有一个包含6个类别的条形图,例如禁止,限制,高,非常高,中等,低。在我的加载脚本中,我创建了一个订单列,用于对图表中的条形图进行排序,如下所示:

if(COL = 'prohibited', 1,
if(COL = 'restricted', 2,
if(COL = 'very high', 3,
if(COL = 'high', 4,
if(COL = 'moderate', 5,
if(COL = 'low', 6, 1)))))) AS COL_SORT

我还有"显示所有值选项"选中哪个显示0计数的类别。我发现,排序只是部分工作,如果我在每个类别中的订单有效,但如果有0条,则无法保证排序有效。

我的问题是:无论条形数是0还是更多,有没有办法保证条形的顺序?我工作的公司不允许我上传样本数据,所以我理解这是否会让人们试图提供帮助。

亲切的问候

编辑:我想保留if / else语句中的顺序。

2 个答案:

答案 0 :(得分:3)

在图表"属性 - >排序" 使用"表达"作为排序顺序并使用此表达式:

max({1} COL_SORT)

答案 1 :(得分:1)

dual()函数可以做你想要的。 Dual为维度的每个元素指定一个数值。 QlikView在内部使用它来对月份和日期名称进行排序。重要提示,在脚本中分配订单后,您需要将图表中的排序顺序设置为数字。

dual(COL,
 if(COL = 'prohibited', 1,
  if(COL = 'restricted', 2,
    if(COL = 'very high', 3,
      if(COL = 'high', 4,
        if(COL = 'moderate', 5,
          if(COL = 'low', 6, 1))))))) AS COL