📜  扩展数据模型

📅  最后修改于: 2020-12-01 08:51:18             🧑  作者: Mango


在本章中,您将学习如何扩展前几章中创建的数据模型。扩展数据模型包括-

  • 桌子的增加
  • 在现有表中添加计算列
  • 在现有表格中创建度量

其中,制定措施至关重要,因为它涉及在数据模型中提供新的数据见解,从而使使用该数据模型的人员能够避免返工并节省分析数据和决策时的时间。

由于损益分析涉及到使用时间段,并且您将使用DAX时间智能功能,因此您需要数据模型中的日期表。

如果您不熟悉日期表,请阅读“了解日期表”一章。

您可以按以下方式扩展数据模型-

  • 要在数据表(即财务数据表)和日期表之间创建关系,您需要在财务数据表中创建计算列Date。

  • 要执行不同类型的计算,您需要在数据表-Finance Data和查找表-Accounts and Geography Locn之间创建关系。

  • 您需要创建各种度量,以帮助您执行几次计算并执行所需的分析。

这些步骤实质上构成了使用数据模型进行损益分析的数据建模步骤。但是,这是要使用Power Pivot数据模型执行的任何类型的数据分析的步骤序列。

此外,您将在后续章节中的Power PivotTables中学习如何创建度量以及如何使用它们。这将使您对使用DAX进行数据建模和使用Power PivotTables进行数据分析有足够的了解。

将日期表添加到数据模型

为跨会计年度的时间段创建日期表,如下所示:

  • 在新的Excel工作表中创建带有标题的单列的表–日期和连续日期范围从7/1/2011到6/30/2018。

  • 从Excel复制表格并将其粘贴到Power Pivot窗口中。这将在Power Pivot数据模型中创建一个新表。

  • 将该表命名为Date。

  • 确保“日期”表中的“日期”列的数据类型为“日期(DateTime)”。

接下来,您需要将计算出的列–会计年度,会计季度,会计月份和月份添加到日期表中,如下所示-

财政年度

假设会计年度结束于6月30。然后,会计年度为7月1至6月30。例如,从2011年7月1(2011年7月1)到2012年6月30(2012年6月30)将为2012会计年度。

在“日期”表中,假设您要表示的与2012财年相同。

  • 您需要首先提取日期的财政年度部分,并将其附加为FY。

    • 对于2011年7月至2011年12月的日期,财政年度为1 + 2011。

    • 对于2012年1月至2012年6月的日期,该财政年度为0 + 2012。

    • 概括地说,如果财政年度结束月份为FYE,请执行以下操作-

      (((月– 1)/ FYE)+年)的整数部分

    • 接下来,使用最右边的4个字符来获取财政年度。

  • 在DAX中,您可以表示与-

    RIGHT(INT((MONTH(’Date'[Date])-1)/’Date'[FYE])+ YEAR(’Date'[Date]),4)

  • 使用DAX公式在Date表中添加计算的Fiscal Year列-

    =“ FY”&RIGHT(INT((MONTH(’Date'[Date])-1)/’Date'[FYE])+ YEAR(’Date'[Date]),4)

财政季度

如果FYE代表财政年度结束的月份,则财务季度为

(((((Month + FYE-1)/ 12)+ 3)/ 3的整数部分)

  • 在DAX中,您可以表示与-

    INT((MOD(MONTH(’Date'[Date])+’Date'[FYE] -1,12)+3)/ 3)

  • 使用DAX公式在Date表中添加计算出的Fiscal Quarter列-

    =’Date'[FiscalYear]&“-Q”&FORMAT(INT((MOD(MONTH(’Date'[Date])+’Date'[FYE] -1,12)+ 3)/ 3),“ 0” )

财政月

如果FYE代表会计年度结束,则获得会计年度期间为

((月+ FYE-1)/ 12的余数)+ 1

  • 在DAX中,您可以表示与-

    MOD(MONTH(’Date'[Date])+’Date'[FYE] -1,12)+1

  • 使用DAX公式在日期表中添加计算出的会计月份列-

    =’日期'[会计年度]&“-P”和格式(MOD(MONTH([日期])+ [FYE] -1,12)+1,“ 00”)

最后,添加表示月份的月份数的计算列Month,如下所示:

= FORMAT(MOD(MONTH([Date])+ [FYE] -1,12)+1,“ 00”)&“-”&FORMAT([Date],“ mmm”)

生成的日期表如下图所示。

月

将表标记为“日期”作为“日期表”,将列标记为“日期”作为具有唯一值的列,如以下屏幕截图所示。

标记为表格

添加计算列

要在财务数据表和日期表之间创建关系,您需要在财务数据表中一列日期值。

  • 使用DAX公式在Finance Data表中添加一个计算出的列Date-

    = DATEVALUE(“财务数据” [财政月])

在数据模型中定义表之间的关系

您在数据模型中具有以下表-

  • 数据表-财务数据
  • 查找表-帐户和地理位置Locn
  • 日期表-日期

要定义数据模型中表之间的关系,请执行以下步骤-

  • 在Power Pivot的“关系图”视图中查看表。

  • 在表之间创建以下关系-

    • 财务数据表与带有“帐户”列的“帐户”表之间的关系。

    • 带有利润中心列的财务数据表和地理Locn表之间的关系。

    • 带有“日期”列的财务数据表和日期表之间的关系。

人际关系

从客户端工具隐藏列

如果数据表中有任何列将不用作任何数据透视表中的字段,则可以将其隐藏在数据模型中。然后,它们将不会在数据透视表字段列表中可见。

在财务数据表中,您有4列-财务月,日期,科目和利润中心,这些列将不会用作任何数据透视表中的字段。因此,您可以隐藏它们,使其不出现在“数据透视表字段”列表中。

  • 在财务数据表中选择列-财政月,日期,科目和利润中心。

  • 右键单击并在下拉列表中选择从客户端工具隐藏。

从客户端工具隐藏列

在表中创建度量

您已经准备好使用数据模型和Power PivotTables使用DAX进行数据建模和分析。

在随后的章节中,您将学习如何创建度量以及如何在Power PivotTables中使用它们。您将在数据表(即财务数据表)中创建所有度量。

您将在数据表“财务数据”中使用DAX公式创建度量,您可以在任意数量的数据透视表中使用它进行数据分析。度量本质上是元数据。在数据表中创建度量是数据建模的一部分,在Power PivotTables中对其进行汇总是数据分析的一部分。