0

这是我一步一步的问题:

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()

出现带有“确定”按钮的“登录失败”消息框,当单击“确定”按钮时,一切正常,报告加载数据正常,没有问题!

现在:如何跳过此错误消息,因为此软件将在客户端计算机上,并且此消息非常烦人,并且在客户端看来是错误。

非常感谢您,我正在等待您的解决方案。

4

2 回答 2

0

您应该尝试使用SetConnection包含useIntegratedSecurity参数的重载并将该参数设置为 true,而不是将空字符串作为用户名和密码传递。

于 2013-01-07T19:10:06.880 回答
0

经过大约一年的网络尝试和搜索,我找到了解决方案!但这太不可思议了,我应该在databaseName参数中给出数据库的完整路径!这是错误的:

mov.DataSourceConnections.Item(0).SetConnection(DataBasePath, "data.accdb", "", "")

这是对的 :

mov.DataSourceConnections.Item(0).SetConnection(DataBasePath, dataBasePath,"", "")

谢谢你。

于 2013-01-09T21:39:36.253 回答