Der Reportgenerator

Pfad: Hauptfenster-Menüband "Start" > Gruppe "Suche" > Drop-down-Menü Button Recherche > "Reportgenerator"

Der Reportgenerator ist ein mächtiges Auswertungsinstrument. Er ist nur zugänglich für Insomacs-Nutzer, für die der Zugang nicht in den Benutzerrechten gesperrt ist (vgl. Kapitel Benutzerverwaltung: Registerkarte "Rechte").

Mit ihm können Sie über die Datenbestände der

  • Akten
  • Adressen
  • Kanzleien

selbstdefinierte Abfragen erstellen, abspeichern und wieder verwenden.

In diesen Abfragen wird festgelegt, welche Felder in der Ergebnisliste erscheinen sollen und auch die Kriterien für die Auswahl von bestimmten Datensätzen. Eine wesentliche Möglichkeit ist auch, dass bestimmte Adressen herausgefiltert werden, für die dann ein Serienbrief erstellt werden kann.

Es öffnet sich zunächst das Fenster "Suche Reportgenerator".

In diesem Fenster werden (wenn vorhanden) bereits gespeicherte Reportgenerator-Abfragen gelistet.

Diese können mit Texteingaben bei Suchbegriff durchsucht werden.

  • Der Suchtyp "beginnt mit" (voreingestellter Standard) entspricht der bisherigen Suche. Der blaue Markierungsbalken wird auf den ersten Datensatz, der mit dem Suchtext beginnt positioniert.
  • Der Suchtyp "enthält" entspricht dagegen einem Filter. Es werden dann nur noch die Datensätze angezeigt, die den Suchtext enthalten.

Zum Öffnen eines markierten Datensatzes klicken Sie auf den Button Ja, diesen oder doppelt.

Zum Erstellen einer neuen Abfrage auf den Button Neu.

In beiden Fällen öffnet sich das nachfolgend abgebildete Fenster – mit bzw. ohne Einträgen.

Jede Abfrage erhält einen Suchbegriff. Die Verwaltung der Abfragen erfolgt wie die Adressen-Verwaltung. Zusätzlich erhalten Sie die Möglichkeit, die einzelnen Abfragen im Suchfenster mit Hilfe einer Baumstruktur zu gruppieren (vgl. Struktur in Abfragen bringen für Rohtexte).

Ein wichtiger Anwendungsfall ist die Erstellung von Serienbriefen.

Das Fenster "Reportgenerator"

Die Beschreibung dieser Abfrage dient als Info für andere Anwender von Insomacs.

Das Feld Typ ist nur sichtbar, wenn der Benutzer das Benutzerrecht "SQL-Report bearbeiten" besitzt (einzustellen über die Benutzerverwaltung RAG User). Damit ist es möglich, eine Abfrage nicht wie nachfolgend beschrieben, sondern direkt über die Datenbanksprache SQL zu definieren. Dazu muss die SQL-Syntax verwendet werden, die sich je nach zugrunde liegender SQL-Datenbank unterscheiden kann. Oberhalb des SQL-Statements werden Datenbank-Tabelle und AutoRel hinterlegt. Dadurch steht die gesamte Funktionalität des Reportgenerators auch bei SQL-Abfragen zur Verfügung.

Bei Datenbank stellen Sie den Datenbereich ein, mit dem diese Abfrage arbeiten soll. Dabei gibt es derzeit die Möglichkeit, den Datenbestand der "Adressen", "Akten (InsoMACS)" und "Kanzleien" auszuwählen. Achten Sie darauf, immer den richtigen Datenbereich für Ihre Suchabfrage einzugeben! Sonst wird u. U. eine Fehlermeldung angezeigt.

Mit dem Drop-down-Menü Sortiert sind für jeden Datenbereich sind hier unterschiedliche Einstellungen möglich, in welcher Reihenfolge die gefundenen Datensätze erscheinen sollen. So kann z. B. bei einer Auswertung über Adressen gewählt werden, ob nach "Suchbegriff" oder nach "Postleitzahl" sortiert werden soll.

