报表中的空单元格/偏移量:如何在多维数据集中定义维度和层次结构?
Posted
技术标签:
【中文标题】报表中的空单元格/偏移量:如何在多维数据集中定义维度和层次结构?【英文标题】:Empty cells/offset in the report: how to define a dimension and hierarchy in the cube? 【发布时间】:2016-08-03 08:15:04 【问题描述】:我想分析一些过程的一些动态。为此,我将 Saiku 分析插件 CE 用于 Pentaho Business Intelligence Server CE 5.0.1。
有一个事实表和一个维度表,用于执行一些聚合。维度代表“年-月-日”的层次结构。
我按年和月分两次制作了一些报告。报告如下:
它显示的数据是正确的:
如果我定义一个独立的维度“月”,那么报告看起来是正确的:
但是,数据已经不对了:
我尝试添加逆维度“月 - 年”,但没有看到任何数据。
有没有办法定义一个维度,报告将不包含空单元格?
【问题讨论】:
【参考方案1】:我找到了解决方案 - 问题出在日期维度错误。
在此处查看详细答案:Create a date range in mysql
新蒙德里安模式:
<Schema name="MondrianSchema">
<Dimension type="TimeDimension" visible="true" highCardinality="false" name="X dimension">
<Hierarchy name="X_hierarchy" visible="true" hasAll="true" primaryKey="date_key">
<Table name="tbl_declaration_date_dim" schema="dbo">
</Table>
<Level name="Year" visible="true" table="tbl_declaration_date_dim" column="Year" nameColumn="Year" type="Numeric" uniqueMembers="true" levelType="TimeYears" hideMemberIf="Never">
</Level>
<Level name="Month" visible="true" table="tbl_declaration_date_dim" column="Month" nameColumn="Month" ordinalColumn="Month" type="Numeric" uniqueMembers="false" levelType="TimeMonths" hideMemberIf="Never">
</Level>
<Level name="Day" visible="true" table="tbl_declaration_date_dim" column="Day" nameColumn="Day" ordinalColumn="Day" type="Numeric" uniqueMembers="false" levelType="TimeDays" hideMemberIf="Never">
</Level>
</Hierarchy>
</Dimension>
<Dimension type="TimeDimension" visible="true" name="Y dimension">
<Hierarchy name="Y_Hierarchy" visible="true" hasAll="true" primaryKey="date_key">
<Table name="tbl_declaration_date_dim" schema="dbo" alias="">
</Table>
<Level name="Year" visible="true" table="tbl_declaration_date_dim" column="Year" nameColumn="Year" type="Numeric" uniqueMembers="true" levelType="TimeYears" hideMemberIf="Never">
</Level>
<Level name="Month" visible="true" table="tbl_declaration_date_dim" column="Month" nameColumn="Month" ordinalColumn="Month" type="Numeric" uniqueMembers="false" levelType="TimeMonths" hideMemberIf="Never">
</Level>
<Level name="Day" visible="true" table="tbl_declaration_date_dim" column="Day" nameColumn="Day" ordinalColumn="Day" type="Numeric" uniqueMembers="false" levelType="TimeDays" hideMemberIf="Never">
</Level>
</Hierarchy>
</Dimension>
<Cube name="tbl_application_cube" caption="..." visible="true" description="..." cache="true" enabled="true">
<Table name="tbl_appl_olap_fact" schema="dbo">
</Table>
<DimensionUsage source="X dimension" name="X axis" visible="true" foreignKey="date_dim" highCardinality="false">
</DimensionUsage>
<DimensionUsage source="Y dimension" name="Y axis" visible="true" foreignKey="date_dim">
</DimensionUsage>
<Measure name="DeclarationCount" column="declaration_id" aggregator="count" visible="true">
</Measure>
</Cube>
</Schema>
【讨论】:
以上是关于报表中的空单元格/偏移量:如何在多维数据集中定义维度和层次结构?的主要内容,如果未能解决你的问题,请参考以下文章