PowerBI调用分页API用List.Generate报continuation未识别错误如何解决
错误原因
报错是因为M语言中引用记录字段需要明确指定所属记录,你在List.Generate的迭代逻辑里直接把continuation作为独立变量调用,Power Query找不到对应名称的变量,就会抛出未识别的错误。
你原来的代码里,GetNextContinuationToken(continuation)的入参continuation是上一步迭代生成的状态记录中的字段,必须用方括号包裹来引用字段值。
修正后代码
let allDeployments = List.Generate( () => [result=GetDeployments(0), continuation=0], each [continuation] <> null, each [ result=GetDeployments(GetNextContinuationToken([continuation])), continuation=GetNextContinuationToken([continuation]) ], each [result] ) in allDeployments
额外注意事项
- 请先确认
GetDeployments、GetNextContinuationToken两个自定义函数已在你的Power Query环境中完成定义且可正常调用 - 若你的API首次请求不需要传入起始续传标记,可将初始状态的
continuation值调整为对应合法的初始值 - 后续如果需要把所有分页的结果合并成单张表,可以在
allDeployments步骤后追加Table.Combine(allDeployments)完成合并
内容的提问来源于stack exchange,提问作者jeromesubs
相关产品推荐
相关产品推荐

