FRMQUERYBUILDER

Aus AvERPedia
Zur Navigation springen Zur Suche springen

Querybuilder - Konfiguration

In dieser Maske hat man die Möglichkeit, eine Query zu erzeugen. Eine Query entspricht einem SQL-Befehlssatz, der bestimmte Daten zu definierten Bedingungen aus der Datenbank zurückliefert.


FRMQUERYBUILDER.jpg


Hauptbereich

Über den Querybuilder können solche SQL-Abfragen erstellt werden, um z.B. Statistiken erzeugen zu können, ohne SQL - Programmierkenntnisse zu besitzen.

Auf der ersten Seite des Querybuilder (Definierte Abfragen) können neue Abfragen angelegt werden. Das grüne Plus ( ) legt neue Datensätze an. Mit dem roten Minus (-) können Querys aus der Liste wieder gelöscht, oder mit dem blauen Dreieck � verändert werden. Mit kann eine komplette Query kopiert werden, z.B. wenn man zwei fast identische Querys benötigt. Unter Gespeicherte Abfragen stehen evtl. bereits vorhandene Querys. Klickt man auf das grüne Plus, unter Gespeicherte Abfragen, verändert sich die Spalte Gespeicherte Abfragen und es wird eine neue Query eingefügt. In die neu entstandenen Felder können nun beliebige Werte eingetragen werden, diese sollten jedoch der besseren Orientierung wegen aussagekräftige und vor allem eindeutige Bezeichnungen tragen. Anhand der hier eingesetzten Werte wird die Query später identifiziert, d.h. sie erscheint im Menüpunkt Query Ausführen mit diesen Daten.

Folgende Bestandteile sind möglich:

  • ID ist ein fortlaufende Nummer, die zur besseren Orientierung vom System vergeben wird
  • Die Spalte Maskenkey entspricht dem Namen der Query.
  • In Bezeichnung kann eine beliebige Beschreibung der Query eingetragen werden
  • Userqbkat lässt eine benutzerdefinierte Kategorie zur besseren Orientierung zu, dies wird im dritten Menüpunkt Statistikgenerator Kategorie festgelegt
  • Userqbkat_Bezeich ist eine dazugehörende Bezeichnung, die an derselben Stelle festgelegt wird
  • Systemvorgabe leer
  • Ersteller entspricht dem User, der die Query angelegt hat
  • Sqltext wird mit (sqltext) gefüllt sobald ein SQL hinterlegt ist
  • Benutzer wird automatisch mit dem jeweiligen User belegt
  • Gespeichert enthält Datum und Uhrzeit der letzten Änderung
  • Userqbkat_id ist die entsprechende ID der Userqbkat (Statistikgenerator Kategorien)

Werden in ein Userqbkat-Feld Daten eingegeben, so füllen sich die anderen mit den zugehörigen Daten dieses Datensatzes, wie in Statistikgenerator Kategorien angelegt. Unter Rechte kann man festlegen wer diese Query benutzen darf. Im Nebenstehenden Auswahlfeld können durch einen Doppelklick Benutzer, bzw. Gruppen hinzugefügt werden. Diese werden dann unter Rechte angezeigt, d.h. sie wurden erfolgreich hinzugefügt.

Unter der Registerkarte Ausgabe festlegen wird angegeben, welche Felder die Query zurückliefern soll. Dazu wählt man in der linken Seitenhälfte Tabellen, aus denen man sich Daten anzeigen lassen möchte. Diese müssen einzeln markiert werden. Daraufhin erscheinen auf der rechten Seitenhälfte die Spalten der selektierten Tabelle. Durch einen Doppelklick auf die gewünschte Spalte wird diese dem unteren Teil der Seite, der unsere Auswahl repräsentiert, hinzugefügt. Wesentlich komfortabler lassen sich Tabellen oder Spalten durch die Felder Schnellsuche unterhalb der jeweiligen Listen finden. Es können auch Felder aus verschiedenen Tabellen gewählt werden. Auch müssen nicht alle Felder die selektiert wurden in der fertigen Query angezeigt werden, dies ist durch ein Entfernen des Häkchens in der Spalte Anzeigen möglich.

Die Spalten der unteren Seitenhälfte beinhalten folgende Funktionen:

  • Org. Tabellenname: gibt den Namen der Tabelle wie oben an (Systemname)
  • Tabellenname: gibt den Namen wie oben unter Name an (Tabellenbezeichnung)
  • TabAlias: gibt einen Buchstaben an, Felder derselben Tabelle tragen gleiche Buchstaben. Dies ist für die Relationen der Queryfelder wichtig, um die Herkunft des Feldes zu bestimmen
  • Org.Feldname: gibt den Namen des Feldes wie oben an (Systemname)
  • Feldname: gibt den Namen wie oben unter Name an (Feldbezeichnung)
  • Formel: hier läßt sich eine individuelle Formel hinterlegen, falls Werte der Ausgabe manipuliert werden müssen, z.B. Stückzahlen in Tausend
  • FeldAlias: Unter diesem Namen wird das Feld in der Ausgabe angezeigt
  • Anzeigen: Gewählte Felder müssen nicht zwangsläufig ausgegeben werden, dies läßt sich hiermit deaktivieren
  • RF(Reihenfolge): hier kann durch Nummerierung die Reihenfolge angegeben werden, in der die selektierten Felder ausgegeben werden sollen
  • Asc_desc: steht für ascending(aufsteigend), descending(absteigend) und gibt die Sortierreihenfolge an
  • RF bei Sort.: gibt die Reihenfolge an, in der Sortiert werden soll
  • Funktion: klickt man in dieses Feld sieht man eine Auswahl von vordefinierten Funktionen, die verwendet werden können.
    • Count: Zählt die Anzahl der Datensätze in dieser Spalte
    • Sum: Summiert die enthaltenen Datensätze der Spalte
    • Max: Gibt den Maximalwert dieser Spalte zurück
    • Min: Liefert den Minimalwert der Spalte zurück
    • Avg: Berechnet den Durchschnittswert der Werte in der Spalte
  • Suchbedingung: hier läßt sich eine Suchbedingung angeben, z.B. alles < 10
  • GroupBed.: selbiges als Groupbedingung, d.h. die Werte werden gruppiert

