Forum Discussion
hauffa
3 years agoFrequent Visitor
Looping with List.Generate for API calls; Fails when only one loop needed
Happy Wednesday. I have the following code which calls a function that gets API results. All works just fine as long as there's more than one loop needed (so > 500 records). I'd love to know what I'm doing wrong (and how I might write this better). I've used this for several different APIs with success - this is the only one that is giving me issues.
let
Source = (wfReportId as text, optional aftCursor as text) => let Source =
List.Generate(() =>
[
Result = try fnGetComplianceFW(wfReportId, aftCursor) otherwise null
, afterCursor = Result[data][policyAssessments][pageInfo][endCursor]
]
, each [Result][data][policyAssessments][pageInfo][hasNextPage] <> false
, each [
Result = try fnGetComplianceFW(wfReportId, [afterCursor]) otherwise null
, afterCursor = Result[data][policyAssessments][pageInfo][endCursor]
]
, each [Result][data][policyAssessments][nodes]
),
#"Converted to Table" = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error)
in
#"Converted to Table"
in
Source
Thanks in advance,
hauffa
rethink and change the exit condition
each [Result][data][policyAssessments][pageInfo][hasNextPage] <> false