Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powerbi 机车车辆位置功率BI_Powerbi_Dax_Powerquery_Powerpivot - Fatal编程技术网

Powerbi 机车车辆位置功率BI

Powerbi 机车车辆位置功率BI,powerbi,dax,powerquery,powerpivot,Powerbi,Dax,Powerquery,Powerpivot,谢谢你的帮助 我有一个如下所示的数据源:许多客户、市场和产品 预报船日期 顾客 市场 SKU 艏楼式 艏楼名 9Lc 01/01/2021 安卡斯特 英国 11111 装运 艏楼 2. 01/01/2021 安卡斯特 英国 11111 损耗 艏楼 1. 01/02/2021 安卡斯特 英国 11111 装运 艏楼 2. 01/02/2021 安卡斯特 英国 11111 损耗 艏楼 1. 01/03/2021 安卡斯特 英国 11111 装运 艏楼 2. 01/03/2021 安卡斯特 英国 11

谢谢你的帮助

我有一个如下所示的数据源:许多客户、市场和产品

预报船日期 顾客 市场 SKU 艏楼式 艏楼名 9Lc 01/01/2021 安卡斯特 英国 11111 装运 艏楼 2. 01/01/2021 安卡斯特 英国 11111 损耗 艏楼 1. 01/02/2021 安卡斯特 英国 11111 装运 艏楼 2. 01/02/2021 安卡斯特 英国 11111 损耗 艏楼 1. 01/03/2021 安卡斯特 英国 11111 装运 艏楼 2. 01/03/2021 安卡斯特 英国 11111 损耗 艏楼 1. 01/04/2021 安卡斯特 英国 11111 装运 艏楼 2. 01/04/2021 安卡斯特 英国 11111 损耗 艏楼 1. 01/04/2021 安卡斯特 英国 11111 股票 艏楼 10 01/05/2021 安卡斯特 英国 11111 装运 艏楼 2. 01/05/2021 安卡斯特 英国 11111 损耗 艏楼 1. 01/06/2021 安卡斯特 英国 11111 装运 艏楼 2. 01/06/2021 安卡斯特 英国 11111 损耗 艏楼 1.
我添加了一个YearMonth列,以便仅在月份级别进行迭代:

示例数据为:

禁用小计并隐藏总计标题后,我得到了以下结果:

利用这一点:

Measure :=
VAR MaxFSD =
    MAX ( Forecasts[ForecastShipmentDate] )
VAR StockDate =
    CALCULATE (
        MIN ( Forecasts[ForecastShipmentDate] ),
        ALL ( Dates ),
        Forecasts[ForecastType] = "Stock"
    )
VAR StockRange =
    FILTER (
        ALL ( Dates[YearMonth] ),
        Dates[YearMonth]
            >= YEAR ( StockDate ) * 100
                + MONTH ( StockDate )
            && Dates[YearMonth]
                <= YEAR ( MaxFSD ) * 100
                    + MONTH ( MaxFSD )
    )
RETURN
    IF (
        HASONEVALUE ( Forecasts[Market] ),
        CALCULATE (
            SUM ( Forecasts[9Lc] ),
            ALL ( Dates ),
            StockRange,
            Forecasts[ForecastType] = "Stock"
        )
            + CALCULATE (
                SUM ( Forecasts[9Lc] ),
                ALL ( Dates ),
                StockRange,
                Forecasts[ForecastType] = "Shipment"
            )
            - CALCULATE (
                SUM ( Forecasts[9Lc] ),
                ALL ( Dates ),
                StockRange,
                Forecasts[ForecastType] = "Depletion"
            )
    )
度量:=
VAR MaxFSD=
最大值(预测[预报装运日期])
VAR股票日期=
算计(
最小值(预测[预报装运日期]),
所有(日期),
预测[ForecastType]=“库存”
)
VAR StockRange=
滤器(
所有(日期[年/月]),
日期[年/月]
>=年份(库存日期)*100
+月份(库存日期)
&&日期[年/月]

您能描述一下您如何尝试显示度量值吗?表/矩阵即行/列标题、切片器。此外,如果它是聚合度量值(仅以年/月作为行标题)在客户/市场/产品之间,您如何决定从不同的客户/市场/产品中选择哪种股票?嘿,是的,显示可能是非常基本的。一个只按月份显示头寸的矩阵也可能是一个折线图。它将按客户、市场或SKU进行过滤。这些将通过单独的维度ta进行控制bles/slicersI将在4月份收到一份预测,只有4月份的期初库存以及所有月份的出货量和消耗量。逻辑相对简单,但公式会造成思维障碍。逻辑是……在4月份之前忽略所有内容。取4月份的期初库存,加上出货量减去消耗量,这将创建一个5月份的“虚拟期初库存”。以5月份的“虚拟期初库存”为例,在所有outlook月份重复添加装运减去消耗。我正在尝试创建的是“虚拟期初库存”“从4月份开始的所有月份,我都有实际的开盘库存。我仍然不明白您将如何处理多个选定客户/市场/SKU的存在。您可能会将切片机限制为单一选择,但我将以满足基本要求的模式进行响应。