动态数据透视表

当 Odoo 数据库中的数据透视视图插入到电子表格中时,默认情况下是静态数据透视表。静态数据透视表中的每个单元格包含一个 Odoo 特定函数 ,该函数从您的数据库中检索数据。

静态数据透视表单元格的功能

当数据库中的相应数据发生变化时,例如与特定季度或个别销售人员相关的销售额,您的静态数据透视表单元格会更新。

但是,静态数据透视表不会自动扩展以适应新数据,例如新季度或新雇佣销售人员的销售数据。也无法通过数据透视表属性添加或操作维度(即列或行)或度量。

注解

如果您尝试更新或操作刚插入电子表格的数据透视表的属性,屏幕右上角会出现错误消息:

尝试操作静态数据透视表时的错误消息

为了在操作数据透视表时获得更大的灵活性,您可以从静态数据透视表 创建动态数据透视表

创建动态数据透视表

从静态数据透视表创建动态数据透视表有两种主要方式:

  • 从数据透视表属性复制静态数据透视表打开数据透视表属性 ,单击窗格右上角的 齿轮 )图标,然后单击 复制

    将创建新的数据源,并将动态版本的数据透视表插入到新工作表中。动态数据透视表具有与原始数据透视表相同的样式。

    注解

    使用此方法时,您的新动态数据透视表将获得下一个可用的数据透视 ID。这意味着您可以创建与同一模型关联的多个数据透视视图,但具有不同的设置、分组或计算。

  • 从数据菜单重新插入动态数据透视表 :在包含静态数据透视表的工作表上,将光标定位在空单元格中。从菜单栏单击 数据 ‣ 重新插入动态数据透视 ,然后选择相关的数据透视表。

    将出现一个新的动态数据透视表,其样式与原始数据透视表相同。

    注解

    使用此方法时,您的静态和动态数据透视共享相同的数据源,因此共享相同的数据透视 ID。为避免混淆,请删除原始静态数据透视表。

小技巧

也可以直接在空单元格中输入动态数据透视表的 函数 。但是,使用此方法时,需要手动重新应用表格样式。

动态数据透视表函数

静态数据透视表 中每个单元格包含从数据库检索数据的唯一函数不同,动态数据透视表只有一个函数:

=PIVOT(pivot_id, [row_count], [include_total], [include_column_titles], [column_count] )

函数的参数如下:

  • pivot_id :插入数据透视表时分配的 ID。第一个插入电子表格的数据透视表分配数据透视 ID 1 ,第二个分配数据透视 ID 2 ,依此类推。

  • row_countcolumn count :分别为行数和列数。

  • include_totalinclude_column_titles :值为 0 分别移除总计和列标题。

这是一个数组函数,允许数据透视表自动扩展以适应函数的结果。

左上角的单元格包含可编辑的函数,而单击任何其他单元格会显示此公式(呈灰色)。

动态数据透视表的数组函数

小技巧

如果需要,您可以更新动态数据透视表的函数以移除元素,如总计或列标题。

在公式栏或数据透视表左上角单元格中打开函数,将光标定位在数据透视 ID 之后,然后键入 , 以前进到要修改的可选字段。在下面的示例中,为 [include_total] 添加值 0 会从数据透视表中移除行总计和列总计。

修改动态数据透视表的函数

操作动态数据透视表

要操作动态数据透视表中的数据,请 打开数据透视表属性

单击 齿轮 )图标可使用以下选项:

  • 翻转轴 :将所有在列中表示的维度移动到行中,反之亦然。

    小技巧

    翻转轴从不同角度呈现数据,可能带来新的见解。但是,根据数据量,可能会导致 #SPILL 错误。当公式尝试输出一系列值,但某些内容阻塞了这些单元格(例如其他数据、合并的单元格或当前工作表的边界)时,会发生这种情况。

    将鼠标悬停在包含 #SPILL 的单元格上会显示错误详情。

  • 复制 :复制动态数据透视表并创建具有不同属性的新数据源。

  • 删除 :删除动态数据透视表的数据源。

    注解

    删除数据透视表的数据源不会删除数据的视觉表示。使用您喜欢的方式从电子表格中删除表格,例如通过键盘命令、电子表格菜单或删除工作表。

尺寸

数据透视表的维度,即数据的分组方式,根据它们在数据库数据透视视图中的显示方式(即在数据透视表插入电子表格之前)放置在 中。

您可以:

  • 通过单击 添加 添加新维度

  • 通过单击相关维度上的 (删除) 图标删除现有维度

  • 通过单击然后拖动维度到其各自部分中的所需位置,更改维度在 中的显示顺序

  • 通过单击然后拖动维度从 或反之,更改显示维度的轴

  • 通过在 排序依据 字段中选择 升序降序未排序 来更改维度值的排序方式

  • 对于基于日期或时间的维度,从下拉菜单的选项中选择所需的 粒度

测量

您的数据透视表的度量,即基于您选择的维度正在测量或分析的内容,按照它们在数据库数据透视视图中出现的顺序列出。

您可以:

  • 通过单击 添加 添加新度量,包括 计算度量

  • 隐藏( )、显示( )或删除( )现有度量

  • 通过单击度量的名称编辑现有度量的名称

  • 通过单击然后拖动度量到所需位置,更改度量的显示顺序

  • 通过单击 (齿轮) 图标,然后从下拉菜单中选择所需选项(例如 占总计百分比从小到大排名 )来更改度量的显示方式。选择不同选项时,数据透视表数据会动态更新。

  • 选择度量的聚合方式,例如通过 求和平均值最小值

小技巧

要按特定维度的度量对动态数据透视表的值进行排序,请右键单击任何数据透视表值,然后单击 排序数据透视 并从下拉菜单中选择 升序降序 。要返回默认顺序,请执行相同的步骤,然后从下拉菜单中选择 无排序

计算度量

如果原始数据透视视图中不存在所需的度量,可以添加计算度量。例如,可以添加计算度量以显示每订单的平均收入或每产品的利润率。

要添加计算度量:

  1. 从数据透视表属性的 度量 部分,单击 添加

  2. 在可滚动列表下方,单击 添加计算度量

  3. 通过单击名称并键入来重命名计算度量。

  4. 单击以 = 开头的行并输入公式。

    Example

    在下面的示例中,通过将销售总额除以订单数量来添加平均每单收入。

    计算度量的公式
  5. 从下拉菜单中选择一个值来选择度量的聚合方式。

小技巧

使用静态数据透视表有优势,例如能够看到单个单元格背后的函数。要实现这种可能性,请选择动态数据透视表的相关部分,复制它,然后将其粘贴到工作表的空白部分。单击任何粘贴的单元格以查看用于检索数据的 Odoo 函数