点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) 我正在使用Visual S...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) 我正在使用Visual S...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
尝试了多种方法后,问题仍然相同-整个项目都在我的机器上运行,但是在应该运行该机器的另一台机器上,所有页面都显示了记录,但是在尝试显示打印预览时 使用水晶报表,它显示错误-" 无法加载数据库信息"。
该项目的工作逻辑是-当我们要打印有关特定记录的信息时,将捕获选定的索引号并将其转移到另一种形式(.vb)中,从SQL中获取数据。 服务器数据库并存储在项目内单独的新数据集中的空表中。 水晶报表然后将那些记录存储在数据集中的表中并显示记录。
我已经从"数据库专家"中检查了数据源位置,并且该位置与所需位置相同。
我在表单中的代码如下-
导入CrystalDecisions.CrystalReports.Engine
公共类ChemLabGradePrint
公共子类New(ByVal GradeIndex1为整数)
InitializeComponent()
Dim ff作为新的PourChemistryDataset.PourChemistryDataTable
将结果作为PourChemistrReportList
Dim RMin作为字符串
Dim RMax作为字符串
Dim c作为整数结果= New PourChemistrReportList(ReaderF(GetPourChemistryReport(GradeIndex1)))
对于c = 0要得出结果.ElementName.Count-1
如果IsNumeric(result.SpecMin(c))AndCDbl(result.SpecMin(c))<> 0然后
SMin = result.SpecMin(c)
Else
SMin =""
End If
If IsNumeric(result .RestrMin(c))And CDbl(result.RestrMin(c))<> 0然后
RMin =结果.RestrMin(c)
其他
RMin =""
结束如果
如果IsNumeric(result.RestrMax(c))AndCDbl(result.RestrMax(c))<> 0然后
RMax = result.RestrMax(c)
否则
RMax =""
结束如果
'//将记录存储在PourChemistryDataTable表中的空表(手动构建)中
ff.Rows.Add(result.ElementName(c),
SMin,result.SpecMax(c),RMin,RMax,result.Pref(c),
result.Bckp(c),result.Comments(c)) p>
下一步
'-------报告
将RDoc视作新的ReportDocument
RDoc.Load(CrystalReportViewer1.ReportSource)< /p>
RDoc.SetDataSource(DirectCast(ff,DataTable))
RDoc.SetParameterValue(" METGrade",result.MetCode(0))
'//" METGrade"是水晶report.rpt文件中的"参数字段"
RDoc.SetParameterValue(" GradeName",result.GradeName(0))
CrystalReportViewer1.ReportSource = RDoc
结束子
结束类
然后,将" Crystal Report"设置为数据源位置(即PourChemistryDataTable表),并在报告中显示数据。
所有这些过程都可以在我的系统上正常运行,但不能在其他系统上运行。 将安装相同的运行时版本,并且还授予读取访问权限以访问SQL Server的.mdf文件。 项目的sql源设置为自动以获取sqlserver和数据库信息。
Designer.vb中的CrystalReportViewer1.ReportSource是=>
Me.CrystalReportViewer1.ReportSource =" P:\ ASW-Core-Shop_New \ ASW-Core-1.1 \ Reports \ ChemLabGradeReport.rpt"
手动设置是因为它给出了"无法将report.reportSource转换为String"的错误。 因此将其手动设置为文件位置。 工厂中的任何计算机都可以访问存储项目的文件位置,因为每个人都可以访问该驱动器。 因此,每个人的系统都可以访问reportSource的文件位置。
尝试运行ProcessMonitor,看看有什么不同。
如果连接信息出现任何故障,将无法正常工作。
尝试在登录之前设置参数值。
CRLOGGER可能还会为您提供更多信息,搜索有关如何使用KBA的信息。
一周热门 更多>