Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如何在SharePoint的.net Web部件中显示SQL Server报表?_Sql Server_Sharepoint_Reporting Services_Web Parts - Fatal编程技术网

Sql server 如何在SharePoint的.net Web部件中显示SQL Server报表?

Sql server 如何在SharePoint的.net Web部件中显示SQL Server报表?,sql-server,sharepoint,reporting-services,web-parts,Sql Server,Sharepoint,Reporting Services,Web Parts,有人能向我描述一下在自定义Web部件中显示托管在报表服务器(远程模式)上的SQL Server报表的确切步骤吗?我意识到SSR附带了一个开箱即用的web部件,但我希望能够已经配置好显示特定报告的web部件,供用户在编辑站点模式中添加。基本上,目标是将“分配的小时数”等报告作为web部件本身,任何对显示分配的小时数感兴趣的人只需单击站点操作、编辑页面、添加web部件并选择分配的小时数web部件即可。无需配置报表服务器url或报表路径。此外,出于某些原因,我们希望继续以本机模式运行报表服务器,因此不

有人能向我描述一下在自定义Web部件中显示托管在报表服务器(远程模式)上的SQL Server报表的确切步骤吗?我意识到SSR附带了一个开箱即用的web部件,但我希望能够已经配置好显示特定报告的web部件,供用户在编辑站点模式中添加。基本上,目标是将“分配的小时数”等报告作为web部件本身,任何对显示分配的小时数感兴趣的人只需单击站点操作、编辑页面、添加web部件并选择分配的小时数web部件即可。无需配置报表服务器url或报表路径。此外,出于某些原因,我们希望继续以本机模式运行报表服务器,因此不能选择与SharePoint集成的模式

下面是我的情况和我已经尝试过的内容的总结:

  • 环境是WSS3.0、MicrosoftSQLServer2005
  • 我已经创建了一个.net Web部件,正在尝试将ReportViewer控件的实例添加到该Web部件。我已设置为在远程处理模式下运行,并扩展了抽象IReportServerCredentials类以处理身份验证
  • 我已确保程序集设置为AllowPartiallyTrustedCallers
  • 这个项目编制得很好。我将dll放置在Web部件的正确wss bin文件夹中
  • 当我尝试查看Web部件时,会收到站点错误消息“该程序集不允许部分受信任的调用方。”
  • 我读过一些关于向SQL Server注册程序集的内容,我尝试了使用创建程序集SQL语法,但是我收到一个SQL查询错误,表示已经存在对另一个程序集的引用,并且在同一位置找不到它


    老实说,我对SQL Server和reporting services的了解还不够,不知道我是否即将让它正常工作,或者我是否一开始就把一切都设置得完全错误。我以前做过自定义Web部件,并成功地将它们部署到该站点,因此我知道问题在于我对SSRS和SQL Server的无知。还有其他人完成了我之前描述的吗?提前谢谢

    我建议在web部件中使用ASP.NET ReportViewer控件。这些控件允许您自定义您提到的所有零件,并且非常易于使用和设置。不过,使用此控件需要注意的一件事是浏览器兼容性。开箱即用,它与Firefox或Chrome不太兼容。如果需要,您可以附加到Reporting Services服务,该服务将为您返回所需的数据,然后编写一个可模板的控件,该控件使用该结构输出数据。该选项要复杂得多,但允许由web部件而不是报表定义格式。

    我建议在web部件中使用ASP.NET ReportViewer控件。这些控件允许您自定义您提到的所有零件,并且非常易于使用和设置。不过,使用此控件需要注意的一件事是浏览器兼容性。开箱即用,它与Firefox或Chrome不太兼容。如果需要,您可以附加到Reporting Services服务,该服务将为您返回所需的数据,然后编写一个可模板的控件,该控件使用该结构输出数据。该选项要复杂得多,但允许由web部件而不是报表来定义格式。

    我实际上已经这样做了,但在连接报表服务器时遇到了问题。基本上,我可以很好地访问web url,但是当我在控件中设置reportserverurl时,在查看部件时会收到以下错误消息:“尝试连接到报表服务器失败。”。请检查您的连接信息,并确保报表服务器是兼容版本。“我已使用了几乎所有可以找到的解决方案来接收此错误(编辑reportserverconfig文件,确保报表管理器对用户具有适当的权限)…仍然无法使其工作?您是否能够自行导航到报表服务器?是的,我可以查看和(这只是文件夹视图)。当我在ReportViewer控件中指定reportserver url时,似乎没有连接我遇到了类似的问题-正在使用报表查看器控件所在应用程序的应用程序池用户尝试连接到报表服务器。您需要授予应用程序池浏览器用户对报告的访问权限。另一方面,如果您已通过使用IReportServerCredentials成功模拟用户,则请确保该对象实例指定的用户也具有足够的权限。简言之,这可能是一个权限问题(我最近也遇到了这个问题,但WSS没有参与进来,请注意)终于解决了!我认为主要的问题是我认为仅仅重建程序集就足够了,但似乎出于某种原因,我不得不从GAC卸载它并将其放回那里,以便任何真正的代码更改生效?不管是哪种方式,在这样做之后,它突然开始工作了!很确定问题在于像你说的那样设置正确的用户权限,Max。谢谢你的建议!实际上我已经这样做了,但是我在连接报表服务器时遇到了问题。基本上,我可以很好地访问web url,但是当我在控件中设置reportserverurl时,在查看部件时会收到以下错误消息:“尝试连接到报表服务器失败。”。请检查您的连接信息,并确保报表服务器是兼容版本。“我已使用了几乎所有可以找到的解决方案来接收此错误(编辑reportserverconfig文件,确保报表管理器对用户具有适当的权限)…仍然无法使其工作?您是否能够自行导航到报表服务器?是的,我可以竞争