Qlikview:表的多列

时间:2015-08-11 11:40:56

标签: multiple-columns qlikview

在达到一定数量的行后,是否可以将表分成多列?

+----+----+
| A  |  1 |
| B  |  2 |
| C  |  3 |
| D  |  4 |
+----+----+ 

这会转变为:

+----+----+   +----+----+
| A  |  1 |   | C  |  3 |
| B  |  2 |   | D  |  4 |
+----+----+   +----+----+

1 个答案:

答案 0 :(得分:1)

我不认为你可以在一个对象中做到这一点。尺寸的相关性不允许A和C在同一条线上。

每次超出限制时,您都可以使用此逻辑公开隐藏的直表,因此您必须根据需要创建和放置任意数量的对象。 (创建一个新的将需要大量的宏编码,这不是我的驾驶室)

理论是;

  1. 为脚本中维度的每个不同值创建一个数字ID;

    如果数字ID尚不存在,

    load *, autonumber(DIMENSION) as DIMENSIONID from (DATASOURCE)将起作用

  2. 在表达式选项卡中,您需要创建一个表达式,该表达式使用集合分析和min()函数的排名功能,以便仅显示每个对象中低于组阈值的值组;

    对象1表达式:sum({<DIMENSIONID={$(=min(DIMENSIONID,1))}>} VALUE) + sum({<DIMENSIONID={$(=min(DIMENSIONID,2))}>} VALUE)

    对象2表达式:sum({<DIMENSIONID={$(=min(DIMENSIONID,3))}>} VALUE) + sum({<DIMENSIONID={$(=min(DIMENSIONID,4))}>} VALUE)。 (您可以使用发烧友集分析仅在一个语句中执行min(y),但我不会这样做,因为每个对象只有2行。)

  3. 使用条件show在达到限制时公开下一个对象;

    第一个对象将始终显示。第二个对象在布局选项卡中需要这样的内容 - &gt;显示 - &gt;条件count(DISTINCT DIMENSION)>2