Ich erstelle einen einfachen Bericht mit einem .NET-Objekt aus meinem Projekt als Datenquelle, mit SetDatasource()
Methode. Wenn ich den Bericht ausführe, erhalte ich jedoch den Fehler "Datenbankanmeldung fehlgeschlagen". Dieser Bericht verbindet sich überhaupt nicht mit einer Datenbank - habe ich hier etwas übersehen?Warum bekomme ich "Datenbankanmeldung fehlgeschlagen" in Crystal Reports, wenn .NET-Objekt als Datenquelle verwendet wird?
Vielen Dank, D.
ZUSÄTZLICH: Ich denke, es wird wahrscheinlich helfen, wenn ich die Controller-Aktion enthalten. Es ist ein schneller und schmutziger Test, nicht das, was die letzte Methode aussehen wird:
public ActionResult StewardSheets(int showId, int groupId)
{
ReportClass rptH = new ReportClass();
rptH.FileName = DataHelper.getReportFilePath("Test.rpt",this);
NZDSDataContext dataContext = new NZDSDataContext();
var showDetails = (from s in dataContext.Shows
where s.ID == showId
select new StewardSheetModel
{
EventDate = s.EventDate.ToLongDateString(),
Region = s.Region.Name,
ShowTitle = s.Name
}).FirstOrDefault();
List<StewardSheetModel> details = new List<StewardSheetModel>();
details.Add(showDetails);
rptH.SetDataSource(details);
rptH.Load();
Stream stream = rptH.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
return File(stream, "application/pdf");
}
FIXED: D'oh! Ich habe ReportClass anstelle von ReportDocument verwendet. Diese Zeile wurde geändert und auch Refresh() verwendet, da Load() keine gültige Methode ist. Jetzt funktioniert es gut!
Was sind die Einstellungen der Datenquelle? –
Hier ist ein Screenshot der Datenquelle - ich hoffe, dass Sie das fragen? http://img262.imageshack.us/img262/3615/crystalreport.png – codedog