CrystalReports - MemoryExc bei PDF-Generierung

hallo liebe w-w-w-wissenden,

ich erstelle über crystal reports ein reportdocument (was sonst…). wenn ich dieses als pdf generieren will, dann bekomme ich eine system.outofmemory-exception.

hier der code-schnipsel (doc = ReportDocument) - ich hoffe der zugriff auf eigene methoden vermindert die lesbarkeit nicht zu sehr…:

if (doc != null)
{
doc.Close();
doc.Dispose();
}
doc = ReportSession.GetReportSession().GetReport((int))ReportSession.GetReportSession().m_rSelectedReportIds[i]);
doc.SetDataSource(m_ds);

doc.Refresh();
diskOpts.DiskFileName = path + i.ToString() + „.pdf“;
doc.ExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat;
doc.ExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
doc.ExportOptions.DestinationOptions = diskOpts;

doc.Export();

…und in diesem doc.export entsteht dann die memory-exception.

kennt jemand dieses problem, oder hat sogar (!) ein lösung?
…oder was mache ich oder microsoft hier falsch?

vielen dank!

stefan

Hallo!

Obwohl ich auf Anhieb jetzt nix seh und mich ehrlich gesagt mit CR nicht besonders auskenne, wäre es doch interessant, ob
a) es immer diese Exception gibt oder nur manchmal (das Close() und Dispose() von doc scheint mit etwas merkwürdig)
b) sich etwas daran ändert, wenn Du kein PDF sondern ein anderes Format erzeugst

Martin

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

hallo martin,

velen dank für deine antwort…ich kenne cr auch nicht, habe gestern diesen code ‚geerbt‘ und wusste auch nur, dass das dispose komisch ist, sehr komisch, aber es wurde wohl wg. vorheriger probleme dort so eingefügt…

auch ohne close und dispose gibts diese exception; aber inzwischen weiss ich, es gibt sie nicht immer. wie sich die reports von denen unterscheiden, die die exception schmeissen weiss ich auch net, auf den ersten blick sehen die genauso ok aus, wie die anderen (ich guck mir die dinger die der code auf platte schreibt an, nicht (nur) meine entwürfe.

ja, und was soll ich sagen, beim ehrumspielen gestern habe ich auch genau das ausprobiert:

b) sich etwas daran ändert, wenn Du kein PDF sondern ein
anderes Format erzeugst

alles andere geht! excel, doc, rtf, cr, blabla…und es ist auch nicht der ausgabetyp, egal ob ich einen stream erzeuge, oder sonstwas, bei pdf knallts…

das allerseltsamste ist aber, dass ‚es‘ scheinbar dann geht, wenn ich die seiten, die vorher die exception geworfen haben dann ‚nur‘ ausdrucke…

danke für idee und gespräch - gerne wieder :wink: !

stefan