so I tried looping through the subreports with:
foreach (string n in rcd.SubreportController.GetSubreportNames())
{
CrystalDecisions.ReportAppServer.Controllers.SubreportClientDocument scd = rcd.SubreportController.GetSubreport(n);
oldConnInfos = scd.DatabaseController.GetConnectionInfos(null);
for (int I = 0; I <= oldConnInfos.Count - 1; I++)
{
oldConnInfo = oldConnInfos[I];
string DatabaseDLL = oldConnInfo.Attributes.get_StringValue("Database DLL");
if (DatabaseDLL != null && DatabaseDLL.ToLower() == "crdb_fielddef.dll")
{
newConnInfo.Attributes = QE_Details;
newConnInfo.Kind = CrystalDecisions.ReportAppServer.DataDefModel.CrConnectionInfoKindEnum.crConnectionInfoKindCRQE;
scd.DatabaseController.ReplaceConnection(oldConnInfo, newConnInfo, null, CrystalDecisions.ReportAppServer.DataDefModel.CrDBOptionsEnum.crDBOptionDoNotVerifyDB);
}
}
}
unfortunately this also did not help the crystalReportViewer still freezes. Though the rpt file seems to be fine (with or without changing the subreports).







.jpg)

