如何用过去的销售和采购来计算库存?
How to calculate inventory with past sales and purchases?
我在 PowerBI 中有三个 table,一个销售额 table 一年内售出的文章,一年内购买的文章以及某个时间戳的库存。
我现在希望能够计算每天的库存。
数据可以这样举例:
我尝试为每个产品创建一个列,然后创建 365 行来显示每天的库存。但是,我不知道如何合并29.03.2019的库存。
另外,为了演示我只用了三篇文章。但是,如果我有一个包含 10.000 种产品的数据集,那么理想的计算方法是什么以便能够在以后的仪表板中正确显示它?
首先,我创建了一个 StockTable,我们在其中合并了采购和销售:
StockTable =
UNION(
ADDCOLUMNS(Purch;"Event";"Purchage") ;
SELECTCOLUMNS(Sold;"Article";Sold[Article];"PurchageDate";Sold[SalesDate];"Amount";-Sold[Amount];"Event";"Sold")
)
因为我们需要确保关系模型是正确的,所以我添加了一个从 Invent 到 StockTable 1 的新关系:*
接下来,我在 StockTable 上添加了一个 Stock 列,这将根据商品的库存日期计算特定日期的库存。它只有真正发生变化时的记录(不需要 365 天)。
Stock =
var lastStockDate = RELATED(Invent[Date])
return if (StockTable[PurchageDate] < lastStockDate;
RELATED(Invent[Amount in inventory]) + CALCULATE(SUM(StockTable[Amount]); FILTER(StockTable;StockTable[Article] = EARLIER(StockTable[Article]) && StockTable[PurchageDate] >= EARLIER(StockTable[PurchageDate]) && StockTable[PurchageDate] <= lastStockDate)) ;
CALCULATE(SUM(StockTable[Amount]); FILTER(StockTable;StockTable[Article] = EARLIER(StockTable[Article]) && StockTable[PurchageDate] <= EARLIER(StockTable[PurchageDate]) && StockTable[PurchageDate] > lastStockDate)) + RELATED(Invent[Amount in inventory]))
现在可以创建一个图表来显示每篇文章的库存:
我在 PowerBI 中有三个 table,一个销售额 table 一年内售出的文章,一年内购买的文章以及某个时间戳的库存。
我现在希望能够计算每天的库存。
数据可以这样举例:
我尝试为每个产品创建一个列,然后创建 365 行来显示每天的库存。但是,我不知道如何合并29.03.2019的库存。
另外,为了演示我只用了三篇文章。但是,如果我有一个包含 10.000 种产品的数据集,那么理想的计算方法是什么以便能够在以后的仪表板中正确显示它?
首先,我创建了一个 StockTable,我们在其中合并了采购和销售:
StockTable =
UNION(
ADDCOLUMNS(Purch;"Event";"Purchage") ;
SELECTCOLUMNS(Sold;"Article";Sold[Article];"PurchageDate";Sold[SalesDate];"Amount";-Sold[Amount];"Event";"Sold")
)
因为我们需要确保关系模型是正确的,所以我添加了一个从 Invent 到 StockTable 1 的新关系:*
接下来,我在 StockTable 上添加了一个 Stock 列,这将根据商品的库存日期计算特定日期的库存。它只有真正发生变化时的记录(不需要 365 天)。
Stock =
var lastStockDate = RELATED(Invent[Date])
return if (StockTable[PurchageDate] < lastStockDate;
RELATED(Invent[Amount in inventory]) + CALCULATE(SUM(StockTable[Amount]); FILTER(StockTable;StockTable[Article] = EARLIER(StockTable[Article]) && StockTable[PurchageDate] >= EARLIER(StockTable[PurchageDate]) && StockTable[PurchageDate] <= lastStockDate)) ;
CALCULATE(SUM(StockTable[Amount]); FILTER(StockTable;StockTable[Article] = EARLIER(StockTable[Article]) && StockTable[PurchageDate] <= EARLIER(StockTable[PurchageDate]) && StockTable[PurchageDate] > lastStockDate)) + RELATED(Invent[Amount in inventory]))
现在可以创建一个图表来显示每篇文章的库存: