ExcelReport 6/6 : les nouveautés de la V1
Cette version corrige des bogues, apporte des fonctions supplémentaires et est livrée avec une base de documents exemple
Correctifs.
- Problèmes venant d'une mauvaise prise en compte de la casse dans des comparaisons se traduisant pas des erreurs OleAutomation Error.
- Problèmes avec les définitions de plages erronées qui déclenchaient des erreurs de type OleAutomation Error.
Nouvelles fonctionnalités.
- La méthode FillReportLine de la classe ExcelReport peut maintenant recevoir un objet de type ViewEntry à la place d'un document. On peut ainsi itérer depuis une ViewEntryCollection ou un ViewNavigator pour lire les données à traiter.
Pour créer un rapport n'incluant que les documents appartenant à une même catégorie, créer une ViewEntryCollection en utilisant la méthode getAllEntriesByKey de la vue d'origine et parcourir les ViewEntry. Pour utiliser les totaux de colonnes dans un état Excel, créer un ViewNavigator et envoyez les lignes de totalisation des différents niveaux à la méthode fillReportLine (pour cette fonction, utiliser les numéros de colonnes pour nommer les cellules Excel, et non les noms de champs) - Toutes les valeurs contenues dans les champs multi-valeurs sont désormais traitées. Si la propriété "Renvoi automatique à la ligne" a été sélectionnée pour la cellule dans le modèle Excel, les différentes valeurs sont affichées sur des lignes différentes (dans la même cellule). Sinon, les différentes valeurs sont affichées à la suite les unes des autres, séparées par un espace.
- Les retours lignes à l'intérieur des champs sont remplacés par un espace. Dans la version précédente, ils étaient affichés sous forme de petit carré.
- Avant de clore l'état pour l'afficher, l'imprimer ou le sauvegarder, un ordre de recalcul est envoyé à Excel.. Le modèle peut être défini en mode recalcul à la demande, évitant ainsi le recalcul automatique après chaque insertion.
Quand l'état comporte beaucoup de lignes, le gain en temps de traitement est considérable. - La méthode SaveAs est désormais une fonction et non plus une routine. La valeur retournée reflète le statut de l'opération. Vrai indique que la sauvegarde a eu lieu, sinon faux est retourné. On peut lire le message d'erreur au moyen d'une nouvelle propriété (en fait message générique peu explicite).
Base de documents exemple
La bibliothèque ExcelReport_1 est fournie dans une base de documents qui contient plusieurs exemples d'utilisation, avec entre autres une facturation et la production d'un graphique Excel.
Cette base de documents permet également d'utiliser ExcelReport sans aucune programmation.
Il suffit de créer un modèle de document Excel, d'enregistrer les paramètres nécessaires dans un document, et de lancer l'exécution au moyen d'un bouton pour produire un état Excel.
Compatibilité.
La signature de la classe ExcelReport a changé avec cette version. La simple substitution des bibliothèques est impossible, une nouvelle compilation est nécessaire.
La nouvelle bibliothèque est nommée ExcelReport_1. Pour l'utiliser à la place de l'ancienne, il suffit de changer la directive Use pour forcer une nouvelle compilation (Use "ExcelReport_1" à la place de Use "ExcelReport"). Le nom de la classe est inchangé, et seul le changement de la clause Use est nécessaire.
La mise en oeuvre de certaines des nouvelles fonctionnalités peut nécessiter d'autres modifications.