无法在VS2013中预览SSRS报告?

时间:2014-07-24 12:56:15

标签: reporting-services

我创建了一个新的"报表服务器项目"在VS2013 .Net 4.5中。我添加了一个数据源,测试连接成功。我使用"使用我的报告中嵌入的数据集"添加了一个DataSet。选项选择先前创建的数据源。查询类型是带有单个文本参数的存储过程。在报告数据框中,我可以右键单击我的DataSet,选择Query,然后执行sproc。我看到网格正确填充了我的数据。

然而,当我尝试创建和预览报告时,它失败了。我做了以下事情:

  1. 添加新报告。
  2. 从工具箱中删除表格。
  3. 开始将我的DataSet中的字段拖到表格上。
  4. 当我点击预览时,我看到以下内容 enter image description here
  5. 这是在输出窗口中吐出的文本:

      

    System.ServiceModel.CommunicationObjectFaultedException:The   沟通对象,   System.ServiceModel.Channels.ClientFramingDuplexSessionChannel,不能   用于通信,因为它处于Faulted状态。

         

    服务器堆栈跟踪:at   System.ServiceModel.Channels.CommunicationObject.ThrowIfDisposedOrNotOpen()   在System.ServiceModel.Channels.OutputChannel.BeginSend(消息   消息,TimeSpan超时,AsyncCallback回调,对象状态)at   System.ServiceModel.Dispatcher.DuplexChannelBinder.BeginRequest(消息   消息,TimeSpan超时,AsyncCallback回调,对象状态)at   System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.StartSend(布尔   完成同步)   System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.FinishEnsureOpen(IAsyncResult的   结果,布尔完成(异步)at   System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.StartEnsureOpen(布尔   完成同步)   System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.FinishEnsureInteractiveInit(IAsyncResult的   结果,布尔完成(异步)at   System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.StartEnsureInteractiveInit()   在System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.Begin()   在System.ServiceModel.Channels.ServiceChannel.BeginCall(String   action,Boolean oneway,ProxyOperationRuntime操作,Object [] ins,   TimeSpan超时,AsyncCallback回调,Object asyncState)at   System.ServiceModel.Channels.ServiceChannelProxy.InvokeBeginService(IMethodCallMessage   methodCall,ProxyOperationRuntime operation)at   System.ServiceModel.Channels.ServiceChannelProxy.Invoke(即时聊天   消息)

         

    在[0]处重新抛出异常:at   System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(即时聊天   reqMsg,IMessage retMsg)at   System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&安培;   msgData,Int32类型)at   Microsoft.ReportDesigner.Design.IPreviewProcessing.BeginSetItemPath(字符串   itemPath,AsyncCallback回调,Object asyncState)at   Microsoft.ReportDesigner.Design.PreviewProcessingClient.BeginSetItemPath(字符串   itemPath,AsyncCallback回调,Object asyncState)at   Microsoft.ReportDesigner.Design.WCFProcessingHost<> c__DisplayClass1.b__0(的AsyncCallback   ac,Object s)at   Microsoft.ReportDesigner.Design.WCFProcessingHost<> c__DisplayClass3b.b__39()   在   Microsoft.ReportDesigner.Design.WCFProcessingHost.ExecuteWcfCall(动作   wcfCall)at   Microsoft.ReportDesigner.Design.WCFProcessingHost.ExecuteAsyncCall(Func`3   beginAction,AsyncCallback endAction)at   Microsoft.ReportDesigner.Design.WCFProcessingHost.set_ItemContext(PreviewItemContext   价值)   Microsoft.Reporting.WinForms.LocalReport.ChangeReportDefinition(DefinitionSource   updatesSourceType,Action changeAction)at   Microsoft.Reporting.WinForms.LocalReport.set_ReportPath(String value)   在Microsoft.ReportDesigner.Design.PreviewFrame.RefreshPreview()

    我用Google搜索了两天没有运气,我们非常感谢任何帮助。


    修改 事实证明,当您预览报告时,此控制台窗口将打开。我必须在第一次关闭它,然后预览失败。如果您打开控制台窗口,预览工作正常。这是一个截图,以便您可以看到我在谈论的内容。为了让预览工作,我只需重新启动visual studio,并确保在我点击预览时弹出窗口时不要关闭控制台窗口。

    enter image description here

2 个答案:

答案 0 :(得分:4)

这是SSDT-BI中报告的错误。与此同时,当前的解决方法是右键单击要在解决方案资源管理器中预览的报表,然后单击“运行”,除非您要保持该命令提示符窗口处于打开状态,否则它将起作用。

答案 1 :(得分:0)

以管理员身份运行Microsoft Visual Studio将解决此问题。