我使用vb.net在visual studio 2008中使用报表文档对象模型创建了一个报表。但是我发现了一个错误。当用户单击客户端中的导出按钮时,将显示以下错误。但是,在用户单击导出按钮之前,第一次就可以了。
Logon failed. Details: ADO Error Code: 0x Source: Microsoft OLE DB Provider for SQL Server Description: Login failed for user 'zanhtet'. SQL State: 42000 Native Error:
这是调用报告代码。
Dim ReportDocument As New ReportDocument()
Dim ReportPath As String = Server.MapPath("~/ReportDocumentOM/DBlogInRDOM.rpt")
ReportDocument.Load(ReportPath)
ReportViewer.ReportSource = ReportDocument
Dim ConnectionInfo As New ConnectionInfo
ConnectionInfo.ServerName = "ZANHTET\SQLEXPRESS"
ConnectionInfo.DatabaseName = "EAS_DevTrack4UDev"
ConnectionInfo.UserID = "zanhtet"
ConnectionInfo.Password = "123456"
For Each Table As Table In ReportDocument.Database.Tables
Dim TableLogOn As TableLogOnInfo = Table.LogOnInfo
TableLogOn.ConnectionInfo = ConnectionInfo
Table.ApplyLogOnInfo(TableLogOn)
Next
我该如何解决这个问题。求你帮帮我。
答案 0 :(得分:2)
我不确定您的代码是在什么地方调用的。但是,如果您还没有这样做,那么请从reportviewer处理重要事件。在这些事件处理方法中,请确保再次调用此身份验证代码。
出口相关活动应该给你带来好运,但你也可能需要处理其他几个(比如分页也有类似的问题)。
请参阅此处查看报告查看器事件
http://msdn.microsoft.com/en-us/library/microsoft.reporting.winforms.reportviewer.reportexport.aspx