插入数据透视表

有两种主要方法可以将实时 Odoo 数据集成到 Odoo 电子表格中的 pivot table 中:

在这两种情况下,数据透视表都通过其独特的 data source 连接到基础数据库数据,这使数据保持最新并允许您直接从电子表格中 access the underlying data 。然而,了解 Odoo 中 static and dynamic pivot tables 之间的区别很重要。

注解

create a pivot table from a range of data 也可能已存在于电子表格中。这可以是一系列静态、手动输入的数据或插入到电子表格中的一系列 Odoo 数据(例如,来自 Odoo 列表视图)。

静态与动态数据透视表

当 Odoo 数据透视视图中的数据透视表插入 Odoo 电子表格时,默认情况下,它是一个*静态*数据透视表,其中每个单元格通过 Odoo-specific function 从数据库检索数据。数据透视表的数据保持最新,但不会扩展以容纳新数据,例如新季度或新雇用的销售人员的销售数据,并且其维度和度量不能为 manipulated

静态数据透视表可以是 converted to a dynamic pivot table,以允许数据透视表随着您的业务而发展,并进行操作以获得不同的、更深入的见解。

插入直接从 Odoo 电子表格检索 Odoo 数据的数据透视表会生成*动态*数据透视表,其中单个 Odoo-specific array function 从数据库中检索数据。数据透视表的数据保持最新,它会针对新数据进行扩展,并且可以操纵其维度和度量。数据透视表 inserted from a range of data 也是动态数据透视表。

如果需要,可以通过多种方式:ref:see the individual functions of a dynamic pivot table <spreadsheet/insert-pivot-table/static-convert>

静态数据透视表函数

静态数据透视表使用以下 Odoo-specific functions 通过其 data source 分别检索标题和字段值:

=PIVOT.HEADER(pivot_id, [domain_field_name, …], [domain_value, …])
=PIVOT.VALUE(pivot_id, measure_name, [domain_field_name, …], [domain_value, …])

函数参数说明如下:

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

  • domain_field_name:用作维度的字段技术名称,例如`user_id`;若维度是时间段,则为日期字段技术名称后跟时间段,例如`date_order:month`。

  • measure_name:被测量指标的技术名称,后跟聚合类型,例如`product__qty:sum`。

  • domain_value:记录的ID;若维度是时间段,则为目标日期或时间段。

小技巧

单击单个单元格会在公式栏中显示相关公式(如果相关)。要同时显示电子表格的所有公式,请单击菜单栏上的 View ‣ Show ‣ Formulas 。下面的示例显示了用于检索销售人员 Anita RodmanQ2 2024 的销售总额的函数。

静态数据透视表函数

将静态数据透视表转换为动态数据透视表

对于从 Odoo 数据透视视图插入的数据透视表的 manipulate the dimensions and measures,首先必须将其转换为 dynamic pivot table

主要有两种方法:

  • 从数据透视表属性复制静态数据透视表Open the pivot table’s properties panel,单击窗格右上角的:icon:fa-cog (gear) 图标,然后单击:icon:fa-clone Duplicate

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

    注解

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

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

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

    小技巧

    还可以通过在空单元格中输入 function of the dynamic pivot table 来重新插入动态数据透视表,例如 =PIVOT(1),其中 1pivot table ID。但是,使用此方法时,需要手动重新应用表格样式。

    注解

    当您从数据菜单或通过动态数据透视表功能重新插入动态数据透视表时,静态和动态数据透视表共享相同的数据源,因此具有相同的数据透视表 ID。为避免混淆,请删除原始静态数据透视表。

新动态数据透视表的左上角单元格包含数据库中的 Odoo-specific array function that retrieves data

动态数据透视表功能

动态数据透视表不是像 static pivot table 那样每个单元格都包含通过 data source 检索数据的唯一函数,而是只有一个 Odoo-specific array function

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

此函数允许数据透视表自动扩展以容纳函数的结果。该函数的参数如下:

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

  • row_countcolumn_count:分别设置一个值来限制行数和列数。

  • include_total:设置值 0 以隐藏总计;这在创建图表时很有用。

  • include_column_titlesinclude_measure_titles:设置值 0 以分别删除列和度量标题。

小技巧

要为函数的参数设置值,请在编辑栏或数据透视表的左上角单元格中打开函数后,将光标放在数据透视表 ID 后面,然后键入 , 以前进到要修改的参数。在下面的示例中,为 [include_total] 添加值 0 会从数据透视表中删除行总计和列总计。

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

将动态数据透视表转换为静态数据透视表

将动态数据透视表转换为 static pivot table 有两种主要方法,其中每个单元格都有一个从数据源检索数据的单独函数:

  • 从“数据”菜单重新插入静态数据透视表:在包含动态数据透视表的工作表上,将光标置于空单元格中。单击菜单栏中的 Data ‣ Re-insert static pivot,然后选择相关的数据透视表。

    将出现一个新的静态数据透视表,其样式与原始数据透视表相同。单击单元格可在公式栏中查看该函数。

  • 使用“转换为单个公式”选项:右键单击数据透视表中的任意单元格,然后单击:icon:oi-view-pivot Convert to individual formulas。每个填充的细胞都被一个单独的功能所取代;单击某个单元格即可在编辑栏中查看该函数。

小技巧

要查看动态数据透视表的特定单元格背后的各个功能,请复制相关单元格并将其粘贴到电子表格中的其他位置;单击粘贴的单元格以查看公式栏中的函数。

从数据透视视图插入数据透视表

要将数据透视表从 Odoo pivot view 插入 Odoo 电子表格:

  1. 在数据库中打开相关透视图后,点击 在电子表格中插入

  2. 在打开的窗口中,根据需要编辑 Name of the pivot。此名称用作工作表名称并在 pivot table properties 中,并且可以在以后根据需要进行编辑。

  3. 点击空白电子表格创建新的电子表格,或选择应将数据透视表插入到哪个现有电子表格中。

    注解

    将数据透视表插入新电子表格时,电子表格将保存在Odoo 文档应用程序的我的云端硬盘个人文件夹中。

  4. 点击 确认

数据透视表被插入到电子表格中的新工作表中;工作表名称是数据透视表名称,后跟 pivot table ID,例如,销售团队的销售分析(数据透视 #1)。默认情况下,数据透视表是 static pivot table,其中每个单元格都包含一个 Odoo-specific function,用于从数据库检索数据。

电子表格右侧的面板显示 pivot table properties

小技巧

  • 要允许操作数据透视表,convert it to a dynamic pivot table

  • 要切断插入的数据透视表和数据库之间的联系,请选择整个数据透视表,点击右键并选择 :guilabel:`复制,然后再次点击右键并选择 特殊粘贴 ‣ 粘贴为值

插入从电子表格检索 Odoo 数据的数据透视表

要直接使用 Odoo 电子表格中的 Odoo 数据插入数据透视表:

  1. 文档 应用程序或 create a new blank spreadsheet 打开相关的 Odoo 电子表格。

  2. 从菜单栏中单击 Insert ‣ :图标:`oi-view-pivot` Pivot table :图标:`fa-caret-right` From Odoo data

  3. 在工作表右侧的 New Odoo Pivot 面板中,选择应从中检索数据的 Model,然后单击 Save

将打开一个新工作表,该工作表的左上角有一个空的数据透视表;工作表名称是型号名称,后跟 pivot table ID,例如*销售订单(数据透视#1)*。默认情况下,数据透视表是 dynamic pivot table,其中左上角的单元格包含 Odoo-specific array function,它从数据库中检索数据一次 columns, rows, and measures have been added

电子表格右侧的面板显示 properties of the pivot table