Forum Discussion
Uzi2019
3 years agoCommunity Champion
Split data month wise
Hi Experts,
I have 3 columns Date( Continuous Date), Campaign Start Date, Campaign End date.
I want month wise split as I mentioned in screenshot.
Please help me to get this done.
Thank you in advance.
Uzi2019 , You can do that power query, expand the same table
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUTLXNzTRNzIwMgKyLfWNIcxYnWglkICZvpEFTBLItoTKxgIA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"S N" = _t, #"Start Date" = _t, #"End Date" = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"Start Date", type date}, {"End Date", type date}}), #"Added Custom" = Table.AddColumn(#"Changed Type", "New Start Date", each let _s =[Start Date], _q= List.Select( List.Dates([Start Date], Duration.Days([End Date]-[Start Date])+1,#duration(1,0,0,0)), each _ = List.Max({_s,Date.StartOfMonth(_)})) in _q), #"Expanded New Start Date" = Table.ExpandListColumn(#"Added Custom", "New Start Date"), #"Changed Type1" = Table.TransformColumnTypes(#"Expanded New Start Date",{{"New Start Date", type date}}), #"Added Custom1" = Table.AddColumn(#"Changed Type1", "New End Date", each List.Min({[End Date], Date.EndOfMonth([New Start Date])})) in #"Added Custom1"
3 Replies
- amitchandakSuper User
Uzi2019 , Try a new table like
Table = Distinct(SELECTCOLUMNS(ADDCOLUMNS(GENERATE(Data, CALENDAR([Start Date],[End Date])), "Start Date 1", max(eomonth([Date],-1)+1,[Start Date]) , "End 1", Min(EOMONTH([Date],0), [End Date])), "Start Date", [Start Date], "End date", [End Date], "New Start", [Start Date 1],"New end", [End 1]))Find the attached file after signature
- Uzi2019Community Champion
Hi amitchandak
Thank you for your response.
But I want the result in measure or column. Need to show againts various different measures and metrics.
So cant create seperte table fo this.- amitchandakSuper User
Uzi2019 , You can do that power query, expand the same table
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUTLXNzTRNzIwMgKyLfWNIcxYnWglkICZvpEFTBLItoTKxgIA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"S N" = _t, #"Start Date" = _t, #"End Date" = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"Start Date", type date}, {"End Date", type date}}), #"Added Custom" = Table.AddColumn(#"Changed Type", "New Start Date", each let _s =[Start Date], _q= List.Select( List.Dates([Start Date], Duration.Days([End Date]-[Start Date])+1,#duration(1,0,0,0)), each _ = List.Max({_s,Date.StartOfMonth(_)})) in _q), #"Expanded New Start Date" = Table.ExpandListColumn(#"Added Custom", "New Start Date"), #"Changed Type1" = Table.TransformColumnTypes(#"Expanded New Start Date",{{"New Start Date", type date}}), #"Added Custom1" = Table.AddColumn(#"Changed Type1", "New End Date", each List.Min({[End Date], Date.EndOfMonth([New Start Date])})) in #"Added Custom1"