Unter der Registerkarte Tabellenverbindung wird festgelegt, welche Tabellen miteinander und durch welche Felder verbunden sind. Im Prinzip wird eine logische Verknüpfung der Tabellen erstellt, da es nicht sinnvoll wäre einfach die Daten zusammenhangslos aufzulisten. So muss z.B. ein Artikel seinem Lager zugeordnet sein und nicht wahllos irgendwelche Lager dazu ausgegeben werden.

Als erstes legt man fest welche Tabelle die Haupttabelle ist (eine Haupttabelle ist eine Tabelle, die Spalten enthält, auf Grund derer man Verknüpfungen zu anderen Tabellen herstellen kann. Im einfachsten Falle ID-Felder, die den Namen anderer Tabellen tragen). Dies geschieht in der rechten Hälfte(Zu Tabelle). Man markiert die gewünschte Tabelle und betätigt den Button Ausgewählte Tabelle ist Haupttabelle. Daraufhin wird diese aus der rechten Liste entfernt und in der Seitenmitte eingetragen. Nun sucht man nach der Verknüpfung der Haupttabelle mit den restlichen Tabellen, sofern vorhanden. Man wählt die Art der Verknüpfung, indem man oben links Normal oder Joins wählt. Der Unterschied hierbei ist folgender. Bei Normal werden diejenigen Datensätze angezeigt die auch eine Verknüpfung besitzen, d.h. die sowohl in der Haupttabelle, als auch in der Zusatztabelle Daten zu dem jeweiligen Datensatz haben. Bei Joins werden die Daten der Zusatztabelle praktisch nur angehängt, d.h. alle Datensätze der Haupttabelle werden angezeigt plus die Datensätze der Zusatztabelle, die die Verknüpfung mitbringt(􀃆 im Allgemeinen umfangreicher).

Dies kann auf drei verschiedene Möglichkeiten erfolgen, welche durch die drei Buttons darüber repräsentiert werden. Zu beachten ist, dass in der linken Hälfte (Von Tabelle) die Haupttabelle gewählt ist.

  • Verbindungsfelder suchen: Mit dieser Schaltfläche sucht das System automatisch ob es eine günstige Verbindung der Haupttabelle zu den übrigen findet. Es ist jedoch nicht garantiert, dass dieser Vorgang erfolgreich ist, da manche Verknüpfungen auf Grund von komplexer Namensgebung, oder besonderer Bedingungen nur schwer zu erkennen sind
  • Alle Möglichkeiten anzeigen(nur erfahrene Benutzer): Diese Option erstellt ein Liste aller möglichen Verbindungen, die das System erkennt. Dies sollte die sicherste Wahl darstellen, da man einen Überblick über alle Möglichkeiten bekommt und die optimale Einstellung selbst auswählen kann. Die gewünschte Verknüpfung muss markiert werden.
  • Verbindung eintragen: Mit dem letzten Button wird die gewählte Verknüpfung, egal ob vom ersten oder zweiten Button erstellt, für die Haupttabelle eingetragen.

Im oberen mittigen Feld erscheinen die jeweils zur Auswahl stehenden Verknüpfungen. In der unteren Seitenhälfte wird weiterhin die Spaltenauswahl, wie auf der vorigen Seite angezeigt.

Auf der Registerkarte SQL erzeugen / testen kann man sich schließlich den, durch die auf den vorangegangenen Seiten erzeugten, SQL-Befehl anzeigen lassen und die Ergebnismenge begutachten, welche die dadurch erzeugte Query liefert. Sollte das gewünschte Ergebnis geliefert werden, kann man durch einen Klick auf den Button Schließen beenden. Ansonsten können weitere Anpassungen auf den vorhergehenden Seiten vorgenommen werden, bis man zu den gewünschten Rückgabewerten kommt.

Durch einen Klick auf den Button SQL-Erzeugen wird der nach den Angaben, der in den vorigen Seiten generierte, SQL-Befehl im Feld darüber angezeigt. Dieser kann auch zu Testzwecken oder zur weiteren Verwendung aus dem Feld herauskopiert werden und z.B. unter dem Menüpunkt Statistiken in das SQL-Anweisung Feld eingefügt werden. Klickt man auf Ausführen / Testen wird in dem darüber liegenden Feld die Ergebnismenge angezeigt, die der SQL zurückliefert. Dies ist die Wertemenge die in der fertigen Query steht. Im unteren Seitenteil werden wieder die Spalten wie gehabt angezeigt.


Siehe auch

Hauptmenü