let
Source = SharePoint.Tables([URL="http://collabsite/"]http://CollabSite[/URL], [ApiVersion = 14]),
ProjectKeyEvents1 = Source{[Name="ProjectKeyEvents"]}[Content],
//Remove Unused Columns
#"Removed Unused Columns" = Table.RemoveColumns(ProjectKeyEvents1,{"ContentTypeID", "ContentType", "Modified", "Created", "CreatedById", "ModifiedById", "Owshiddenversion", "Version", "Path", "BusinessUnitIntendedBusinessUnit", "CreatedBy", "ModifiedBy", "Attachments", "Id"}),
#"Reordered Columns" = Table.ReorderColumns(#"Removed Unused Columns",{"Date", "DescriptionOfEvent", "AssetProject", "BusinessUnitIntendedBusinessUnitValue", "DisplayInVisual", "EventOutcome", "EventResolved"}),
//Sort rows by Event Date
#"Sorted Rows" = Table.Sort(#"Reordered Columns",{{"BusinessUnitIntendedBusinessUnitValue", Order.Ascending}, {"Date", Order.Ascending}}),
//Calculate Quarter of Year
#"Calc Qtr Num" = Table.AddColumn(#"Sorted Rows", "Quarter", each Date.QuarterOfYear([Date])),
//Change Quarter Number to Text for concatenation
#"Changed Type" = Table.TransformColumnTypes(#"Calc Qtr Num",{{"Quarter", type text}, {"Date", type date}}),
//Concatenate Quarter Name
#"Concat Q and Num" = Table.AddColumn(#"Changed Type", "QuarterOfYear", each "Q"&[Quarter]),
//Remove Numeric Quarter Column
#"Removed Columns1" = Table.RemoveColumns(#"Concat Q and Num",{"Quarter"}),
//Calculate Month Name
#"Calc Month Name" = Table.AddColumn(#"Removed Columns1", "MonthName", each Date.MonthName([Date])),
//Calculate Day of Month
#"Calc Day of Month" = Table.AddColumn(#"Calc Month Name", "Day", each Date.Day([Date])),
//Add Index
#"Added Index" = Table.AddIndexColumn(#"Calc Day of Month", "Index", 1, 1),
#"Reordered Columns1" = Table.ReorderColumns(#"Added Index",{"Date", "AssetProject", "BusinessUnitIntendedBusinessUnitValue", "DescriptionOfEvent", "Index", "DisplayInVisual", "EventOutcome", "EventResolved"}),
#"Sorted Rows1" = Table.Sort(#"Reordered Columns1", {"Date", Order.Ascending}),
#"Grouped Rows" = Table.Group(#"Sorted Rows1", {"Date"}, {{"DateTable", each Table.AddIndexColumn(_, "DateIndex",1,1), type table}}),
// After interactively Grouping by Rows (for each Date), the M code was manually modified as described below.
// The following was changed:
// each _,
// to:
// each Table.AddIndexColumn(_, "DateIndex",1,1),
#"Expanded DateTable" = Table.ExpandTableColumn(#"Grouped Rows", "DateTable", {"AssetProject", "BusinessUnitIntendedBusinessUnitValue", "DescriptionOfEvent", "Index", "DisplayInVisual", "EventOutcome", "QuarterOfYear", "MonthName", "Day", "EventResolved", "DateIndex"}, {"AssetProject", "BusinessUnitIntendedBusinessUnitValue", "DescriptionOfEvent", "Index", "DisplayInVisual", "EventOutcome", "QuarterOfYear", "MonthName", "Day", "EventResolved", "DateIndex"}),
#"Reordered Columns2" = Table.ReorderColumns(#"Expanded DateTable",{"Date", "DateIndex", "AssetProject", "BusinessUnitIntendedBusinessUnitValue", "DescriptionOfEvent", "Index", "DisplayInVisual", "EventOutcome", "QuarterOfYear", "MonthName", "Day", "EventResolved"})
in
#"Reordered Columns2"