Wenn die Liste ausgedruckt wird, erscheint der gesetzte Titel als Überschrift. Oft kann hier der Feldinhalt von Beschreibung übernommen werden.

Im großen weißen Bereich darunter wird die eigentliche Abfrage eingetragen. Die Syntax, mit der die komplexen Abfragen gestaltet werden, wird im nachfolgenden Kapitel Abfrage gestalten erläutert.

Sie können den Abfragetext entweder direkt über die Tastatur eingeben, ohne auf die drei nachfolgend beschriebenen Erleichterungen zurückzugreifen – für geübte Anwender sicher die schnellere Methode. Die Groß-/ Kleinschreibung muss dabei nicht beachtet werden. Oder Sie lassen sich helfen und setzen den Abfragetext mit Mausklicks zusammen:

Das Drop-down-Menü Datenfeld enthält eine Auswahl aller verfügbaren Datenfelder zur eingestellten Datenbank. Die Datenfelder können im Reportgenerator entweder in der Ergebnisliste angezeigt oder als Filterkriterium verwendet werden. Mit anderen Worten: Das Drop-down-Menü bietet die (derzeit) wichtigsten Platzhalter der zuvor ausgewählten Datenbank zum Eintragen an.

Hinweis: Steht ein Platzhalter für eine Check-Box, wird es über "J" (ja, Check-Box markiert) und "N" (nein, nicht markiert) abgefragt (Bsp.: Feld "PKH" in bei "Akten"). Ausnahme: Das Feld "FallKat" (Fallkategorie, Bereich "Akten") liefert "U" für Unfallsachen und "F" für Familiensachen.

Der Button Einfügen fügt die die Bezeichnung des in Feld ausgewählten Datenelementes in den Definitionstext ein.

Jeder dieser Buttons fügt seine Beschriftung in den Definitionstext ein.

Auswertung durchführen

Der Button Druck öffnet den Druck-Dialog für die Ergebnisliste.

Sobald Sie den Abfragetext erstellt haben, wird mit dem Button Filtern die Auswertung gestartet. Dieser Vorgang kann bei großen Datenmengen einige Zeit benötigen.

Mit dem Button Abbruch können Sie den Filtervorgang, d. h. den Aufbau der Ergebnisliste, vorzeitig abbrechen.

Das Ergebnis einer Abfrage wird in der unteren Fensterhälfte angezeigt – jeder Datensatz (Adresse oder Akte), welche die eingegeben Kriterien erfüllt, wird aufgelistet.

Mit einem Doppelklick in eine der Ergebniszeilen wird der entsprechende Datensatz geöffnet.

Serienbrief erstellen

Bei Datenbereichen mit Adress-Charakter kann für die in der Ergebnisliste stehenden Adressen im Reportgenerator ein Serienbrief erstellt und mit Hilfe von Word ausgedruckt werden.

1. Definitionstext (Abfrage) erstellen
Erstellen Sie dazu zunächst eine "normale" Reportgenerator-Abfrage, so dass Sie die Empfänger-Adressen in einer Ergebnisliste erhalten. Dabei ist es an dieser Stelle nicht entscheidend, dass alle Felder, auf die der Serienbrief zugreift, in der Liste als Feldwert dargestellt werden. Es ist nur wichtig, dass die notwendigen Datensätze (Adressen) in der Liste repräsentiert sind – ggf. nur durch das Feld Suchbegriff.

2. Feinauswahl der Empfänger
Eine Feinauswahl der Empfänger ist über die Spalte "SerBr." in der Ergebnisliste möglich: Nur solche Datensätze (Zeilen), die hier mit einem Pfeil ("»") markiert sind, werden bei der Erstellung des Serienbriefes berücksichtigt (standardmäßig sind alle gefundenen Datensätze so markiert).
Damit ist möglich, dass Sie mit den normalen Filterbedingungen zunächst eine Vorauswahl treffen und dann bei jeder einzelnen Adresse noch entscheiden können, ob diese tatsächlich verarbeitet werden soll oder nicht. Nach dem Filtervorgang sind zunächst alle Zeilen markiert, d. h. alle würden beim Serienbrief berücksichtigt werden. Sie schalten die Markierung durch Mausklick auf das Markierungssymbol ein und aus.

