松散耦合表
当将包含循环引用的数据加载到 QlikView 时,松散耦合表将自动创建。这防止了循环引用在内部逻辑中创建循环。为了以期望和可理解的方式可视化数据,松散耦合表需要经过处理。
主创松散耦合表
在一些特殊情况下,您可能想要从常规 QlikView 逻辑断开数据。您可以使用松散耦合表限制一个字段选择传递到表格中的其他字段。
设置为松散组合的表格, 打开 文档属性对话框并选择 表格 标签。
本章包含松散耦合表如何更改 QlikView 逻辑的一些示例。
以下三个表格框,每个表格框表示一个表格读入 QlikView:
如果字段 B 中选中数值 2,以下情况会发生:
选择项会扩散至所有表格,并排除不相关的数值。
现在保存此选择项,但要使 Table2 松散组合。这意味着将切断 Table2 中字段 A 和 C 之间的逻辑。结果如下所示:
请注意,此处显示的 Table2 是表格框,而非表格本身。表格框会显示列中字段之间的所有可能组合。由于字段 A 和 C 之间不存在任何逻辑,因此会显示各自可能值的所有组合。
示例:
以下三个表格的结构相当典型:一个交易表和两个维度表,其中维度表通过各自包含一个共同字段与交易表关联。
可以使用透视表来观看每年销售量和产品组。透视表旁,两个列表框显示维度字段:
即使透视表正确,QlikView 逻辑的效果仍可能导致意外结果。如果选择 2012 年,您会得到以下结果:
产品组 Z 在透视表中将不可视。这是理所当然的,因为字段 ProdGrp 中的值 Z 已经被字段 Year 中的值 2012 选择项排除在外。但是,当您分析 2012 年的销售额时,您很可能希望 Z 位于图表中的 sum(Amount) 列并且显示数值 0,以便所有人都非常清楚,产品组 Z 是存在的,但其在 2012 年的销售额为 0。
某种意义上,Year 和 ProdGrp 字段彼此毫不相关,因此不能仅因为其偶尔通过 Trans 表格关联就发生相互作用。可以通过声明 Trans 表格为松散耦合表来解决此问题,这会更改透视表的布局。
请注意,年列表框中的选择项不会再致使 ProdGrp 列表框中产生任何值。