DAX 筛选器 - ADDMISSINGITEMS 函数



描述

如果表中尚不存在,则将多个列中的项目的组合添加到表中。添加哪些项目组合的确定是基于引用源列,这些源列包含列的所有可能值。

DAX ADDMISSINGITEMS 函数是 Excel 2016 中的新增功能。

语法

ADDMISSINGITEMS (<showAllColumn>, [<showAllColumn>] …, 
   <table>, <groupingColumn>, [<groupingColumn>] …, [<filterTable>] …) 

ADDMISSINGITEMS (<showAllColumn>, [<showAllColumn>] …, 
   <table>, [ROLLUPISSUBTOTAL (<groupingColumn>, <isSubtotal_columnName>, 
   [<groupingColumn>, [<isSubtotal_columnName>]] …)], [<filterTable>] …) 

参数

序号 参数和描述
1

showAllColumn

用于返回计算字段中没有数据的项目的列。

2

table

包含所有具有数据(非空)的项目的表,用于计算字段。

3

groupingColumn

在提供的表参数中用于分组的列。

4

isSubtotal_columnName

提供的表参数中的布尔列,其中包含对应 groupingColumn 列的 ISSUBTOTAL 值。

5

filterTable

表示要包含在确定是否添加特定项目组合(无数据)的逻辑中的筛选器的表。用于避免 ADDMISSINGITEMS 添加由于筛选器删除而未存在的项目组合。

备注

要确定要评估的不同列中的项目的组合 -

  • AutoExist 应用于同一表内的列。
  • CrossJoin 应用于不同的表。

带有 ROLLUPGROUP 的 ADDMISSINGITEMS

ROLLUPGROUP 用于 ROLLUPISSUBTOTAL 函数内部,以反映提供的表参数中存在的 ROLLUPGROUP。

限制

  • 如果使用 ROLLUPISSUBTOTAL 定义提供的表参数或通过其他方式添加等效行和 ISSUBTOTAL 列,则必须在 ADDMISSINGITEMS 中使用相同的参数使用 ROLLUPISSUBTOTAL。如果使用 ROLLUPGROUP 与 ROLLUPISSUBTOTAL 定义提供的表参数,则也适用于 ROLLUPGROUP。

  • ADDMISSINGITEMS 函数要求,如果使用 ROLLUPISSUBTOTAL 定义提供的表参数,则提供的表参数中必须存在与每个分组列或 ROLLUPGROUP 对应的 ISSUBTOTAL 列。此外,必须在 ADDMISSINGITEMS 内部的 ROLLUPISSUBTOTAL 函数中提供 ISSUBTOTAL 列的名称,并且它们必须与提供的表参数中的布尔列的名称匹配。这使 ADDMISSINGITEMS 函数能够识别源于行是其他空白值的合计行这一事实的空白值。

  • 如果使用 ROLLUPGROUP 与 ROLLUPISSUBTOTAL 定义提供的表参数,则每个 ROLLUPGROUP 必须提供一个 ISSUBTOTAL 列名称,并且它必须与提供的表参数中相应的 ISSUBTOTAL 列名称匹配。

ADDMISSINGITEMS 函数将为其添加的空白行的 IsSubtotal 列返回空白值。

示例

= ADDMISSINGITEMS (Products, FILTER (Products,Products[Product]="Air Purifier")) 
dax_functions_filter.htm
广告