将简单的XML导入Power BI

3
我将尝试将这个简单的XML数据导入Power BI(或Excel 2016):

https://resourcescrono.s3-eu-west-1.amazonaws.com/demo-biblio.xml

这是一个简单的XML文件,有一个三列表格(甚至附有XSD模式)。同样的XML可以轻松地导入以前的Excel版本(如Excel 2003等)。
然而,Power BI和Excel 2016在多个方面都失败了:
  • 它似乎忽略了模式数据
  • 它未能检测到不变的数字格式。
我该如何将这些数据导入我的Power BI仪表板或Excel 2016中?

Power BI screenshot

我的区域设置是西班牙语,但我不知道我的用户的区域设置(可能会有所不同)。 更新:微软已经将其视为错误。Excel应该尊重XSD模式:https://community.powerbi.com/t5/Issues/Bug-importing-simple-XML-file/idc-p/429822
2个回答

1
我尝试加载那个XML文件,但无法复制您所看到的内容。

这是我的操作步骤(使用Power BI):

  1. 在“新数据源”中选择“Web”,然后输入URL。

New Source > Web

  • 查询编辑器会自动将其解释为XML表并加载它。
  • XML Table

    1. 点击结果列中的“表”链接,查询编辑器将展开该表并自动更改列类型为datetimeInt64.Typenumber

    Loaded Table


    以下是这些步骤的完整查询代码:

    let
        Source = Xml.Tables(Web.Contents("https://resourcescrono.s3-eu-west-1.amazonaws.com/demo-biblio.xml")),
        Table = Source{0}[Table],
        #"Changed Type" = Table.TransformColumnTypes(Table,{{"Fecha", type datetime}, {"Unidades", Int64.Type}, {"Importe", type number}})
    in
        #"Changed Type"
    

    我忘了提到我的区域设置是西班牙语。但我认为这不应该有影响,因为XML是一种不变的格式:https://en.wikipedia.org/wiki/XML - Pau

    0
    数字转换问题来自于Table.TransformColumnTypes调用。Power Query将尝试使用工作簿/pbix的区域设置解析数字。因此,它会尝试使用西班牙语区域设置解析类似“83647.49”的数字,而由于(西班牙/国际)西班牙语使用逗号作为小数分隔符,该数字将被读取为“8364749”的奇怪格式表示。
    区域设置与工作簿/pbix一起传输,并且您可以在Excel的选项对话框中的当前工作簿|区域设置和PowerBI Desktop的当前文件|区域设置下进行设置。
    我不认为我们支持noNamepsaceSchemaLocation,但如果您想看到支持,请在Power BI Ideas网站上提出建议。

    我已经在pbix文件中更改了本地设置,但它仍然不能按预期工作:https://www.screencast.com/t/KzPq9hB6U5v - Pau
    我也在Excel中进行了检查。在预览数据表单中它不起作用,但在实际导入的数据中它是有效的。谢谢!这就足够了。https://www.screencast.com/t/dR6tyrsX - Pau
    在Power BI中也可以正常工作,但是预览数据没有被相应地解析... https://www.screencast.com/t/Aib7XVJBdxQ - Pau

    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接