【发布时间】:2018-02-15 12:17:56
【问题描述】:
我通过 resources.azure.com 上的 API 连接到 Azure 资源,从那里获取 Microsoft.Compute 的 API,并通过 JSON 将所有 VM 详细信息导入 Power BI。
导入工作正常,但是在某些数据情况下存在大小写差异。例如,在使用标签值时,有些人输入了相同的单词但大小写不同,例如;
"tags": {
"Project": "DT",
"SLStandard": "Yes"
相比
"tags": {
"project": "DT",
"SlStandard": "Yes"
在 Power BI 中展开列时,它会将上面列出的项目视为两个不同的值。
理想情况下,我希望导入 JSON 并忽略“大小写”,或者将所有传入的内容标记为大写或小写。
我已阅读下面的两个链接,但我是 Power BI 的新手,我不确定如何实现它,或者即使它是我需要的。
Case sensitivity in Power BI 和 Power BI changing text case automatically 和 http://www.thebiccountant.com/2016/10/27/tame-case-sensitivity-power-query-powerbi/
这是我的高级编辑器代码:
let
iterations = 10,
url =
"https://management.azure.com/subscriptions/< subscription id >/providers/Microsoft.Compute/virtualMachines?api-version=2017-12-01",
FnGetOnePage =
(url) as record =>
let
Source = Json.Document(Web.Contents(url)),
data = try Source[value] otherwise null,
next = try Source[nextLink] otherwise null,
res = [Data=data, Next=next]
in
res,
GeneratedList =
List.Generate(
()=>[i=0, res = FnGetOnePage(url)],
each [i]<iterations and [res][Data]<>null,
each [i=[i]+1, res = FnGetOnePage([res][Next])],
each [res][Data]),
#"Converted to Table" = Table.FromList(GeneratedList, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Expanded Column1" = Table.ExpandListColumn(#"Converted to Table", "Column1"),
#"Expanded Column2" = Table.ExpandRecordColumn(#"Expanded Column1", "Column1", {"tags"}, {"Column1.tags"}),
#"Expanded Column1.tags" = Table.ExpandRecordColumn(#"Expanded Column2", "Column1.tags", {"Project", "project", "SLStandard", "sLStandard", "BIOffline", "bIStandard", "AutomationBI", "biStandard", "BIStandard", "asdf-U001", "TestVM"}, {"Column1.tags.Project.1", "Column1.tags.project", "Column1.tags.SLStandard.1", "Column1.tags.sLStandard", "Column1.tags.BIOffline", "Column1.tags.bIStandard.1", "Column1.tags.AutomationBI", "Column1.tags.biStandard.2", "Column1.tags.BIStandard", "Column1.tags.asdf-U001", "Column1.tags.TestVM"})
in
#"Expanded Column1.tags"
如果您想知道为什么我的查询要导入这么长,请在此处查看我之前的帖子:Power BI - Call Azure API with nextLink (next page)
任何帮助将不胜感激。
【问题讨论】: