现象
客户在使用某个账号登录系统,浏览电子表格时,报出如下错误:
这个问题如何解决呢?
解决步骤
1.首先,要掌握系统中哪里会出现“ExecSQL”,实际上这个是电子表格内置的函数“ExecSQL",用于在电子表格中执行指定的sql并返回数据。相关功能可参考:公式函数、资产负债表-ExecSQL。
2.错误信息中已经列明了是“对ExecSQL没有‘引用’权限”,所以肯定是用户缺少相关的资源权限。这个ExecSQL属于 【公共设置】-》【函数列表】-》【系统函数】-》【电子表格函数】这个资源节点。所以在用户的角色中将这个ExecSQL函数的引用权限勾上即可
同理,电子表格内置函数还有ExecNamedSQL、FilNamedSQLData、 和 FillSQLData 函数是需要进行相应的授权的。
3.除此之外,当使用了ExecNamedSQL和FillNamedSQLData 这两个函数时,需要同时将【资源定制】-》【system】下的【SQL映射表】的引用权限也赋予用户角色
关于ExecNamedSQL、FillNamedSQLData函数与 sql映射表的关系可参考:资产负债表-ExecNamedSQL