Power Bi: рассчитать сумму столбцов по месяцам в другой таблице

У меня есть данные об отпуске компании. Вот пример данных:

STAFF  PL   CL  ML  SP  LWP TL  Month
A      1    2   0   0   6   9   April
B      14   0   4   0   0   18  April
A      1    2   0   0   1   4   May
B      1    0   4   0   0   5   May
A      1    2   0   0   2   5   June
B      2    0   4   0   0   6   June

Я хочу преобразовать эти данные в структуру таблицы, как это

Вот пример данных:

Types of Leave  Count   Month
ML                89    4
CL                114   4
LWP               17    4
PL                135   4
SP                89    4
ML                89    5
CL                114   5
LWP               17    5
PL                135   5
SP                89    5
ML                89    6
CL                114   6
LWP               17    6
PL                135   6
SP                89    6

Можно ли это использовать с помощью SelectColumns, Summarizecolumn dax-функций?

Я старался --

SUMMARIZE(Table1, Table1[CL],Table1[LWP],Table1[ML],Table1[PL],"CL2", SUM(Table1[CL]), "ML2", SUM(Table1[ML]), "LW2P",SUM(Table1[LWP]), "P2L", SUM(Table1[PL]))

Это просто дало мне странные результаты.

1 ответ

Отключите данные после удаления имени и столбцов персонала. Затем преобразуйте название месяца в номер месяца и создайте сводную таблицу.

На снимке экрана показан результат в Excel, но то же самое можно сделать в Power BI.

Вот код M для запроса, который был записан, когда я щелкал значки ленты:

let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"STAFF", type text}, {"PL", Int64.Type}, {"CL", Int64.Type}, {"ML", Int64.Type}, {"SP", Int64.Type}, {"LWP", Int64.Type}, {"TL", Int64.Type}, {"Month", type text}}),
    #"Removed Columns" = Table.RemoveColumns(#"Changed Type",{"STAFF", "TL"}),
    #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(#"Removed Columns", {"Month"}, "Attribute", "Value"),
    #"Renamed Columns" = Table.RenameColumns(#"Unpivoted Other Columns",{{"Attribute", "Type of Leave"}, {"Value", "Count"}}),
    #"Added Custom" = Table.AddColumn(#"Renamed Columns", "Custom", each Date.FromText([Month]&"1 2017")),
    #"Extracted Month" = Table.TransformColumns(#"Added Custom",{{"Custom", Date.Month}}),
    #"Removed Columns1" = Table.RemoveColumns(#"Extracted Month",{"Month"}),
    #"Renamed Columns1" = Table.RenameColumns(#"Removed Columns1",{{"Custom", "Month"}})
in
    #"Renamed Columns1"
Другие вопросы по тегам