在 PowerQuery 中捕获“我们无法使用提供的凭据进行身份验证。请重试”错误,以便在出现连接问题时写入默认值

问题描述 投票:0回答:1

我的 Excel 工作簿中有一个 PowerQuery,它尝试使用 ODBC 驱动程序连接到外部 DataBricks Photon 数据仓库解决方案。查询会删除工作表中已有的数据,然后尝试使用查询结果数据填充工作表。

但是,有时可能会出现由于 VPN 连接问题而无法访问数据仓库的情况。 PowerQuery 将失败并显示错误“

We couldn't authenticate with the credentials provided. Please try again
”。我希望能够以某种方式捕获此异常,以仍然确保工作表被清除,以确保我的最终用户没有使用任何过时的数据。

无论与数据仓库的连接是否成功,任何其他允许我清除给定工作表内容的解决方案也可以。

理想的解决方案是这样的:

let
    bar = Excel.CurrentWorkbook(){[Name="foo"]}[Content],
    rows_removed = Table.FirstN(bar,0),
    calculated_columns_removed = Table.RemoveColumns(rows_removed,{"FR", "SA", "SU", "MO", "TU", "WE", "TH"})
    query_result = Odbc.Query("dsn=Simba Spark", query_str),
    test_for_error = try query_result,
    recover = if test_for_error[HasError] then calculated_columns_removed else query_result

in
   recover

任何帮助将不胜感激!

我尝试了下面的代码块,以便在出现连接错误时为我提供一个空表,但无法捕获连接错误。

excel odbc powerquery m
1个回答
0
投票

我认为这会起作用

recover = try query_result otherwise calculated_columns_removed
in recover
© www.soinside.com 2019 - 2024. All rights reserved.