## Den allgemeinen Berichtsmanager öffnen

Der allgemeinen Berichtsmanager (GRM) kann in der Toolbar aufgerufen werden, oder im Hauptmenü mit ``Extras` → `allgemeiner Berichtsmanager…`` .

## Neuen Bericht hinzufügen

Es gibt zwei Möglichkeiten.

### Erstelle einen Bericht von Grund auf neu

1. In der Navigationsstruktur mit der rechten Maustaste auf ``Berichte`` klicken.
2. Wähle den Menüpunkt: ``Neuer Leerer Bericht``.
3. Optional: Gib den Namen einer neuen Berichtsgruppe oder wähle eine bestehende aus.
4. Gib dem neuen Bericht einen Namen (Berichte können auch noch später mit der rechten Maustaste auf den Menüpunkt: ``Bericht umbenennen`` umbenannt werden)
5. Die folgende Registerkarten werden angezeigt: Ausgabe, SQL, Lua, Vorlage und Beschreibung.
6. Wähle die Registerkarte SQL, kopiere das SQL-Skript in das Editor-Fenster, überprüfe, dass das SQL-Skript mit einem Semikolon endet und bestätige die Schaltfläche "``Speichern``".
7. Klicke den ``Test`` Button, um das SQL-Skript auszuführen.
8. War der Test erfolgreich, erscheint die Schaltfläche ``Erstelle Vorlage``. Betätige diese, um eine HTML-Vorlage für den Bericht zu erstellen.
9. Klicke die Schaltfläche ``Ausführen`` und der HTML- Bericht wird im Ausgabefenster angezeigt.

#### Berichtsparameter

Ab MMEX Version 1.4.0 gibt es die Möglichkeit Datumswerte in ein SQL-Skript zu übertragen. Dafür stehen vier Optionen zur Verfügung: &single_date, &begin_date, &end_date, &budget_years. Für den Fall, dass das SQL-Skript einen der oben genannten Parameter enthält wird dieser durch das Datum aus einem Kalender-Widget ersetzt.
Dieses SQL-Skript liefert zum Beispiel alle Kontensalden für das angegebene Datum:

                with b as (
                select
                    ACCOUNTID,
                    STATUS,
                    (case when TRANSCODE = 'Deposit' then TRANSAMOUNT else -TRANSAMOUNT end) as TRANSAMOUNT,
                    TRANSDATE
                from
                    CHECKINGACCOUNT_V1

                union all

                select
                    TOACCOUNTID,
                    STATUS,
                    TOTRANSAMOUNT,
                    TRANSDATE
                from
                    CHECKINGACCOUNT_V1
                    where TRANSCODE = 'Transfer'
                )

                select
                a.ACCOUNTNAME,
                total(TRANSAMOUNT) + a.INITIALBAL as Balance
                from ACCOUNTLIST_V1
                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;

### Importieren von Berichten

Es gibt viele Berichte von Benutzern oder Entwicklern auf GitHub

## Exportieren von Berichtsdefinition

Wenn Du einen hilfreichen Bericht erstellt hast, kann dieser als ZIP Datei exportiert werden.