Gestionnaire de rapport

## Ouvrir le gestionnaire de rapports

Lancer le Gestionnaire de rapport (GRM) ou utiliser le menu ``Outils` → `Gestionnaire de rapports…`` .

## Ajouter un nouveau rapport

Il y a 2 options disponibles.

### Créez le rapport à partir de zéro

1. En utilisant l'arbre de navigation, faites un clic droit de la souris sur l'étiquette ``Rapports``.
2. Choisissez l'élément de menu: ``Nouveau rapport vide``.
3. Entrez un nom pour un nouveau groupe de rapports et le nom du nouveau rapport.
4. Renommez un rapports, si nécessaire, avec clic droit sur l'élément de menu: ``Renommer le rapport…``.
5. Cinq onglets seront affichés : Sortie, SQL, Lua, Modèle et Description.
6. Choisissez l’onglet : SQL, insérez le script SQL dans la fenêtre de l’éditeur, vérifiez que le script SQL se termine par un point-virgule, puis appuyez sur le bouton "Enregistrer".
7. Appuyez sur le bouton ``Test`` pour exécuter le script SQL.
8. Si le test est ok, le bouton ``Créer un modèle`` sera disponible. Appuyez pour générer un modèle HTML pour le rapport.
9. Appuyez sur ``Démarrer`` pour obtenir le rapport HTML dans la fenêtre de sortie.

#### Paramètres du rapport

Pour MMEX version 1.4.0, il y a une possibilité de transférer des dates dans le script SQL du rapport. Il y a quatre options: &single_date, &begin_date, &end_date, &budget_years. Si un SQL contient un de ces paramètres, il sera remplacé par une date à partir du calendrier. Par exemple, ce script SQL retourne tous les soldes des comptes pour la date spécifiée :

    with b as  (
        select ACCOUNTID, STATUS
            , (case when TRANSCODE = 'Deposit' then TRANSAMOUNT else -TRANSAMOUNT end) as TRANSAMOUNT
            , TRANSDATE
        from CHECKINGACCOUNT
        union all
        select TOACCOUNTID, STATUS, TOTRANSAMOUNT ,TRANSDATE
        from CHECKINGACCOUNT
        where TRANSCODE = 'Transfer'
        )
    select a.ACCOUNTNAME,
    total(TRANSAMOUNT) + a.INITIALBAL as Balance
    from ACCOUNTLIST as a, b
    where a.STATUS = 'Open'
        and b.ACCOUNTID = a.ACCOUNTID
        and b.STATUS <> 'V'
        and b.TRANSDATE <= '&single_date'
    group by a.ACCOUNTNAME order by a.ACCOUNTNAME asc;

### Importer un rapport

Il y a beaucoup de rapports fournis par des utilisateurs ou des développeurs sur GitHub

## Exportation de la définition d'un rapport

Si vous avez créé un rapport utile, il peut être exporté dans un fichier ZIP.