2015-09-09 35 views
0

我正在使用本地主機中的水晶報表,它似乎工作正常,但是當我發佈網站時,它不會計算髮布水晶報表文件,當我複製它到我的項目的位置似乎沒有工作。我在谷歌上找不到與此相關的任何內容。水晶報告正在LocalHost上,但不是在IIS上

這是我使用

Function Print() 
      Dim rptH As ReportClass = New ReportClass 
      Dim dt As New DataTable 
      Dim ds As New DataSet 
      Dim da As New SqlClient.SqlDataAdapter 
      Dim cmd As SqlClient.SqlCommand 
      Dim conn As New SqlConnection(connectionString) 
      Dim sSql As String 
      sSql = "EXEC SP_MEDICINE_BILL 1,2014,1,104493,' ',' '" 
      cmd = New SqlClient.SqlCommand(sSql, conn) 
      da.SelectCommand = cmd 
      cmd.CommandTimeout = 300 
      da.Fill(ds, "SP_MEDICINE_BILL") 
      rptH.FileName = Server.MapPath("~/Reports/MedicineBillDoc.rpt") 
      rptH.Load() 
      rptH.SetDataSource(ds) 
      Dim stream As Stream = rptH.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat) 
      Return File(stream, "application/pdf") 
     End Function 
+0

我之前做過類似的事情,但我需要一個虛擬目錄來執行此操作。過程如何知道從哪裏選擇pdf文件?我不能在你的代碼中看到。 – aMazing

+0

我給出了名爲'〜/ Reports/MedicineBillDoc.rpt'的路徑,它將其導出到流然後流返回一個文件 – Kirtesh

回答

0

我得到了我想通了,問題的解決方案的代碼而不是服務器端或編程相關的問題。我需要將水晶報表的build action屬性設置爲內容,並且它開始工作正常