3. Serienbrief an Word übergeben
Klicken Sie auf den Button Serienbrief, die sich am oberen Fensterrand befindet.
Wählen Sie dann aus der angebotenen Liste den Rohtext aus, der – mit den individuellen Adressdaten versehen – an jeden der Empfänger verschickt werden soll.

Hinweis: Im Lieferumfang ist ein Rohtext Serienbrief-Muster enthalten, aus dem ein von Ihnen gewünschter und sinnvoller Serienbrief abgeleitet werden kann.

Hinweis: In diesen Serienbrief-Rohtexten darf kein Bezug zu einer Akte als Platzhalter enthalten sein, da hier keine Verbindung zu Akten, sondern nur zu Adressen verfügbar ist!

Es öffnet sich daraufhin Word, und es wird ein einziges Dokument erzeugt, in dem die individualisierten Anschreiben direkt hintereinander folgen. Drucken Sie dieses Dokument aus.

Exportdatei erzeugen

Sie können die über den Reportgenerator ausgefilterten Daten in eine Datei schreiben lassen, und diese Datei einem anderen Programm zur Weiterverarbeitung übergeben.

Z. B. können so Buchhaltungsdaten an Excel übergeben werden oder Adressdaten an Word.

1. Erstellen Sie einen Definitionstext (Abfrage) und treffen Sie ggf. eine Feinauswahl, wie oben für den Serienbrief erklärt.

2. Steuerdatei ausgeben

Klicken Sie auf den Button Export am oberen Fensterrand und wählen Sie Speicherpfad aus. Insomacs erzeugt nun eine Datei, die folgendermaßen aufgebaut ist:

  • Als erster Datensatz werden die Spaltenüberschriften ausgegeben (entsprechend dem Standard der Word-Steuerdatei).
  • Als Trennzeichen zwischen Feldern wird eine Tabulator-Schaltung verwendet, als Trennzeichen zwischen Datensätzen eine Zeilenschaltung.

Diese Datei wird unter dem Namen ExportResult.txt in dem definierten Pfad gespeichert. Direkt im Anschluss fragt Insomacs Sie, ob Sie diese Datei in Excel öffnen möchten.

Etiketten erzeugen

Sie können die über den Reportgenerator ausgefilterten Adressen auf Adress-Etiketten ausdrucken lassen. Die Adressen werden dabei pro DIN-A4-Blatt in zwei Spalten mit je fünf Reihen ausgegeben. Dies ergibt pro Adresse eine Fläche von 96 x 50,8 mm und ist z. B. geeignet für Zweckform 4744-Etiketten.

1. Erstellen Sie einen Definitionstext (Abfrage) und treffen Sie ggf. eine Feinauswahl, wie oben für den Serienbrief erklärt.

2. Etiketten erstellen
Klicken Sie auf den Button Etiketten. Sie sehen dann eine Zusammenfassung des Ausdrucks in einem neuen Fenster mit einer Übersicht aller Adressen, die auf Etiketten gedruckt werden.

Das Fenster "Etiketten erstellen"

Sie können eine weitere Adresse hinzufügen, indem Sie auf den Button + klicken. Tragen Sie die Adressdaten dann direkt in der Tabelle ein. Es lässt sich auch eine Adresse aus der Tabelle entfernen: Markieren Sie diese und betätigen Sie den Button X.

3. Kontrollieren Sie zum Schluss die Angaben, legen Sie die Vorlage in den Drucker ein und klicken Sie dann auf den Button Druck.

Übersicht

Abfrage gestalten

Kernstück des Reportgenerators ist der Abfragetext. Mit ihm definieren Sie, welche Datensätze gefunden werden sollen.

Der Abfragetext besteht zwei Teilen:

  • Gestaltungsteil: Welche Felder eines Datensatzes sollen aufgelistet werden, und wie? (Spalten in der Ergebnistabelle)
  • Filterteil: Welche Datensätze (Adressen, Akten) sollen überhaupt aufgelistet werden? Fehlt der Filterteil, werden jeweils alle Datensätze gelistet.
