Smartsheet的API输出将行和列作为单独的对象返回,这些对象彼此独立。 这会导致列的单独记录(字段名称列表)和行的另一组记录(具有来自各个字段的单个值字段的记录)
有没有办法返回单个JSON列表(行和列会产生一个记录列表)?
这是我在查询编辑器中使用的代码,它返回单独的行和列
= Web.Contents(
"https://api.smartsheet.com/1.1/sheet/[SHEET_ID]",
[
Headers =
[
#"Authorization" = "Bearer YOUR_API_TOKEN"
]
]
)
答案 0 :(得分:0)
我使用他们网站上的示例数据来提出这组转换:
let
Source = Json.Document(File.Contents("D:\testdata\foo.json")),
ColumnIds = List.Transform(Source[columns], each Text.From([id])),
ColumnNames = List.Transform(Source[columns], each [title]),
Table = Table.FromList(Source[rows], Splitter.SplitByNothing(), null, null, ExtraValues.Error),
Expanded = Table.ExpandRecordColumn(Table, "Column1", {"rowNumber", "cells"}, {"rowNumber", "cells"}),
Mapped = Table.TransformColumns(Expanded, {"cells",
each Record.Combine(List.Transform(_, each Record.AddField([], Text.From([columnId]), [value])))}),
Result = Table.ExpandRecordColumn(Mapped, "cells", ColumnIds, ColumnNames)
in
Result