Crystal Reports für Rational Application Developer – Versionshinweise
1.0 Einschränkungen
2.0 Installation/Deinstallation
3.0 Plattformspezifische Probleme
4.0 Formatierung und Rendering
5.0 Relationale Datenbanken und SQL-Anweisungen
6.0 Diagrammerstellung
7.0 Berichtsfunktionalität
8.0 Viewer
9.0 IDE-Integration
10.0 Crystal Enterprise JSF-Komponenten
1.0 Einschränkungen
Die mit Crystal Reports für Rational Application Developer bereitgestellte Berichterstellungskomponente zur Verarbeitung von Berichten unterliegt einer Einschränkung durch Schlüsselcode. Auf diese Weise wird bei der Entwicklung und Installation sowie bei Testverfahren unter Verwendung der begrenzten Berichterstellungsfunktionen innerhalb von Anwendungen eine angemessene Leistung sichergestellt. Für diese Version von Crystal Reports für Rational Application Developer gelten die folgenden weiteren Einschränkungen:
-
Die Java-Berichterstellungskomponente verarbeitet ausschließlich mit Crystal Reports 9 oder höher erstellte Berichte. Berichte aus früheren Versionen von Crystal Reports sollten mit Hilfe des Berichtkonvertierungstools konvertiert werden, die auf der Website von Business Objects als Download zur Verfügung gestellt werden.
-
Diese Freigabe bietet für die Java-Berichterstellungskomponente keine API für die Berichterstellung und -änderung.
-
Mit der Berichtvorlage gespeicherte Berichtdaten können zwar zur Laufzeit aktualisiert, jedoch nicht mit der Berichtvorlage gespeichert werden. Daten können unter Verwendung des Desktop-Berichtdesigners nur zur Entwurfszeit aktualisiert und mit der Berichtvorlage gespeichert werden.
-
Berichte, die auf folgende Datenquelle zugreifen, können nicht verwendet werden:
-
Java Bean-Treiber
-
Mehrere Datenquellen
-
OLAP
-
Berichte können nur in PDF und RTF exportiert werden.
-
Das Speichern des clientseitigen Status wird nicht unterstützt.
- Folgende Funktionen werden in dieser Version nicht unterstützt:
-
RTF-Interpretation
-
Berichtsvorlagen
-
Geographische Karten
-
Gantt-, Gauge-, Trichterdiagramme sowie Diagramme mit numerischer Achse
-
Crystal Reports Repository
-
Berichtswarnungen
2.0 Installation/Deinstallation
-
Die gemeinsamen Dateien unter „C:\Programme\Gemeinsame Dateien\Crystal Decisions\2.5“ und „C:\Programme\Gemeinsame Dateien\Business Objects\3.0“ werden bei der Deinstallation nicht entfernt.
3.0 Plattformspezifische Probleme
-
Auf einer AIX-Plattform, auf der IBM JDK 1.3.1 oder 1.4 ausgeführt wird, kann ein Fehler im JDK zum Absturz von Berichten führen. Um dieses Problem zu umgehen, setzen Sie die JITC_COMPILEOPT-Umgebungsvariable auf „SKIP{com/crystaldecisions/reports/common/encryption/Processing}{processing}“.
-
Die BEA JRockit JVM verfügt über eine Option für parallele Aufräumaktionen, durch die bei der Verarbeitung zusammenhängender Speicherblöcke über 2 MB ein Speicherausnahmefehler verursacht wird. Um dieses Problem zu umgehen, erhöhen Sie die maximale Heapgröße oder verwenden den Garbage Collector mit Generational Copying-Algorithmus. Zum Festlegen der maximalen Heapgröße verwenden Sie die Option "-XmxNNNm" , wobei NNN der Größe des Heaps in MB entspricht. Zur Verwendung des Garbage Collectors mit Generational Copying-Algorithmus legen Sie die Option "-Xgc:gencopy" fest.
-
Das Exportieren eines Berichts in PDF (entweder programmgesteuert oder mit Hilfe der Viewer) wird unter WebSphere Studio 6 nicht unterstützt. Diese Einschränkung gilt nicht für andere Anwendungsserver. Wenn Ihre Webanwendung unter WebSphere Studio 6 bereitgestellt wird, wird die ActiveX-Druckausgabe empfohlen. Alternativ können Sie die JSF-Version des DHTML-Berichtsseitenviewers verwenden, die dieser Einschränkung nicht unterliegt.
4.0 Formatierung und Rendering
-
Wenn ein Berichtabschnitt oder -bereich unterdrückt wird, werden die Flags newPageBefore und newPageAfter für den jeweiligen Abschnitt bzw. Bereich nicht ausgewertet. Um dieses Problem zu umgehen, können Sie das Flag newPageBefore oder newPageAfter im nächsten sichtbaren Abschnitt festlegen; dies gilt auch für Abschnitte mit der Höhe 0.
-
Das Währungssymbol bleibt in Berichten auch dann verschiebbar, wenn die Option zur festen Positionierung ausgewählt wurde.
-
Das in Berichten angezeigte Datums- und Uhrzeitformat basiert ausschließlich auf den Gebietsschema-Standardeinstellungen des Servers.
-
Wenn ein Bericht Objekte enthält, die über die Seitenbegrenzung hinausgehen, und der Bericht angezeigt wird, wird die resultierende Seite auf zwei horizontalen Seiten dargestellt.
-
Bei der Berichtanzeige im Viewer werden Textobjekte ohne Leerzeichen bei unzureichender Objektbreite nicht angezeigt. Der Bericht wird korrekt angezeigt, sobald die Breite des Textobjekts vergrößert wird.
-
Die Funktion für den Zeichenabstand wird in dieser Freigabe nicht unterstützt. Auf ein Textobjekt angewendete Zeichenabstände werden ignoriert.
-
Aufgrund von Einschränkungen in HTML 4.0 wird das Rahmenformat „Abgerundet“ für ein Rechteckobjekt trotzdem rechteckig dargestellt.
-
Bei der Anzeige eines Berichts im Viewer können Spaltenüberschriften in einer Kreuztabelle überlappen oder gekürzt werden.
-
Bei der Anzeige eines Berichts mit einer Kreuztabelle im Viewer gilt Folgendes: Wenn die Kreuztabelle im oberen Bereich über eine Summenzeile verfügt, werden die Felder innerhalb der Zellen teilweise abgeschnitten. Befindet sich die Summenzeile unten in der Kreuztabelle, werden die Zellen nicht abgeschnitten (erwartetes Verhalten).
-
Bei der Anzeige eines Berichts im Viewer können in einem Textfeld zusätzliche Zeilen angezeigt werden. Dies ist auf das Rundungsverhalten bei der Umwandlung von Twips in Pixel zurückzuführen. Um dieses Problem zu umgehen, ist nur eine geringe Größenänderung des Abschnitts erforderlich.
-
Beim Exportieren eines Berichts in PDF wird möglicherweise die Fehlermeldung „In der Schrift x ist der Wert für \BBox fehlerhaft“ angezeigt, wenn Sie die PDF öffnen. Diese Fehlermeldung kann ignoriert werden, da die Anzeige der PDF-Datei nicht beeinträchtigt ist.
-
Wenn Sie einen Bericht mit Hilfe der Java-Berichterstellungskomponente in RTF exportieren und der Bericht ein Objekt enthält, für das „In den Vordergrund“ eingestellt wurde, wird das Objekt nicht in den Vordergrund der resultierenden RTF-Datei verschoben. Die Verwendung der Option „Auf unterste Ebene setzen“ funktioniert jedoch erwartungsgemäß.
-
Berichte, die Oberflächendiagramme mit null Daten enthalten, werden nicht ordnungsgemäß gerendert, wenn sie von der Java-Berichterstellungskomponente verarbeitet werden.
-
Wenn für Elemente benutzerdefinierte Positionen in Diagrammen festgelegt wurden, werden diese von der Java-Berichterstellungskomponente beim Rendern des Berichts nicht berücksichtigt. Stattdessen werden die Standardpositionen verwendet.
5.0 Relationale Datenbanken und SQL-Anweisungen
-
Beim Aktualisieren eines BIT-Berichts mit gespeicherten Prozeduren aus einer SQL Server- oder Sybase-Datenbank werden Parameterfelder zu Pulldownmenüs ohne Standardwerte. Falls der Bericht auf Parameterwerten basiert, kann er nicht angezeigt werden.
-
Berichte mit BFILE-Daten werden vom Oracle JDBC-Treiber nicht unterstützt.
-
Intervalldatentypen werden vom Oracle JDBC-Treiber nicht unterstützt.
-
Berichte mit UROWID-Daten werden vom Oracle JDBC-Treiber nicht unterstützt.
-
Der Sybase JDBC-Treiber unterstützt bei Feldern mit dem Typ „char“, „varchar“ und „nvarchar“ nur die Eingabe von maximal 255 Zeichen. Falls Sie mehr als 255 Zeichen in ein Feld eingeben müssen, verwenden Sie stattdessen den Typ „text“.
-
Frühere Versionen des Sybase JDBC-Treibers unterstützen keine Berichte mit UNICHAR- oder UNIVARCHAR-Daten. Verwenden Sie für JDBC Version 5.5 ESD 9 oder höher jConnect.
-
Der Informix ODBC-Treiber gibt das CLOB-Feld als Objekt und nicht als CLOB zurück.
-
Berichte mit zyklischen Verknüpfungen werden in dieser Freigabe nicht unterstützt. Darüber hinaus werden Verknüpfungen, für die unabhängige Abfragen ausgeführt werden müssen, die später durch eine andere Tabellengruppe verknüpft werden, in dieser Freigabe nicht unterstützt.
-
BLOB-Felder, für die die Option „Kann größer werden“ aktiviert ist, werden nicht vergrößert. So werden Bilder unterschiedlicher Größe, die in BLOB-Felder eingefügt werden und über die Eigenschaft „Kann größer werden“ verfügen, mit derselben Größe dargestellt.
-
Beim Aktualisieren eines auf gespeicherten Prozeduren basierenden Berichts aus einer SQL Server-Datenbank sollten Timestamp-Parameter Hexadezimalformat aufweisen.
-
Erzwungene Tabellenverknüpfungen werden von der Java-Berichterstellungskomponente nicht unterstützt.
6.0 Diagrammerstellung
-
Die Diagrammlegende kann im Crystal Reports Designer und im Viewer unterschiedlich dargestellt werden.
-
Bei der Anzeige eines Berichts mit einer Kreuztabelle und einem Diagramm wird das Diagramm immer von der Kreuztabelle überlagert, und zwar unabhängig davon, welcher Wert für die MoveToFront-Eigenschaft der Kreuztabelle festgelegt wurde.
-
Im Viewer werden keine Strukturen oder Bilder angezeigt, die als Hintergrund für Diagramme verwendet werden.
-
Bei der Anzeige eines Diagramms, das über ein über mehrere Seiten verteiltes Bild verfügt, wird das Bild u. U. nicht einwandfrei dargestellt. Um dieses Problem zu umgehen, verwenden Sie für das Bildobjekt das Flag „Zusammenhalten“. Auf diese Weise wird das Bild nicht über mehrere Seiten verteilt.
7.0 Berichtsfunktionalität
-
Die Java-Berichterstellungskomponente verwendet ein hoch differenziertes Datums- und Uhrzeitformat. Daher können Datums- und Uhrzeitfunktionen eine Sekundenanzahl zurückgeben, die keiner ganzen Zahl entspricht.
-
Bei Verwendung der ASC- und CHR-Funktionen kann ein Laufzeitfehler auftreten, wenn Zeichen mit einem Wert außerhalb des Bereichs 0 – 127 verwendet werden. Die ASC- und CHR-Funktionen sind veraltet und sollten durch die ASCW- und CHRW-Funktionen ersetzt werden, um Laufzeitfehler bei Werten außerhalb des Bereichs 0 – 127 zu vermeiden. In zukünftigen Versionen werden die ASC- und CHR-Funktionen nicht mehr unterstützt.
-
Diese Freigabe unterstützt lediglich DatumZeit-Zeichenfolgen des englischen Gebietsschemas in der Formelsprache.
8.0 Viewer
-
Die Schaltflächen „Exportieren“ und „Drucken“ werden bei der Berichtanzeige standardmäßig nicht angezeigt. Setzen Sie die isOwnPage-Eigenschaft (oder die setOwnPage-Methode) auf „true“, um die Schaltflächen zu aktivieren. (Hinweis: Die JSF-Version des DHTML-Berichtsseitenviewers enthält keine isOwnPage-Eigenschaft.)
-
Wenn der Benutzer beim Exportieren eines Berichts nach Ende des Vorgangs im Browser auf die Schaltfläche „Aktualisieren“ klickt, wird er aufgefordert, den Bericht erneut zu exportieren.
-
Die Textsuche beginnt immer auf der zweiten Seite. Darüber hinaus wird durch die Suchfunktion auf jeder Seite lediglich das erste Vorkommen der Suchzeichenfolge hervorgehoben. Wenn die gesuchte Zeichenfolge auf der aktuellen Seite beispielsweise zweimal enthalten ist, wird nur das erste Vorkommen hervorgehoben und die Suche wiederum auf der nächsten Seite fortgesetzt.
-
Wenn Sie zwei Viewer auf derselben Seite platzieren, kann dies ein unerwünschtes Verhalten auslösen. Wenn Sie beispielsweise eine Aktion für den einen Viewer ausführen, könnte sich diese auch auf den anderen Viewer auswirken. Um dieses Verhalten zu vermeiden, sollten zwei Viewer nicht auf derselben Seite platziert werden.
-
Wenn Sie durch einen Bericht navigieren, der Aufforderungen zur Parametereingabe enthält, wird das Navigationsziel nicht hervorgehoben. Wenn Sie beispielsweise auf eine Verknüpfung klicken, wird das Ziel der Verknüpfung in der resultierenden Seitenansicht nicht hervorgehoben. Falls der Bericht keine Aufforderungen zur Parametereingabe enthält, wird das Navigationsziel hervorgehoben.
-
Wenn die IsIgnoreViewStateOnLoad-Eigenschaft der Java-Viewer auf „true“ gesetzt ist, wird die ViewState-Eigenschaft nicht ignoriert. Die ViewState-Eigenschaft sollte erwartungsgemäß ignoriert werden, wenn IsIgnoreViewStateOnLoad auf „true“ gesetzt ist.
-
Der Status der Elemente der Viewer-Symbolleiste wird in nachfolgenden Browsersitzungen beibehalten. Wenn Sie beispielsweise einen JSP-Prozess ausgeführt haben, für den einige Symbolleistenelemente aktiviert waren, und diese Symbolleistenelemente dann deaktivieren, werden diese Elemente beim nächsten Ausführen von JSP weiterhin angezeigt. Um dieses Problem zu umgehen, können Sie den Webanwendungsserver neu starten, nachdem Sie die Einstellungen für Symbolleistenelemente geändert haben.
-
Der folgende Fehler wird zurückgegeben, wenn das reportSource-Attribut der JSF-Version des DHTML-Berichtsseitenviewers mit Hilfe eines Scriptlet-Wertes festgelegt wird: „org.apache.jasper.JasperException: Only report source objects are accepted" (in Englisch). Verwenden Sie als Umgehungslösung einen Bean-Eigenschaftswert, wenn Sie das reportSource-Attribut der JSF-Version des DHTML-Berichtsseitenviewers festlegen.
-
Wenn Sie die JSF-Version des DHTML-Viewers einsetzen und der Server zum Speichern des JSF-Status verwendet wird, wird die Hervorhebung eines Elements im Viewer beibehalten, auch wenn Sie die Seite, in der das Element ursprünglich hervorgehoben wurde, anschließend verlassen.
-
Der Wert des Feldes „Druckzeit“ wird nicht aktualisiert, wenn ein Bericht mit Hilfe der Viewer aktualisiert wird. Stattdessen wird im Feld „Druckzeit“ die Uhrzeit angegeben, zu der der Bericht in der aktuellen Sitzung erstmalig angezeigt wurde.
-
Die JSF-Version des DHTML-Berichtsseitenviewers verwendet beim Anzeigen eines Berichts standardmäßig die Gebietsschemaeinstellung des Anwendungsservers. Um die Gebietsschemaeinstellung des auf dem Clientcomputer befindlichen Browsers zu verwenden, müssen Sie das productLocale-Attribut manuell festlegen (Beispiel: productLocale=#{facesContext.externalContext.requestLocale}).
9.0 IDE- Integration
-
In der Datei für Protokolleigenschaften wird auf „$HOME/Crystal“ als Speicherort für Protokolldateien verwiesen. Da dieses Verzeichnis nicht vorhanden ist, wird eine Fehlermeldung ausgegeben. Sie sollten dieses Verzeichnis entweder erstellen oder die Datei bearbeiten, damit auf ein vorhandenes Verzeichnis verwiesen wird.
-
Wenn Sie „CrConfig.xml“ manuell aus dem Klassenordner löschen, ist der Viewer nicht funktionsfähig. Auch wenn Sie mit Hilfe des Assistenten neue Viewerinstanzen erstellen, wird keine neue XML-Datei erzeugt.
-
Wenn Sie den Crystal Reports Designer starten, um einen Bericht innerhalb der IDE anzuzeigen, wird der Bericht vom Designer nicht gefunden, falls der Berichtname Zeichen enthält, die in dem für das Betriebssystem ausgewählten Gebietsschema nicht verfügbar sind. Auf einem System mit dem Systemgebietsschema „Deutsch“ kann ein Bericht mit japanischen Zeichen im Namen beispielsweise nicht geladen werden. Um dieses Problem zu umgehen, öffnen Sie den Bericht im Designer über die Menüoption „Datei öffnen“.
-
Wenn Sie STRG+S drücken, während Sie in Rational Application Developer im eingebetteten Crystal Report Designer arbeiten, wird der Bericht nicht gespeichert.
-
Der Crystal Report Designer wird in Rational Application Designer erst deaktiviert, nachdem Sie Crystal Reports deinstalliert haben.
-
Nachdem Sie mit Hilfe des eingebetteten Crystal Report Designers einen neuen Bericht in Rational Application Developer erstellt haben, werden die im Rahmen der Berichterstellung ausgewählten Datenbanktabellen nicht im Bereich „Datenbankfelder“ des Feld-Explorers angezeigt. Um dieses Problem zu umgehen, klicken Sie mit der rechten Maustaste auf „Datenbankfelder“, wählen „Datenbank-Assistent“ und klicken dann auf „OK“. Die Felder werden jetzt im Bereich „Datenbankfelder“ angezeigt.
-
Wenn beim Erstellen eines neuen Berichts in Rational Application Developer ein externer Designer als Standardeditor und in dem zu erstellenden Bericht eine Vorlage verwendet wird, werden bei der Generierung des Berichts Fehler ausgelöst.
10.0 Crystal Enterprise JSF-Komponenten
-
Wenn Sie die ButtonType-Eigenschaft eines ButtonProps-Objekts auf „ImageButton“ setzen, wird sowohl die Grafik als auch der Beschreibungstext der Schaltfläche angezeigt.
-
Das von der Path-Komponente ausgelöste ItemEventArgs-Ereignis enthält keinen Typ, sondern nur die Objekt-ID. Um dieses Problem zu umgehen, rufen Sie die progID entweder über EnterpriseItem oder eine infostore-Abfrage aus dem InfoObject selbst ab. Hier ein Beispiel:
1. Rufen Sie im Ereignis die Komponente ab, und wandeln Sie sie in UIBaseControl oder UIPath um, falls der Listener nur UIPath-Komponenten verarbeitet.
2. Rufen Sie für ItemClickedEvent die ItemID aus dem Ereignis ab, indem Sie folgenden Aufruf verwenden: curEvent.getEventArgs().getItemID()
3. Erstellen Sie ein temporäres EnterpriseItem, und legen Sie (unter Verwendung des Attributs in UIPath.getItemSource().getIdentity()) erst das Identity-Attribut und dann die ItemID fest.
4. Rufen Sie das InfoObject wie folgt ab: item.getInfoObject()
5. Fragen Sie die progID ab.
Zurück zur Haupt-Infodatei
Copyright © 2004 Business Objects. Alle Rechte vorbehalten.