Gestaltungsteil

Dieser Teil beginnt immer mit dem Schlüsselwort Zeige. Danach werden alle Bezeichnungen für die Felder aufgelistet, die in der Ergebnisliste erscheinen sollen. Die einzelnen Bezeichnungen werden mit dem Schlüsselwort und verkettet.

Die dabei erlaubten Bezeichnungen wählen Sie im Drop-down-Menü für Feld aus und werden mit dem Button Einfügen in den Definitionstext eingefügt.

Möchten Sie z. B. eine Adressenliste haben, welche die Felder

  • Vorname
  • Name1
  • Name2
  • Strasse
  • PLZ
  • Ort

enthält, dann müsste der Gestaltungsteil des Definitionstextes lauten:

Zeige Vorname und Name1 und Name2 und Strasse und PLZ und Ort

Zuvor müssen Sie das Drop-down-Menü Datenbank auf "Adressen" gestellt haben. Die Ergebnisliste erhalten Sie über den Button Filtern (s. u.).

Spaltenbreite ändern/ definieren

Für jedes Feld wird in der Ergebnisliste eine Spalte eingerichtet, die eine bestimmte, konstante Breite hat.
Später, wenn die Ergebnisliste aufgebaut ist, ziehen Sie die Spalten mit der Maus schmaler oder breiter, indem Sie die Maus auf den Grenzbereich zwischen den Spaltenüberschriften ziehen und – während die linke Maustaste gehalten wird – die Grenze nach links oder rechts verschieben.
Soll dieselbe Abfrage wieder verwendet werden, ist es ratsam, im Definitionstext die Breite bereits zu definieren. Dann muss die Justierung nicht jedes Mal neu vorgenommen werden, wenn die Auswertung erneut aufgerufen wird.
Dies kann auf einfache Weise dadurch erfolgen, dass hinter die jeweilige Feldbezeichnung, mit einem Komma getrennt, die Anzahl der Zeichen geschrieben wird, der die Spaltenbreite entsprechen soll.

Beispiel:

Zeige Vorname und Name1 und Name2 und Strasse und PLZ,6 und Ort
Hier wird die – ansonsten übertriebene – Breite der Spalte für die Postleitzahl auf 6 Zeichen gestellt und damit die Spalte schmaler gemacht.

Ausrichtung der Spalten

Eine weitere Gestaltungsmöglichkeit besteht darin, die Ausrichtung der Spalteninhalte zu definieren. Die Standardeinstellung ist linksbündig.

Handelt es sich beim Spalteninhalt um Zahlenbeträge, dann ist eine rechtsbündige Ausrichtung übersichtlicher. Dies wird dadurch erreicht, dass an die Feldbezeichnung, durch ein Komma getrennt, der Buchstabe "R" angehängt wird.

Beispiel (für den Datenbank "Akten (InsoMACS)"):

Zeige Regnr, 10 Und Sache, 59 Und EroeffDatum,15,r>
Bei dieser Abfrage über die Akten wird von allen Akten mit einem Fremdgeldbestand neben der Registernummer und dem Kurzrubrum (Sache) der Saldo Fremdgeld rechtsbündig und mit 15-stelliger Breite dargestellt.

Filterteil

Der Filterteil beginnt stets mit dem Schlüsselwort wobei. Während der Gestaltungsteil immer erforderlich ist, muss der Filterteil nicht notwendigerweise Bestandteil des Definitionstextes sein – es werden dann eben alle Datensätze des entsprechenden Datenbereiches in die Ergebnisliste aufgenommen.

Im Filterteil wird eine Einschränkung der zu berücksichtigenden Datensätze dadurch vorgenommen, dass Vergleichsoperationen definiert werden.

Jeder Datensatz des Datenbereiches wird daraufhin untersucht, ob er den Filterkriterien entspricht, er also in die Ergebnisliste aufgenommen wird oder nicht.

Verglichen wird stets ein Feldinhalt mit einem Referenzwert, wobei durch den Operator dazwischen die Art des Vergleichs festgelegt wird.

