Вставка столбца для расчета разницы между значениями, относящимися к новым датам - PullRequest
0 голосов
/ 29 января 2019

Я создаю таблицу, используя power power, в этой таблице несколько частей # с qty.Каждую неделю запрос мощности обновляется, чтобы получить новые еженедельные кол-во для частей #.Я пытаюсь создать столбец, который рассчитывает разницу (увеличение или уменьшение) количества, когда они меняются каждую неделю.

Мои 3 столбца: Дата, Номер продукта, Кол-во

enter image description here

Не получается найти правильный синтаксис дляValue.Subtract ([QTY], [QTY], [Date] [Номер продукта])

1 Ответ

0 голосов
/ 29 января 2019

Вы можете сделать это, используя M (Power Query Language):

#"Sorted Rows" = Table.Sort(#"Prior Step",{{"Product Number", Order.Ascending}, {"Date", Order.Ascending}}),
#"Added Index" = Table.AddIndexColumn(#"Sorted Rows", "Index", 0, 1),
#"Added Qty Change" = Table.AddColumn(#"Added Index", "Qty Change", each try if #"Added Index"[Product Number]{[Index]-1} = [Product Number] then [Qty] - #"Added Index"[Qty]{[Index]-1} else null otherwise null, type number),
#"Removed Columns" = Table.RemoveColumns(#"Added Qty Change",{"Index"})

Я думаю, что было бы более эффективно сделать это с помощью DAX, в вашей модели данных, однако.Загрузите таблицу в модель данных, затем добавьте вычисляемый столбец:

Qty Change:= 

VAR CurrentDate =  'Inventory Balance'[Date]

VAR CurrentProduct = 'Inventory Balance'[Product Number]

VAR PreviousDate = 
    CALCULATE ( 
        MAX ( 'Inventory Balance'[Date] ),
        FILTER ( 
            ALL ( 'Inventory Balance' ),
            'Inventory Balance'[Date] < CurrentDate
            && 'Inventory Balance'[Product Number] = CurrentProduct
        )
    )

VAR PreviousQty = 
    CALCULATE ( 
        SUM ( 'Inventory Balance'[Qty] ),
        FILTER ( 
            ALL ( 'Inventory Balance' ),
            'Inventory Balance'[Date]  =  PreviousDate
            && 'Inventory Balance'[Product Number] = CurrentProduct
        )
    )

RETURN
    'Inventory Balance'[Qty] - PreviousQty
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...