急!关于一个很简单的VS.net 2003 报表问题,各位大侠快来看看
我想导出生成pdf格式的文档,但出现以下异常:
异常详细信息: CrystalDecisions.CrystalReports.Engine.LogOnException: 登录失败。
源错误:
行 105:
行 106:
行 107: myReport.Export()
行 108:
行 109:
我的代码:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
If Page.IsPostBack = False Then
Dim ReportDoc As New ReportDocument
Dim path1, path2 As String
path1 = Server.MapPath( "CrystalReport1.rpt ")
ReportDoc.Load(path1)
Dim TabLogInfo As New TableLogOnInfo
Dim Aobject As Object
Dim Astring As String
Dim ConString As String
Dim SqlString As String
Dim ADBMS As String
Dim ADatabase As String
Dim AServer As String
Dim AUserID As String
Dim APassword As String
' '读取注册表的数据库信息
Dim Aregkey As Microsoft.Win32.RegistryKey = Microsoft.Win32.Registry.LocalMachine
Aregkey = Aregkey.OpenSubKey( "SOFTWARE\SununCenter ")
Aobject = Aregkey.GetValue( "DBMS Name ")
ADBMS = Trim(Aobject.ToString)
Aobject = Aregkey.GetValue( "Database ")
ADatabase = Trim(Aobject.ToString)
Aobject = Aregkey.GetValue( "Server ")
AServer = Trim(Aobject.ToString)
Aobject = Aregkey.GetValue( "UserID ")
AUserID = Trim(Aobject.ToString)
Aobject = Aregkey.GetValue( "Password ")
APassword = WorkDll.DataConn.GetDatabasepassword(Trim(Aobject.ToString))
TabLogInfo.ConnectionInfo.ServerName = AServer
TabLogInfo.ConnectionInfo.DatabaseName = ADatabase
TabLogInfo.ConnectionInfo.UserID = AUserID
TabLogInfo.ConnectionInfo.Password = APassword
ReportDoc.Database.Tables(0).ApplyLogOnInfo(TabLogInfo)
crpt.ReportSource = ReportDoc
End If
End Sub
Private Sub Btn_Out_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Out.Click
Dim myReport As CrystalReport2 = New CrystalReport2
Dim DiskOpts As CrystalDecisions.Shared.DiskFileDestinationOptions = New CrystalDecisions.Shared.DiskFileDestinationOptions
myReport.ExportOptions.ExportDestinationType = CrystalDecisions.[Shared].ExportDestinationType.DiskFile
myReport.ExportOptions.ExportFormatType = CrystalDecisions.Shared.ExportFormatType.Excel
'这里我们导出成为.pdf格式文件,你也能选择上面的其它类型文件
DiskOpts.DiskFileName = "D:\report\Output.pdf "
'如果你不指定确切的目录,那么文件就会保存到[Windows]\System32目录中去了
myReport.ExportOptions.DestinationOptions = DiskOpts
'水晶报表文件不包含直接的FileName属性,因此你不能直接指定保存的文件名
'所以你不得不使用DiskFileDestinationOptions对象,设置它的DiskFileName属性
'为你想要的路径,最后将水晶报表的DestinationsOptions属性指定为上面的DiskFileDestinationOption
myReport.Export()
End Sub
[解决办法]
CrystalReport2没指定logoninfo
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码)
最新版本:20070130
http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html