【问题标题】:M power query - rebuild this data combinationM 幂查询 - 重建此数据组合
【发布时间】:2018-08-13 13:15:56
【问题描述】:

在 M 中获取以下查询的错误消息,我尝试在合并步骤之前拆分为 2 个不同的查询,但仍然收到“这不直接访问数据源,请重建数据组合”错误

*let
    Source = #"Query List from SP",
    cols = if {"Type"} = "Indicator" then 4 else 5,
    DataLoad = (path) =>
    let
       Doc =
           Csv.Document(
               Web.Contents(
                    BaseUrl,
                    [Headers =[#"Content-type"="text/csv",
                               #"Authorization"="Basic " & Credential],
                     RelativePath=path
                    ]), [Delimiter=",", Columns=cols, Encoding=65001, QuoteStyle=QuoteStyle.None]),
                    #"Promoted Headers" = Table.PromoteHeaders(Doc, [PromoteAllScalars=true]),
                    #"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",{{"Data", type text}, {"Organisation unit", type text}, {"Period", type text}, {"Value", type number}}
)
      in
         #"Changed Type",
     out = Table.AddColumn(
           Source,
           "res",
           each DataLoad([Path])
           ),
     #"Removed Errors" = Table.RemoveRowsWithErrors(out, {"res"}),
    #"Expanded res" = Table.ExpandTableColumn(#"Removed Errors", "res", {"Data", "Category option combo", "Organisation unit", "Period", "Value"}, {"Data", "Category option combo", "Organisation unit", "Period.1", "Value"}),
    #"Removed Columns" = Table.RemoveColumns(#"Expanded res",{"GUIDs", "Period", "BaseUrl", "Credential", "Path"}),
    #"Changed Type" = Table.TransformColumnTypes(#"Removed Columns",{{"Value", Int64.Type}}),
    #"Renamed Columns" = Table.RenameColumns(#"Changed Type",{{"Period.1", "Period"}}),
    #"Replace Cat" = Table.RenameColumns(Table.RemoveColumns(Table.AddColumn(#"Renamed Columns", "colnew", each if [Data] = "VbgQkVibB4P" then "qCWoTDpiKeH" 
else if [Data] = "YfCLQ1zig8z" then "qCWoTDpiKeH" 
else if [Data] = "M6kVOHWcnK3" then "qCWoTDpiKeH" 
else if [Data] = "Wov7FpjPr4E" then "qCWoTDpiKeH" 
else if [Data] = "MTuFYrvAacn" then "qCWoTDpiKeH" 
else if [Data] = "uXuoTc5nxkd" then "qCWoTDpiKeH" 
else if [Data] = "DsLkV0VYy6q" then "qCWoTDpiKeH"
else [Category option combo]),{"Category option combo"}),{{"colnew", "Category option combo"}}),
    #"Inserted Merged Column" = Table.AddColumn(#"Replace Cat", "deco key", each Text.Combine({[Data], [Category option combo]}, "."), type text),
    #"Added Index" = Table.AddIndexColumn(#"Inserted Merged Column", "Index", 1, 1)
in
    #"Added Index"*

【问题讨论】:

标签: powerbi powerquery m


【解决方案1】:

您没有直接访问数据源,因为您链接到查询#"Query List from SP"

关于这个主题已经写了很多。 Chris Webb 有一个完整的blog series 与数据隐私设置相关,但摆脱这个问题的最简单方法是简单地忽略隐私级别。

进入文件菜单下的选项和设置:

在隐私部分选择忽略隐私级别:

显然,如果您正在构建需要仔细管理隐私级别的东西,那么这是错误的方法,您需要更加小心。但是当隐私级别不是问题时,这是一个简单方便的解决方法

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-24
    • 2016-01-12
    • 1970-01-01
    • 2019-06-04
    • 2019-05-16
    相关资源
    最近更新 更多