Crystal Reports pour Rational Application Developer - Notes de version
1.0 Restrictions
2.0 Installation/Désinstallation
3.0 Problèmes propres aux différentes plates-formes
4.0 Mise en forme et rendu
5.0 Bases de données relationnelles et instructions SQL
6.0 Création des diagrammes
7.0 Fonctionnalités d'état
8.0 Visualiseurs
9.0 Intégration IDE
10.0 Composants JSF Crystal Enterprise
1.0 Restrictions
Le code clé du composant de création d'états livré avec Crystal Reports pour Rational Application Developer permet de développer, tester et déployer un nombre limité de fonctions de reporting au sein d'applications. D'autres restrictions s'appliquent à cette version de Crystal Reports pour Rational Application Developer :
-
Le Java Reporting Component ne traite que les états qui ont été créés dans Crystal Reports, version 9 ou ultérieure. Les états créés dans des versions antérieures de Crystal Reports doivent au préalable être convertis à l'aide de l'outil de conversion d'états qui peut être téléchargé depuis le site Web de Business Objects.
-
Cette version ne propose pas les API de création et de modification d'états pour le Java Reporting Component.
-
Les données d'état enregistrées avec le modèle d'état peuvent être actualisées au moment de l'exécution, mais ne peuvent pas être enregistrées de nouveau avec le modèle d'état. En effet, ces données ne peuvent être enregistrées avec le modèle d'état qu'au moment de la conception, à l'aide du concepteur d'états de bureau.
-
Les états accédant aux sources de données suivantes ne peuvent pas être utilisés :
-
Pilote JavaBean
-
Sources de données multiples
-
OLAP
-
Les états peuvent être exportés uniquement aux formats PDF et RTF.
-
L'enregistrement du statut côté client n'est pas pris en charge.
- Les fonctionnalités suivantes ne sont pas prises en charge dans cette version :
-
Interprétation RTF
-
Modèles d'état
-
Création de cartes géographiques
-
Diagrammes de Gantt, jauges, diagrammes de type entonnoir et à axe numérique
-
Référentiel Crystal Reports
-
Alertes d'état
2.0 Installation/Désinstallation
-
Lors de la désinstallation, les fichiers communs situés dans C:\Program Files\Fichiers communs\Crystal Decisions\2.5 et dans C:\Program Files\Fichiers communs\Business Objects\3.0 ne sont pas supprimés.
3.0 Problèmes propres aux différentes plate-formes
-
Sur une plate-forme AIX exécutant IBM JDK 1.3.1 ou 1.4, un bug dans le JDK peut entraîner l'échec des états. Pour contourner ce problème, définissez le JITC_COMPILEOPT de l'environnement sur SKIP{com/crystaldecisions/reports/common/encryption/Processing}{processing}.
-
Le JVM BEA JRockit dispose d'une option de rassemblement des données erronées parallèle qui génère des exceptions de type mémoire insuffisante lors du traitement des blocs de mémoire contigus supérieurs à 2 Mo. Pour contourner ce problème, vous devez augmenter la taille maximale du segment de mémoire ou utiliser le programme de rassemblement des données erronées copiant générationnel. Pour définir la taille maximale du segment de mémoire, utilisez l'option "-XmxNNNm", où NNN correspond à la taille du segment de mémoire en Mo. Pour recourir au programme de rassemblement des données erronées copiant générationnel, utilisez l'option "-Xgc:gencopy".
-
L'exportation d'un état au format PDF (par programmation ou via les visualiseurs) n'est pas prise en charge dans WebSphere Studio 6. Cette limitation ne s'applique pas aux autres serveurs d'applications. Il est recommandé d'utiliser l'impression ActiveX si votre application Web est déployée dans WebSphere Studio 6. Vous pouvez également utiliser la version JSF du visualiseur de pages d'état DHTML qui n'impose pas cette limitation.
4.0 Mise en forme et rendu
-
Si une section ou une partie d'un état est supprimée, les indicateurs newPageBefore et newPageAfter ne sont pas évalués pour cette section ou partie. Pour contourner le problème, vous pouvez définir l'indicateur newPageBefore ou newPageAfter sur la section visible suivante ; cela s'applique également aux sections de hauteur nulle.
-
Dans un état, le symbole de devise flotte même si l'option de position fixe a été sélectionnée.
-
Le format de date et d'heure affiché dans un état est basé uniquement sur les paramètres régionaux par défaut du serveur.
-
Lorsque vous visualisez un état, si celui-ci contient des objets qui dépassent les limites de la page, la page s'affiche sur deux pages horizontales.
-
Lorsque vous visualisez un état à l'aide du visualiseur, les objets texte qui ne contiennent pas d'espaces ne s'affichent pas si la largeur est insuffisante. Pour visualiser l'état correctement, vous devez augmenter la largeur des objets texte.
-
La fonction d'espacement des caractères n'est pas prise en charge dans cette version. L'espacement des caractères appliqué à un objet texte n'est pas pris en compte.
-
En raison des limitations liées à HTML 4.0, le style de bordure Arrondi pour les objets cadre s'affiche sous la forme d'un rectangle.
-
Lorsque vous visualisez un état à l'aide du visualiseur, les en-têtes de colonne d'une table croisée peuvent être superposés ou tronqués.
-
Lorsque vous visualisez un état contenant une table croisée à l'aide du visualiseur, si la table croisée comporte une ligne de total dans sa partie supérieure, une partie des champs des cellules sera coupée. Si la table croisée comporte une ligne de total située en bas, les cellules ne sont pas coupées (le fonctionnement est correct).
-
Lorsque vous visualisez un état à l'aide du visualiseur, des lignes supplémentaires peuvent apparaître dans le champ de texte. Cela est dû à l'arrondi de la conversion de twips en pixels. Pour contourner ce problème, redimensionnez légèrement la section.
-
Lors de l'exportation d'un état au format PDF, vous pouvez obtenir un message d'erreur à l'ouverture du PDF indiquant un problème au niveau de la police ("The font contains a bad/BBox"). Cette erreur peut être ignorée car elle n'affecte pas la visualisation du fichier PDF.
-
Lors de l'exportation d'un état au format RTF à l'aide du Java Reporting Component, si l'état contient un objet pour lequel l'option "Déplacer vers l'avant" a été définie, l'objet n'est pas déplacé vers l'avant du fichier RTF résultant. Cependant, l'option "Déplacer vers l'arrière" fonctionne comme prévu.
-
Les états qui contiennent des diagrammes en surface comportant des données nulles ne sont pas rendus correctement lorsqu'ils sont traités par le Java Reporting Component.
-
Les positions personnalisées pour les éléments dans les diagrammes ne sont pas utilisées par le Java Reporting Component pour le rendu de l'état. Les positions par défaut sont utilisées à la place.
5.0 Bases de données relationnelles et instructions SQL
-
Lorsque vous actualisez un état contenant une procédure stockée BIT à partir d'une base de données SQL Server ou Sybase, les champs de paramètres se transforment en menus déroulants sans valeurs par défaut. Vous ne pouvez pas visualiser l'état si celui-ci repose sur des valeurs de paramètre.
-
Le pilote JDBC Oracle ne prend pas en charge les états contenant des données de type BFILE.
-
Le pilote JDBC Oracle ne prend pas en charge les types de données intervalle.
-
Le pilote JDBC Oracle ne prend pas en charge les états contenant des données de type UROWID.
-
Le pilote JDBC Sybase n'autorise que 255 caractères dans les champs de type char, varchar et nvarchar. Si vous devez saisir plus de 255 caractères dans un champ, utilisez plutôt le type texte.
-
Les versions précédentes du pilote JDBC Sybase ne prennent pas en charge les états contenant des données de type UNICHAR ou UNIVARCHAR. Utilisez jConnect for JDBC version 5.5 ESD #9 ou une version supérieure.
-
Le pilote ODBC Informix renvoie le champ CLOB en tant qu'objet plutôt qu'en tant que CLOB.
-
Les états contenant des jointures circulaires ne sont pas pris en charge dans cette version. En outre, les jointures qui nécessitent l'exécution de requêtes indépendantes et qui sont ensuite reliées par d'autres jeux de tables, ne sont pas non plus prises en charge dans cette version.
-
Les champs BLOB définis avec une "taille modulable" n'évoluent pas. Par exemple, si des images de taille différente sont placées dans des champs BLOB définis avec la propriété "taille modulable", elles sont restituées avec la même taille.
-
Lorsque vous actualisez un état contenant une procédure stockée à partir d'une base de données SQL Server, les paramètres d'horodatage doivent être au format hexadécimal.
-
Le Java Reporting Component ne respecte pas les jointures de tables forcées.
6.0 Diagrammes
-
La légende des diagrammes peut apparaître différemment dans Crystal Reports Designer et dans le visualiseur.
-
Lorsque vous affichez un état contenant une table croisée et un diagramme, la table croisée apparaît toujours par-dessus le diagramme, quelle que soit la manière dont la propriété MoveToFront a été définie pour la table croisée.
-
Le visualiseur n'affiche pas les textures ou les images en arrière-plan des diagrammes.
-
Lorsque vous affichez un diagramme contenant une image fractionnée sur plusieurs pages, l'image peut ne pas s'afficher correctement. Pour contourner ce problème, appliquez à l'objet image l'indicateur Conserver l'unité pour empêcher qu'elle ne s'affiche sur plusieurs pages.
7.0 Fonctionnalités d'état
-
Le Java Reporting Component utilise un format d'heure et de date haute résolution. Les fonctions de date et d'heure peuvent retourner un nombre de secondes non entier.
-
Lorsque vous utilisez les fonctions ASC et CHR, une erreur se produit lors de l'exécution en cas d'utilisation de caractères dont la valeur n'est pas comprise entre 0 et 127. Les fonctions ASC et CHR ont été remplacées par les fonctions ASCW et CHRW pour éviter cette erreur avec les valeurs non comprises entre 0 et 127. Les fonctions ASC et CHR ne seront pas prises en charge dans les versions futures.
-
Dans le langage de formule, seules les chaînes de date et d'heure des paramètres régionaux anglais sont prises en charge dans cette version.
8.0 Visualiseurs
-
Lorsque vous affichez un état, par défaut, les boutons Exporter et Imprimer n'apparaissent pas. Pour activer ces boutons, affectez la valeur "true" à la propriété isOwnPage (ou à la méthode setOwnPage). (Remarque : La version JSF du visualiseur de pages d'état DHTML ne possède pas de propriété isOwnPage.)
-
Lorsque vous exportez un état, si vous appuyez sur le bouton d'actualisation du navigateur une fois l'état exporté, vous êtes invité à l'exporter de nouveau.
-
Les recherches de texte commencent toujours sur la seconde page. En outre, elles ne mettent en surbrillance que la première occurrence de la chaîne recherchée sur chaque page. Par exemple, si la page actuelle contient deux occurrences de la chaîne recherchée, la première occurrence sera mise en surbrillance mais si vous poursuivez la recherche, le système passe directement à la page suivante.
-
Le placement de deux visualiseurs sur la même page peut entraîner un comportement non souhaité. Par exemple, une opération effectuée sur un visualiseur peut également modifier l'autre visualiseur. Pour éviter ce comportement, ne placez pas deux visualiseurs sur la même page.
-
Lors de la navigation dans un état comportant des invites de paramètres, la cible de la navigation n'est pas mise en surbrillance. Par exemple, si vous cliquez sur un lien, la cible du lien de la page résultante n'est pas mise en surbrillance. Si l'état ne contient aucune invite de paramètre, la cible de la navigation est mise en surbrillance.
-
Lorsque la propriété IsIgnoreViewStateOnLoad des visualiseurs Java est définie sur true, la propriété ViewState n'est pas ignorée. Le comportement attendu est que la propriété ViewState soit ignorée lorsque la valeur true est affectée à IsIgnoreViewStateOnLoad.
-
Le statut des éléments de la barre d'outils du visualiseur est conservé d'une session de navigateur à l'autre. Par exemple, si vous avez exécuté les JSP avec certains éléments de barre d'outils activés, puis que vous avez désactivé ces éléments, ces derniers s'affichent toujours lors de la prochaine exécution des JSP. Pour corriger ce problème, redémarrez votre serveur d'applications Web après modification des éléments de barre d'outils.
-
L'erreur suivante est renvoyée lors de la définition de l'attribut reportSource de la version JSF du visualiseur de pages d'état DHTML à l'aide d'une valeur scriptlet : "org.apache.jasper.JasperException : Only report source objects are accepted" (Seuls les objets source de l'état sont acceptés). Pour corriger ce problème, utilisez une valeur de propriété bean lors de la définition de l'attribut reportSource de la version JSF du visualiseur de pages d'état DHTML.
-
Lors de l'utilisation de la version JSF du visualiseur DHTML, si la méthode d'enregistrement du statut JSF est effectuée côté serveur, la mise en surbrillance d'un élément dans le visualiseur est conservée même après la fin de la navigation dans la page d'origine dans laquelle l'élément avait été mis en surbrillance.
-
La valeur du champ Heure d'impression n'est pas mise à jour lors du rafraîchissement d'un état à l'aide des visualiseurs. Le champ Heure d'impression indiquera la première heure à laquelle l'état a été visualisé dans la session en cours.
-
Par défaut, la version JSF du visualiseur de pages d'état DHTML utilise les paramètres régionaux du serveur d'applications lors de l'affichage d'un état. Pour utiliser les paramètres régionaux du navigateur de l'ordinateur client, vous devez définir manuellement l'attribut productLocale (par exemple, productLocale=#{facesContext.externalContext.requestLocale} ).
9.0 Intégration IDE
-
Le fichier de propriétés des journaux indique $HOME/Crystal comme emplacement pour la création de fichiers journaux. Un message d'erreur s'affiche si cet emplacement n'existe pas. Dans ce cas, vous devez soit créer ce répertoire, soit modifier le fichier afin qu'il pointe vers un répertoire existant.
-
Le visualiseur ne fonctionne pas si vous supprimez manuellement CrConfig.xml du dossier de classes. La création de nouvelles instances du visualiseur n'entraînera pas la création d'une copie du fichier XML.
-
Lorsque vous lancez le concepteur Crystal Reports pour visualiser un état dans l'IDE, le concepteur ne trouve pas l'état si son nom contient des caractères non disponibles dans les paramètres régionaux du système d'exploitation. Par exemple, sur un système doté de paramètres régionaux anglais, un état dont le nom comporte des caractères japonais ne se charge pas. Pour contourner ce problème, ouvrez l'état à partir de l'option de menu "Ouvrir le fichier" dans le concepteur exécuté.
-
L'utilisation de la commande Ctrl-S tout en travaillant dans le Crystal Report Designer incorporé dans Rational Application Developer n'enregistre pas l'état.
-
La désinstallation de Crystal Reports désactive Crystal Report Designer dans Rational Application Developer.
-
Après la création d'un état dans Rational Application Developer à l'aide du Crystal Report Designer incorporé, les tables de bases de données choisies dans le processus de création de l'état ne s'affichent pas dans la section Champs de base de données de l'Explorateur de champs. Pour corriger ce problème, cliquez avec le bouton droit de la souris sur Champs de base de données, sélectionnez Expert Base de données, puis cliquez sur OK. Les champs s'affichent alors dans la section Champs de base de données.
-
Lors de la création d'un état dans Rational Application Developer, si l'éditeur par défaut est le concepteur externe et que l'état que vous créez utilise un modèle, des erreurs apparaissent à la création de l'état.
10.0 Composants JSF Crystal Enterprise
-
Lorsque vous affectez à la propriété ButtonType d'un objet ButtonProps la valeur "ImageButton", l'image et le texte du bouton s'affichent.
-
ItemEventArgs déclenché par le composant Path ne contient pas le type, seulement l'ID de l'objet. Pour corriger ce problème, obtenez le progID de InfoObject directement, en utilisant EnterpriseItem ou une requête InfoStore. Par exemple :
1. A partir de l'événement, obtenez le composant et transtypez-le en UIBaseControl ou UIPath, si l'écouteur ne gère que les composants UIPath.
2. Pour ItemClickedEvent, obtenez ItemID à partir de l'événement en appelant : curEvent.getEventArgs().getItemID()
3. Créez un EnterpriseItem temporaire, définissez l'attribut Identity (à l'aide de celui de UIPath.getItemSource().getIdentity()) et définissez ItemID.
4. Obtenez InfoObject en appelant : item.getInfoObject()
5. Interrogez le progID.
Revenir au fichier Lisez-moi principal
Copyright © 2004 Business Objects. Tous droits réservés.