Changes

Jump to: navigation, search

Écrire un rapport

323 bytes removed, 10:34, 16 March 2012
m
no edit summary
* Le prénom le plus commun.
À partir de la version 3.2, sont également disponibles : un [[Simple Access API|accès simple]] aux [http://www.gramps-project.org/docs/ API] de base de données, accompagnée accompagné de [[Quick Reports|Rapports rapides]], [[Gramplets]] et [[Addons_Development|Addons]].
== Aperçu ==
Le reste de la classe est plus l'affaire du développeur. Selon les objectifs et la portée du rapport, il y a une taille du code. Lorsque l'utilisateur génère le rapport dans n'importe quel mode, la construction de la classe va être exécutée, puis la méthode <tt>write_report()</tt> sera appelée. Donc, si vous avez écrit quelque chose de vraiment important, assurez-vous que ceci est appelée depuis <tt>write_report()</tt>. Sinon personne ne le verra, à part en regardant dans le code.
=== La classe options Options ===
* La classe Options doit dériver de la classe [http://www.gramps-project.org/docs/ ReportOptions]. En général dans un simple rapport, la classe <tt>MenuReportOptions</tt> en est dérivée. <tt>MenuReportOptions</tt> va fournir l'essentiel de la gestion du widget de bas niveau.
</pre>
Dans cet exemple, la classe option est rapportée par la fonction <tt>get_option_by_name()</tt>. La chaîne doit correspondre au nom qui vous avez saisi comme second argument dans <tt>menu.add_option()</tt> lorsque que vous avez créé le menu. Enfin une liste des items sélectionnées sélectionnés est rapportée avec <tt>get_selected()</tt> et stockée comme faisant partie d'une classe pour une utilisation future.
== Implémentation ==
=== Définition de la classe Rapport Options du rapport ===
Dans cet exemple, aucune des options spéciales sont requisesoption particulière n'est requise. Cela rend la classe d'options très simple. Tout ce qui est nécessaire pour définir les styles par défaut.
<pre>
class DbSummaryOptions(ReportOptions):
Tout le travail se fait dans <tt>write_report()</tt>. Cette fonction utilise <tt>GrampsCursor</tt> pour itérer à travers les <tt>objects</tt>, rassemblant les objets tels de simples statistiques.
La seule chose un peut peu plus compliqué étant la détermination des patronymes les plus courants. Un dictionnaire Python est utilisé pour stocker le nombre de fois que chaque nom est utilisé. Chaque fois qu'un nom est rencontré, la valeur dans le dictionnaire est incrémentée. Les résultats sont ensuite chargés dans une liste et classés, ce qui nous permet de trouver le nom le plus courant en regardant la dernière inscription dans la liste.
<pre>
class DbSummaryReport(Report):
* L'enregistrement est défini dans un fichier ''nom.gpr.py''.
* L'enregistrement devrait doit définir un nom interne du pour le rapport (de préférence, une seule chaîne avec des sans caractères spéciaux, utilisable pour rendre l'identification de la en ligne de commande et dans les options de stockage, ainsi que pour former le fournir un nom du de fichier sain pour stocker nécessaire au stockage de ses propres modèles). On doit aussi définir :
** la catégorie du rapport (texte / graphiques / Code)
* Si le rapport a besoin d'une personne active pour fonctionner, alors <tt>require_active</tt> doit être défini comme ''True''.
* Enfin, les deux classes ''options de rapport classe '' et la classe ''report'' doivent être passées à par l'enregistrement.
Voici par exemple la déclaration d'enregistrement:
Finalement, les classes ''options'' et ''report'' doivent passer par l'enregistrement.
Voici un exemple d'enregistrement :
<pre>
report_modes = [REPORT_MODE_GUI, REPORT_MODE_CLI]
</pre>
Deux chaînes définissent le la classe du rapport de et la classe et d'options classe. L'argument <tt>report_modes</tt> argument est fixé à la défini pour être une somme de bits sage (le <tt>OUOR</tt>statement) de chacun des trois parmi les modes possiblesdisponibles : GUI (rapport autonome rapport produit d'depuis GRAMPS cours d'exécution dans une fenêtre), BKI (Livre en questionarticle du livre), et CLI (interface de la ligne de commande). Cela signifie que le rapport sera disponible dans les trois modes. Le reste devrait être d'explication.
Un exemplaire complet du rapport peut être [[media:DbSummary.zip|téléchargé (1.66 KB)]] pour les essais et l'expérimentation.  [[Category:Fr:Documentation|R]]

Navigation menu