Beispiel:

GlbAusschuss=J
Hierbei ist "GlbAusschuss" der Bezeichner für die Check-Box "Gläubiger-Ausschuss". Dieser Bezeichner liefert ein "J" (ja), wenn die Check-Box markiert ist und ein "N" (nein), wenn dies nicht der Fall ist. Es werden also nur die Akten berücksichtigt, bei denen es einen Gläubigerausschuss gibt.

Es ist möglich, mehrere Filterbedingungen zu kombinieren. Nur solche Datensätze, die allen Filterbedingungen entsprechen, erscheinen dann in der Ergebnisliste.

Mögliche Filterbedingungen / Vergleichsoperatoren sind:

=

Einfacher Vergleich auf Übereinstimmung.
Bei Textfeldern (z. B. "Name1", "Vorname") wird nur überprüft, ob der Referenzwert am Anfang des Feldinhalts vorkommt.

Beispiel: ... wobei Name1 = Müller
Hier werden neben "Müller" auch Datensätze akzeptiert, die mit "Müller" beginnen, also z. B. auch "Müllermann" und "Müllermeier".

==

Erweiterter Vergleich auf Übereinstimmung.
Der Feldinhalt des Datensatzes muss exakt dem Referenzwert entsprechen.

Beispiel: ... wobei Name1 == Müller
Hier werden nur alle Adressen mit Name1 "Müller" akzeptiert. Die Datensätze mit "Müllermann", "Müllermeier" werden damit nicht gefunden.

>

Vergleich auf "größer als".

Beispiel: ... wobei PLZ > 8999
Sucht alle Adressen mit Postleitzahlen von 9000 und höher.

<

Vergleich auf "kleiner als".

Beispiel: ... wobei PLZ < 1000
sucht alle Adressen mit Postleitzahlen, die mit 0 beginnen.

enthalten

Durchsucht werden alle Adressen bzw. Akten nach beliebigen Wortelementen.
Dabei ist es egal, in welchem Feld (z. B. "Sache", "Notiz", "Aktenzeichen" usw.) und an welcher Stelle das Wort vorkommt.

Beispiel 1: Zeige RegNr und Sache wobei enthalten "Grundstück"
sucht alle Akten (bzw. Adressen), in denen an irgendeiner Stelle das Wort/ der Wortteil "Grundstück" steht. Der Filtervorgang könnte, abhängig vom Umfang Ihres Adress- bzw. Aktenbestandes, etwas länger dauern.

Beispiel 2: Zeige Suchbegriff Wobei Familienstand=undefiniert
zeigt alle Adressen an, in denen auf der Registerkarte "Sonstiges" kein Familienstand eingetragen ist. Mögliche Werte für Feld Familienstand: ledig, verheiratet, geschieden, verwitwet, undefiniert.

Achtung: Nach dem = darf bei dieser Abfrage kein Leerzeichen vorhanden sein!

Joker

In einigen Fällen ist ein Vergleich nur bestimmter Teile einer Zeichenfolge sinnvoll. Dasjenige Zeichen, das beim Vergleich nicht ausgewertet werden soll, wird durch ein ? ersetzt.

Beispiel:
Angenommen, Sie haben Ihre Adressen mit einem Eintrag in der Zeile Code wie folgt kodiert:
1. Stelle: "S" für Schuldner, "G" für Gläubiger, "D" für Drittbeteiligte usw.
2. Stelle: bei Schuldnern "V" für Verbraucherinsolvenz, "U" für Unternehmensinsolvenz
3. Stelle: "Qualität" des Verfahrens, z. B. "0" für wenig wichtige ... bis "9" wichtige.
Setzen Sie den Datenbereich auf "Adressen" und geben Sie als Text ein:
Zeige Vorname und Name1 und Name2 wobei Code = S?9
Diese Beispiel-Abfrage filtert dann die Adressen aller Schuldner heraus, unabhängig von der Frage, ob es sich um Verbraucher- oder Unternehmensinsolvenz handelt.

Variable Datumsabfragen

