这个场景就是这样的。有一个SSRS服务器,它有一个报告,其中的数据源是XML类型的,并且它使用windows身份验证,除了它之外没有其他任何东西。在报表中有一个dataset,该数据集将该数据源用于查询"=Code.ReportUser.GetListOfItems()“。这将调用自定义程序集中的一个方法,该方法连接到数据库并返回字符串形式的数据,格式如下(尖括号更改为花括号以供读取
"<Query><XmlData><Items>" + xmlDocument.DocumentElement.InnerXml + "</Items></XmlData></Query>" 将sql datatable写入xmlDocument的位置。如果我通过IE转到报告服务器并运行报告,则一切工作正常。当将此链接添加到Zangle应用程序时出现问题,该应用程序将其作为"IEHOST.app 'report's url'“运行。我相信这是一个foxpro应用程序,它打开一个浏览器对象,并在使用我的xml数据源的数据集上报告失败。url或报告的正确性是毫无疑问的,因为它在不同的环境中运行。
这是我得到的服务器错误:
library!ReportServer_0-8!ca0!02/24/2012-10:18:45::
Call to GetPermissionsAction(path to my report).
library!ReportServer_0-8!e68!02/24/2012-10:18:45::
Call to GetSystemPropertiesAction().
library!ReportServer_0-8!e68!02/24/2012-10:18:45::
Call to GetPropertiesAction(path to my report, PathBased).
library!ReportServer_0-8!10bc!02/24/2012-10:18:45::
Call to GetSystemPermissionsAction().
library!ReportServer_0-8!e68!02/24/2012-10:18:45::
Call to GetSystemPropertiesAction().
processing!ReportServer_0-8!10bc!02/24/2012-10:18:45::
e ERROR: Throwing Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: ,
Microsoft.ReportingServices.ReportProcessing.ReportProcessingException:
Error during processing of the CommandText expression of dataset ‘Items’.;
processing!ReportServer_0-8!10bc!02/24/2012-10:18:45::
e ERROR: Throwing Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: ,
Microsoft.ReportingServices.ReportProcessing.ReportProcessingException:
Cannot set the command text for dataset 'Items'. ---> Microsoft.ReportingServices.ReportProcessing.ReportProcessingException:
Error during processing of the CommandText expression of dataset ‘Items’.
at Microsoft.ReportingServices.OnDemandProcessing.RuntimeDataSet.RunEmbeddedQuery(Boolean& readerExtensionsSupported, Boolean& readerFieldProperties, List`1 queryParams, Object[] paramValues)
--- End of inner exception stack trace ---;我不确定这到底是什么意思。有什么想法吗?这看起来像是权限问题,但我不知道在哪里。我确实尝试将xml数据源身份验证从windows更改为none,然后将我的AD帐户添加为报告服务器上的执行用户。这并没有改变任何仍然在浏览器中工作的东西,但是从Zangle浏览器对象中。还有一件事,无论环境如何,服务器都需要身份验证和所有报告,提示登录并成功进行身份验证,因此我的凭据似乎传递给了服务器,只有我的xml数据源在使用Zangle启动时抛出错误。请分享你的想法。我是一名程序员,但我不太精通服务器方面的东西,而且我是SSRS的新手。谢谢。
发布于 2012-02-28 07:42:22
已解决。原来foxpro应用程序将所有内容都小写,并且传递给程序集的sql服务器的名称与程序集中存储的名称不匹配。因此,从现在开始,我们将对所有内容进行小写比较。
https://stackoverflow.com/questions/9437125
复制相似问题