点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我已经使用SQL Express多年了,因此决定尝试使用LocalDB。 几分钟后,我安装了它并使用我的应用程序-直到尝试了Crystal Reports。 该报告非常庞大,包含约40个子报告。 有时我可以得到它来打印一个子报表,但是大约要花10分钟(在LocalDB之前使用SQL Express只需10秒)。 我怀疑这是一个连接字符串问题。
我正在使用VS 2017, VB.NET ,Crystal Reports 13sp25。有效的连接字符串 因为我的应用是
" Server =(localdb)\ MSSQLLocalDB; Integrated Security = true; AttachDbFileName = C:\ Program Files \ MyApp \ Data \ MyApp.mdf;"
这是我用于连接Crystal Reports数据库的代码。 它适用于SQL Express,但不适用于LocalDB。
使用crConnectionInfo
.ServerName = My.Application.GlobalAuditDB.PServerName
.DatabaseName = My.Application.GlobalAuditDB.PDatabaseName
.UserID = My.Application.GlobalAuditDB.PUserName
.Password = My.Application.GlobalAuditDB.PPassword
.IntegratedSecurity = False
结尾为
CrTables = Report.reportDocument.Database.Tables
'遍历报告中的每个表并应用LogonInfo
对于CrTable中的每个CrTable
crtableLogoninfo = CrTable.LogOnInfo
crtableLogoninfo.ConnectionInfo = crConnectionInfo
CrTable.ApplyLogOnInfo(crtableLogoninfo)
如果是CrTable.TestConnectivity(),则
如果(CrTable.Location.IndexOf("。")> 0)然后
CrTable.Location = CrTable.Location.Substring(CrTable.Location.LastIndexOf("。")+ 1)
其他
CrTable.Location = CrTable.Location
如果结束
如果结束
下一步
我试图像这样更改连接以模拟适用于该应用程序的连接字符串,但是它不适用于CR-没有错误,每个子报表仅花费10分钟而10秒:
使用crConnectionInfo
.ServerName = My.Application.GlobalAuditDB.PServerName
.DatabaseName =" MyDB"
.IntegratedSecurity = True
结尾为
感谢您的帮助/建议/示例。
嗨,泰德,
在这种情况下,是苹果和橘子比较了有效的方法和无效的方法。 CR需要特定的属性。
在这里可以获取VS .NET运行时的最新CR。
https: //wiki.scn.sap.com/wiki/display/BOBJ/Crystal+Reports%2C+Developer+for+Visual+Studio+Downloads
在该页面上是参数测试应用程序的链接,它具有登录属性和其中的ReplaceConnection()API。
阅读该页面的全部内容,您需要了解和使用许多升级信息。
Don
实际上,我的问题的答案非常简单。 我只需要将服务器指定为(localdb)\ MSSQLLocalDB并在连接上设置IntegratedSecurity = True。
一周热门 更多>