In einigen Listen ist als Filterbedingung ein Datumsvergleich sinnvoll, z. B. eine Liste mit allen Mandanten, die bald Geburtstag haben, eine Liste mit allen Akten, die in einem bestimmten Zeitraum angelegt wurden usw. Damit die entsprechenden Vergleichswerte nicht bei jeder Verwendung der Abfrage neu angepasst werden müssen, sind eine Reihe von variablen Vergleichswerten und zwei weitere Vergleichsoperatoren vorhanden:

Vergleichsoperatoren

  • InMonat prüft, ob ein Datum in einem bestimmten Kalendermonat liegt. Mit dem Befehl "inmonat [Zahl zwischen 1 und 12 ergänzen]" grenzen Sie Ihre Datenabfrage auf einen bestimmten Monat (Jahr ist bedeutungslos) ein.

    Beispiele (alle im Datenbereich "Akten"):

    Zeige RegNr und Sache und AufhebungVerfahren wobei AufhebungVerfahren inmonat 12

    Der Reportgenerator zieht alle Akten, deren Aufhebungsdatum im Dezember liegt (Tag und Jahr sind bedeutungslos).

  • InJahr prüft, ob ein Datum in einem bestimmten Jahr liegt.

    Beispiel:

    Mit einer Auswertung aller Adressen "Geburtsdatum injahr 1960" finden Sie z. B. alle Personen in der Datenbank, die im Jahr 1960 geboren worden sind.

Vergleichswerte

  • @heute liefert als Ergebnis das aktuelle Tagesdatum (Systemdatum des PC). Ansonsten müsste bei jedem Auswertungslauf das Tagesdatum neu eingegeben/ aktualisiert werden.

    Beispiel:

    Zeige Vorname und Name wobei Code = M und Geburtstag=@heute<br>
    Diese Abfrage liefert die Liste aller Mandanten, die heute Geburtstag haben.

  • @heute+14 (wobei "14" selbstverständlich durch jede andere Zahl ersetzt werden kann) liefert einen entsprechenden Tag in der Zukunft.Wichtig ist, dass das "+"-Zeichen ohne Abstand eingefügt ist!

  • @lfdMonat: liefert den laufenden Monat (laut Systemdatum des PC) als Vergleichswert in Verbindung mit dem Vergleichsoperator inMonat. Damit Sie nicht jeden Monat die Beispiel-Abfrage anpassen müssen, fragen Sie den aktuellen Monat ab.

    Beispiel:
    Zeige RegNr und Sache und AufhebungVerfahren wobei AufhebungVerfahren inmonat @LFDMonat

    Es werden alle Akten angezeigt, die in einem beliebigen Jahr – aber im selben Monat wie dem aktuell laufenden – aufgehoben worden sind.

  • @Januar bis @Dezember liefert einen konkreten Kalendermonat (für ein Beispiel vgl. oben inMonat)

  • @lfdJahr liefert das laufende Kalenderjahr (laut Systemdatum des PC) als Vergleichswert in Verbindung mit dem Vergleichsoperator inJahr(für ein Beispiel vgl. oben inJahr)

Volltextsuche im Aktenrubrum

Mit "FELDENTHAELT" kann nach Textinhalten gefiltert werden.

Beispiel:

Sie haben folgende Abfrage laufen lassen:
Zeige RegNr Und Sache Und SBIntern Und GerichtAZ Und VerfahrensStand Wobei GerichtAZ Und VerfahrensStand==Hauptverfahren

Sie wollen die Treffer weiter einschränken und dazu z. B. die Gerichtsaktenzeichen herausfiltern, die "IN" als Buchstabenfolge enthalten. Dann bedienen Sie sich des händisch einzugebenden Befehls "FELDENTHAELT" und der Text- bzw. Buchstabenfolge, die innerhalb der angesprochenen Feldes im Aktenrubrum gefunden werden soll:
Zeige RegNr Und Sache Und SBIntern Und GerichtAZ Und VerfahrensStand Wobei GerichtAZ FELDENTHAELT IN Und VerfahrensStand==Hauptverfahren

Verknüpfung mit