gpt4 book ai didi

powerbi - DAX 获取销售额为正的最后一个日期,无论日期行上下文

转载 作者:行者123 更新时间:2023-12-02 09:03:34 31 4
gpt4 key购买 nike

如何使用销售金额获取最小和最大日期之间的所有日期的销售金额的最新日期。在表中,某些日期可能具有空金额。以下是预期结果的示例:

enter image description here

这是我尝试过的。这些都是 DAX 指标。

LastDate = 
CALCULATE(
LASTDATE( Sales[Date] ),
REMOVEFILTERS( Sales[Date] )
)
LastNonBlank = 
CALCULATE(
LASTNONBLANK( Sales[Date], [Sales] ),
REMOVEFILTERS( Sales )
)
MaxDate = 
CALCULATE(
MAX( Sales[Date] ),
REMOVEFILTERS( Sales[Date] )
)
MaxDate_Filter = 
CALCULATE(
MAX( Sales[Date] ),
FILTER( ALL( Sales ), Sales[Amount] > 0 )
)

这是我得到的:

enter image description here

因此,没有一项措施会产生预期的结果。

重新创建问题的表:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMjIwMtA1MAQiJR0lEIYLmCjF6iDJGwHl8EgbA+VM8cibAOWM8cibQoxXio0FAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Date = _t, Amount = _t, #"Expected Result" = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Date", type date}, {"Amount", Int64.Type}, {"Expected Result", type date}})
in
#"Changed Type"

更新

在这里,我找到了解决我问题的有趣引用:

https://www.sqlbi.com/articles/hiding-future-dates-for-calculations-in-dax/

我们将计算列添加到 Sales 表:
DatesWithSales = 
var CalendarDate = Sales[Date]
return
CalendarDate <= CALCULATE( MAX( Sales[Date] ), FILTER( ALLSELECTED( Sales ), Sales[Amount] > 0 ) ) &&
CalendarDate >= CALCULATE( MIN( Sales[Date] ), FILTER( ALLSELECTED( Sales ), Sales[Amount] > 0 ) )

然后我们使用度量:
Expected Result = 
CALCULATE(
MAX( Sales[Date] ),
CALCULATETABLE(
VALUES( Sales[Date] ), -- here can be whatever time intelligence function like SAMEPERIODLASTYEAR( Sales[Date] )
Sales[DatesWithSales] = TRUE()
)
)

最佳答案

您的 MaxDate_Filter看起来不错。如果您想清除超出此范围的日期,那么您可以这样做

Expected Result =
VAR RowDate = SELECTEDVALUE ( Sales[Date] )
RETURN
IF ( RowDate <= [MaxDate_Filter], RowDate )

或者,假设您已经定义了一个类似的 [MinDate_Filter]并希望在两侧进行过滤:
Expected Result =
VAR RowDate = SELECTEDVALUE ( Sales[Date] )
RETURN
IF ( RowDate <= [MaxDate_Filter] && RowDate >= [MinDate_Filter], RowDate )

关于powerbi - DAX 获取销售额为正的最后一个日期,无论日期行上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61098809/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com