如果我要将Power BI函数的返回值用作报告的轴值,该怎么办?

时间:2019-04-26 09:37:13

标签: powerbi powerquery

我想编写一个接受date参数并创建当天(即24小时)的每小时日期和时间数据的函数。我想将这24小时用作Power BI报表的轴值。这些值应以哪种格式返回,以便我的报告获得作为参数传递的日期的准确小时图。

1 个答案:

答案 0 :(得分:1)

您要执行的操作的问题是,最终会得到许多不同的时间表-每次调用该函数都需要一个时间表。

您应该真正努力使每个表做一件事情并做好。这意味着只有一个日期表和一个时间表。日期表应涵盖数据集中的所有日期,时间表应与日期无关。这样,您就可以将每个表的职责区分开来,并且可以照常使用日期表。

let
    Source = {0..23},
    #"Converted to Table" = Table.FromList(
        Source, Splitter.SplitByNothing(),
        {"Index"}, null, ExtraValues.Error
    ),
    #"Changed Type" = Table.TransformColumnTypes(
        #"Converted to Table",
        {{"Index", Int64.Type}}
    ),
    #"Added Custom" = Table.AddColumn(
        #"Changed Type", "Hour",
        each #time([Index], 0, 0),
        Time.Type
    )
in
    #"Added Custom"

使用纯时间列上与您的交易表的关系进行设置。然后在轴上使用“索引”或“时间”列。请注意,该表每小时只有一行,因此,如果需要不同的粒度,则必须为每分钟/秒/四分之一小时添加一行。但这一切都取决于您的数据。