ASP控制Crystal Report的问题
ASP和Crystal Report的配合使用一直是没有问题的,但是在最后的用户测试时候发现一个问题:每次点"下一页",就会重新访问数据库(我们是用存储过程来生成报表),每次重新访问给了Server很大的压力,现在,需要解决这个问题:
1.如果能够让每次点"下一页"的时候不用重新访问数据库,那是最好的.(但是我觉得这个不太可能实现)
2.修改asp代码,在原来代码的最后,让CrystalReport导出当前报表为PDF格式的文件,然后,将这个文件返回给Client.我找到了一段.NET的代码,但是我需要把它改成asp代码:
Private Sub ExportToPDF(ByVal oRpt As ReportDocument)
Dim crExportOptions As ExportOptions
crExportOptions = oRpt.ExportOptions
With crExportOptions
.FormatOptions = New PdfRtfWordFormatOptions()
.ExportFormatType = ExportFormatType.PortableDocFormat
End With
Dim req As ExportRequestContext = New ExportRequestContext()
req.ExportInfo = crExportOptions
Dim st As System.IO.Stream
st = oRpt.FormatEngine.ExportToStream(req)
Response.ClearContent()
Response.ClearHeaders()
Response.ContentType = "application/pdf"
Dim b(st.Length) As Byte
st.Read(b, 0, st.Length)
Response.BinaryWrite(b)
Response.End()
End Sub
中间遇到了问题,
Dim req As ExportRequestContext = New ExportRequestContext()
Dim st As System.IO.Stream
st = oRpt.FormatEngine.ExportToStream(req)
Dim b(st.Length) As Byte
st.Read(b, 0, st.Length)
Response.BinaryWrite(b)
这些都不知道该怎么改.
请高手来帮帮忙!谢谢了!