这是我一步一步的问题:
1-我在VS2010 IDE上创建了许多带有许多参数和公式字段的晶体报告2-我的水晶报表的连接是在设计时分配给他们的,SQL查询也是在设计时生成的(所以我不想在运行时创建新的数据集,并将水晶报表数据源设置为它)。3-当我试图在运行时通过以下代码显示水晶报告:
Dim mov As New moves2
'mov is my report
Dim rep As New rep
'rep is the crystal report form
mov.DataSourceConnections.Item(0).SetConnection(DataBasePath, "data.accdb", "", "")
mov.Refresh()
rep.CrystalReportViewer1.ReportSource = mov
rep.CrystalReportViewer1.RefreshReport()
rep.ShowDialog()
mov.Dispose()
rep.Dispose()
一个消息框"登录失败"与"确定"按钮出现,当点击"确定"按钮,一切工作正常,报告加载数据正常,没有问题!
现在:如何跳过这个错误信息,因为这个软件将在客户端机器上,这个消息非常烦人,它将被客户端视为错误。
非常感谢,等待您的解决方案。
您应该尝试使用包含useIntegratedSecurity
参数的SetConnection
过载,并将该参数设置为true,而不是传递空字符串作为用户名和密码
经过大约一年的尝试和搜索,我找到了解决方案!但这是难以置信的,我应该在databaseName参数中给出数据库的完整路径!这是错误的:
mov.DataSourceConnections.Item(0).SetConnection(DataBasePath, "data.accdb", "", "")
这是正确的:
mov.DataSourceConnections.Item(0).SetConnection(DataBasePath, dataBasePath,"", "")
谢谢。