Crystal Reports Runtime auf 64-Bit-Systemen
Crystal Reports ist ein leistungsfähiges Berichtserstellungstool (mittlerweile) aus dem Hause SAP, vorher von Business Objects, noch davor von Crystal Decisions (nein, Seagate Software erwähne ich jetzt nicht auch noch…) am Markt angeboten. Die Crystal Reports Runtime ist für Microsoft-Entwickler (bzw. deren Anwendungen) kostenlos nutzbar, solange ich mich zurückerinnern kann (und das geht immerhin abwärts bis Visual Basic 5.0 - in was für Sprachen man so alles mal programmiert hat…).
Jedenfalls gilt dies auch im Zeitalter von .Net und C# und es ist gängige Praxis, als Firma einige wenige Crystal Reports Vollversionen zu erwerben, die für die reine Berichtserstellung genutzt werden (in der Regel nicht von Programmierern) und dazu eine Anwendung (vorzugsweise eine Webanwendung) zu erstellen, die den kostenlosen Crystal Reports Viewer mit all seinen Features (Parameterübergabe, Filtern, Export in verschiedene Formate etc.) integriert. Dabei kann man je nach Anforderungen die diversen Funktionalitäten des Viewers entweder out-of-the-box über dessen Toolbar nutzen oder selbst recht komfortabel über die Runtime-API programmieren. Das funktioniert sogar in SharePoint, indem man den Viewer in einen Webpart einbindet. Eigentlich eine feine Sache.
Um die Crystal Reports Runtime in ein eigenes Setup einzubinden, werden von SAP sogenannte Merge Module zum Download bereitgestellt. Diese muss man nur in Visual Studio.Net einem Setup-Projekt hinzufügen - und die Welt ist schön.
Mit Visual Studio.Net ist außerdem eine Art Spar-Edition von Crystal Reports gebundelt. Wer will, kann also auch hier Berichte erstellen, allerdings ist die Oberfläche etwas gewöhnungsbedürftig, wenn man die Vollversion kennt. Außerdem sind die gebundelten Versionen nicht gerade die aktuellsten: Die zur Zeit aktuelle Version ist Crystal Reports 2008 (entspricht Version 12), mit Visual Studio.Net werden folgende Versionen ausgeliefert:
- VS.Net 2008: Crystal Reports 10.5
- VS.Net 2005: Crystal Reports 10.2
- VS.Net 2003: Crystal Reports 9
Das sehr verbreitete Crystal Reports XI kann nur mit einer Vollversion zur Berichtserstellung genutzt werden, es gibt aber verschiedene Runtime-Versionen für alle .Net Framework-Versionen von 1.1 bis 3.5. Bis hierher also alles im grünen Bereich.
Etwas befremdlich wird es allerdings, wenn man darüber nachdenkt, den Webserver/SharePoint auf einem 64-Bit-System zu installieren (was ja im Jahre 2009 keine sehr vermessene Idee scheint und z.B. von Microsoft für den SharePoint Server empfohlen wird):
- Erste Erkenntnis: Die bisher für 32bit verwendete Runtime läuft unter 64bit nicht.
- Zweite Erkenntnis: Nachdem man erstmal eine ganze Weile verzweifelt danach gegoogelt hat, irgendwo eine unter 64bit lauffähige Runtime für Crystal Reports XI zum Download zu finden, wird mit diesem Artikel vom SAP Support die Vermutung, dass Crystal Reports XI keine 64-Bit-Systeme unterstützt, zur traurigen Gewissheit. Crystal Reports 10 ist die "letzte" Crystal Reports Version, für die eine auf 64-Bit-Systemen lauffähige Runtime verfügbar ist. Etwaige weitere Schlüsse zu ziehen, wird dem geneigten Leser selbst überlassen…
- Dritte ("Trostpflaster"-) Erkenntnis: Immerhin ist es möglich, mit Crystal Reports XI erstellte Reports unter der Runtime von Crystal Reports 10 und damit auch auf einem 64-Bit-System zum Laufen zu bringen. Dieser MSDN-Artikel beschreibt, wo die erforderlichen Redistributables zu finden sind, im VS-Projekt müssen noch die Referenzen auf die DLLs von Crystal Reports XI gegen die 10er DLLs ausgetauscht werden und wenn dann das Ganze noch kompiliert, hat man schon fast gewonnen
Hat man allerdings in der bisherigen Anwendung ein Feature genutzt, das es in Crystal Reports 10 noch nicht gab, dann wird man wohl als 2. Sieger aus dem Rennen gehen…