问题
FERP50数据仓库升级之后,为进行权限管理,对外只提供存储过程访问方式,若通过Excel访问,菜单获取外部数据-自其他来源-来自SQL Server中只能使用表,而不能使用存储过程。

分析
直接查询AI可知,数据菜单下的两个工具,是两套不同引擎,新旧并存。
- "获取外部数据"(旧版,Excel 2013 及更早):是传统数据连接(ODBC/OLEDB),偏 "只读导入 + 定时刷新",功能老、转换弱,里面只能读数据表。
- "获取和转换数据"(新版,Power Query,Excel 2016/2019/365):是新的查询引擎,能连接、清洗、合并、参数化,再加载到表格 / 数据模型,里面可以写SQL,从而调用存储过程;
解决
在获取和转换数据中依次点击新建查询-从数据库-从SQL Server数据库,则会显示下面窗口,如果不填SQL语句则会要求选择数据表,如果填写SQL语句则直接进行查询。填入如下语句调用存储过程。注意,高级选项需要手动点开。
bash
EXEC P_BI_DataProvider_v1
@CorpId = 1001,
@Mobile = '1380013800',
@Password = '123456',
@DataId = 975,
@TopRows = 10
