EVALUATEANDLOG

适用于:计算列计算表Measure视觉计算

返回 first 参数的 valueand 记录在 DAX 评估 Log 探查器事件中。 此函数仅在 Power BI Desktop 中完全正常运行。 它在其他环境中充当简单的直通函数。

语法

EVALUATEANDLOG(<Value>, [Label], [MaxRows])

参数

术语 定义
Value 要 and 记录 or 表表达式的任何标量表达式。
Label (可选)json 文本中包含的常量字符串 andDAX 评估 Log 事件的 Label 列,可用于轻松标识函数调用的实例。
MaxRows (可选)当 first 参数为表表达式时,DAX Evaluation Log 事件的 json 文本中的最大行数。 默认值为 10。

返回 value

first 参数的 value。

在 DAX 评估 Log 探查器事件中记录的 JSON 结构包括:

  • expression 是 first 参数的文本版本。
  • label 是在表达式中指定的 Label 参数。
  • inputs 是评估上下文中影响 first 参数 values 的列的列表。
  • 当 first 参数是表表达式时,outputs 是单个列 [Value] 的列表,and 输出列的列表 first。
  • 当 first 参数是标量表达式时,data 是输入 valuesand 输出 values 的列表,当 first 参数是表表达式时,and 输入 valuesand 相应的输出行的列表。
  • 当 first 参数是表表达式时,rowCount 行数。 Even 尽管 json 输出中的行数被 MaxRows 参数截断,但 rowCount 是没有截断的实际行数。

言论

  • 可以使用 SQL Server Profilerand 开源 DAX 调试输出 工具捕获跟踪事件。

  • 此函数可与 DAX 表达式中的几乎所有子表达式一起使用,and 整个表达式仍将有效。

  • 在单个查询中多次计算 first 参数时,该函数将生成单个 DAX 计算 Log 事件,该事件 contains 输入 valuesand 相应的输出 values。

  • 指定标签参数后,value 在 json 输出中返回 andDAX 评估 Log 事件的 Label 列。

  • If first 参数是表表达式,DAX Evaluation Log 事件中仅显示顶部的 MaxRows 行。

  • 在某些情况下,由于优化,此函数 not 执行。

  • If DAX 评估 Log 事件大于 100 万个字符,则会截断以保留正确的 json 结构。

示例 1

以下 DAX 查询:

evaluate
SUMMARIZE(
    EVALUATEANDLOG(FILTER(Sales, [ProductKey] = 528)),
    Sales[SalesTerritoryKey],
    "sum",
    sum(Sales[Sales Amount])
)

返回以下 DAX 评估 Log 事件:

{
    "expression": "FILTER(Sales, [ProductKey] = 528)",
    "inputs": [],
    "outputs": ["'Sales'[SalesOrderLineKey]", "'Sales'[ResellerKey]", "'Sales'[CustomerKey]", "'Sales'[ProductKey]", "'Sales'[OrderDateKey]", "'Sales'[DueDateKey]", "'Sales'[ShipDateKey]", "'Sales'[SalesTerritoryKey]", "'Sales'[Order Quantity]", "'Sales'[Unit Price]", "'Sales'[Extended Amount]", "'Sales'[Product Standard Cost]", "'Sales'[Total Product Cost]", "'Sales'[Sales Amount]", "'Sales'[Unit Price Discount Pct]"],
    "data": [
        {
            "input": [],
            "rowCount": 3095,
            "output": [
                [52174001, -1, 23785, 528, 20190707, 20190717, 20190714, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
                [52173001, -1, 26278, 528, 20190707, 20190717, 20190714, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
                [52082001, -1, 23831, 528, 20190705, 20190715, 20190712, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
                [52054002, -1, 11207, 528, 20190704, 20190714, 20190711, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
                [52036001, -1, 25337, 528, 20190704, 20190714, 20190711, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
                [51939002, -1, 23670, 528, 20190702, 20190712, 20190709, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
                [51911002, -1, 11746, 528, 20190701, 20190711, 20190708, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
                [51379003, -1, 13745, 528, 20190612, 20190622, 20190619, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
                [51264002, -1, 11282, 528, 20190605, 20190615, 20190612, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
                [51184003, -1, 11263, 528, 20190531, 20190610, 20190607, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0]
            ]
        }
    ]
}

示例 2

以下 DAX 具有标量参数的查询 and 不同的属性:

evaluate
SELECTCOLUMNS(
    TOPN(5, Customer),
    [Customer],
    "Customer",
    EVALUATEANDLOG([Customer] & ", " & [Country-Region], "customerLog")
)

返回以下 DAX 评估 Log 事件:

{
    "expression": "[Customer] & \", \" & [Country-Region]",
    "label": "customerLog",
    "inputs": ["'Customer'[Customer]", "'Customer'[Country-Region]"],
    "data": [
        {
            "input": ["Russell Xie", "United States"],
            "output": "Russell Xie, United States"
        },
        {
            "input": ["Savannah Baker", "United States"],
            "output": "Savannah Baker, United States"
        },
        {
            "input": ["Maurice Tang", "United States"],
            "output": "Maurice Tang, United States"
        },
        {
            "input": ["Emily Wood", "United States"],
            "output": "Emily Wood, United States"
        },
        {
            "input": ["Meghan Hernandez", "United States"],
            "output": "Meghan Hernandez, United States"
        }
    ]
}

TOCSV TOJSON