Forum Discussion
Anonymous
7 years agoNot applicable
Iterate Web.Contents
I have a table which has column URL which contains API endpoint URL with different parameters (start and end dates). If I try to use it directly with Web.Contents it gives error: Expression.Error:...
- 7 years ago
Hi Anonymous,
Please try to modify M code as below:
let StartYear = 2018, EndYear = 2019, Years = Table.FromList({StartYear..EndYear}, Splitter.SplitByNothing(), null,null, ExtraValues.Error), AddMonth = Table.AddColumn(Years, "Month", each {1..12}), ShowMonths = Table.ExpandListColumn(AddMonth, "Month"), CreateStartDate = Table.AddColumn(ShowMonths, "StartDate", each #date([Column1],[Month],1), type date), CreateEndDate = Table.AddColumn(CreateStartDate, "EndDate", each Date.EndOfMonth([StartDate]), type date), RequestHeaders = [Accept="application/json" , Authorization="Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"], OptionsRecord = [Headers=RequestHeaders], #"Changed Type" = Table.TransformColumnTypes(CreateEndDate,{{"StartDate", type text}, {"EndDate", type text}}), #"Added Custom Column" = Table.AddColumn(#"Changed Type", "StartDate2", each Text.Combine({Text.From([Column1], "lv-LV"), "-", Date.ToText(Date.From([StartDate]), "MM"), "-", Text.Middle(Text.From([Column1], "lv-LV"), 1, 2)}), type text), #"Added Custom Column1" = Table.AddColumn(#"Added Custom Column", "EndDate2", each Text.Combine({Text.From([Column1], "lv-LV"), "-", Date.ToText(Date.From([EndDate]), "MM"), "-", Date.ToText(Date.From([EndDate]), "%d")}), type text), #"URL" = Table.AddColumn(#"Added Custom Column1", "URL", each "API ENDPOINT URL?start_date="&[StartDate2]&"&end_date="&[EndDate2]&"", type text), #"Response" = Table.AddColumn(#"URL", "Custom2", each Web.Contents([URL])) in #"Response"Best regards,
Yuliana Gu
v-yulgu-msft
7 years agoMicrosoft Employee
Hi Anonymous,
Please try to modify M code as below:
let
StartYear = 2018,
EndYear = 2019,
Years = Table.FromList({StartYear..EndYear}, Splitter.SplitByNothing(), null,null, ExtraValues.Error),
AddMonth = Table.AddColumn(Years, "Month", each {1..12}),
ShowMonths = Table.ExpandListColumn(AddMonth, "Month"),
CreateStartDate = Table.AddColumn(ShowMonths, "StartDate", each #date([Column1],[Month],1), type date),
CreateEndDate = Table.AddColumn(CreateStartDate, "EndDate", each Date.EndOfMonth([StartDate]), type date),
RequestHeaders = [Accept="application/json" , Authorization="Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"],
OptionsRecord = [Headers=RequestHeaders],
#"Changed Type" = Table.TransformColumnTypes(CreateEndDate,{{"StartDate", type text}, {"EndDate", type text}}),
#"Added Custom Column" = Table.AddColumn(#"Changed Type", "StartDate2", each Text.Combine({Text.From([Column1], "lv-LV"), "-", Date.ToText(Date.From([StartDate]), "MM"), "-", Text.Middle(Text.From([Column1], "lv-LV"), 1, 2)}), type text),
#"Added Custom Column1" = Table.AddColumn(#"Added Custom Column", "EndDate2", each Text.Combine({Text.From([Column1], "lv-LV"), "-", Date.ToText(Date.From([EndDate]), "MM"), "-", Date.ToText(Date.From([EndDate]), "%d")}), type text),
#"URL" = Table.AddColumn(#"Added Custom Column1", "URL", each "API ENDPOINT URL?start_date="&[StartDate2]&"&end_date="&[EndDate2]&"", type text),
#"Response" = Table.AddColumn(#"URL", "Custom2", each Web.Contents([URL]))
in
#"Response"
Best regards,
Yuliana Gu
gingercat123
4 years agoFrequent Visitor
Cool works great, how do i restrict "
AddMonth = Table.AddColumn(Years, "Month", each {1..12})," from 1 to current month