【发布时间】:2012-06-06 16:56:30
【问题描述】:
我有几十个旧报表,其中许多都使用 Sql Server 存储过程作为数据源。我正在尝试在使用 VB.NET 2010 和 CR for Visual Studio 2010 版本 13.0.2 构建的应用程序中使用它们。
当我基于存储过程运行报告时,我收到一条错误消息,提示类似
找不到表“REPORT_SCHEDULEB”
报告中的表格定义如下:
LogOnInfo.ConnectionInfo for REPORT_SCHEDULEB:
Name: "REPORT_SCHEDULEB", Location: "Proc(REPORT_SCHEDULEB;1)"
AllowCustomConnection: False, DBName: myDb, IntegratedSecurity: False
ServerName: myComputer, User: myName, Password: myPassword, Attributes:
Database DLL: crdb_ado.dll
QE_DatabaseName: myDb
QE_DatabaseType: OLE DB (ADO)
Auto Translate: -1
Connect Timeout: 0
Data Source: myComputer
General Timeout: 0
Initial Catalog: myDb
Integrated Security: False
Locale Identifier: 1033
OLE DB Services: -5
Provider: SQLOLEDB
Tag with column collation when possible: 0
Use DSN Default Properties: False
Use Encryption for Data: 0
Owner: dbo
QE_ServerDescription: myComputer
QE_SQLDB: True
SSO Enabled: False
Owner: dbo
我猜 Location 字段的定义方式存在一些问题,但是
- 当我尝试更改 Overridden Qualified Table Name 报告编辑器不会接受更改,并且
- 我真的宁愿找到一个程序化的解决方案,而不是手动编辑几十个报告。
所以,我尝试在我的代码中设置 table.Location 值,但这会引发 COM 异常——我猜它在某种程度上是只读的。
我也想过设置某种 QualifiedName 属性的可能性,但还没有找到方法。
有什么想法吗?
TIA
【问题讨论】:
标签: vb.net sql-server-2008 stored-procedures crystal-reports-2010