Toolmaker Produkt-Dokumentation

Das XSQL-Kontextmenü in Excel

Inhaltsübersicht

xsql erweitert das Kontextmenü in Excel um zwei Punkte. Wenn Sie irgendwo in einer Tabelle einen Rechtsklick ausführen, dann erscheinen am Ende des Kontextmenüs diese beiden Einträge:

  • XSQL Abfrage bearbeiten
  • XSQL Abfrage ausführen

Mit XSQL Abfrage bearbeiten können Sie eine SQL-Anweisung eingeben und ausführen lassen.

Mit XSQL Abfrage ausführen können Sie die aktuelle SQL-Anweisung ausführen lassen. Die Auswahl wird erst aktiv, wenn Sie eine SQL-Anweisung eingegeben haben.


Menüpunkt: XSQL-Abfrage bearbeiten

Mit diesem Befehl werden neue Abfragen definiert bzw. bestehende geändert. Pro Tabellenblatt kann nur eine (1) Abfrage definiert werden. Die Abfragedefinition ist in einem speziellen Bereich der XLSX-Datei gespeichert, der dem C++ API zur Verfügung steht und vom Benutzer nur über das Dialogfelds geändert werden kann.

Führen Sie irgendwo im Arbeitsblatt einen rechten Mausklick aus und wählen Sie im Kontextmenü XSQL Abfrage bearbeiten

Auswahlfelder

Name der DSN Datenquelle (drop-down-Liste oben links)  - In diesem Dropdown-Feld werden sämtliche vorhandene ODBC-Verbindungen aufgeführt. Die IBM i Access Verbindung wird standardmäßig ausgewählt.

SQL-Abfrage (schwarzes Textfeld) - Text der auszuführenden SQL Anweisung (aus Sicherheitsgründen nur SELECT Anweisungen).

Blättertasten der History - In der rechten unteren Ecke des SQL-Textfeldes befinden sich Blättertasten, mit denen Sie durch früher eingegeben SQL-Anweisungen blättern können, um diese ggf. erneut auszuführen.

Diese Anweisungen werden in der Datei XSQLHST.TXT sitzungsübergreifend gespeichert.

Ausgabebereich (Adresse) - Um auszuwählen, an welche Position [XSQL] die Ausgabedaten stellen soll, gehen Sie wie folgt vor:

- Stellen Sie den Zellzeiger an die gewünschte Stelle im Arbeitsblatt (Sie brauchen das Dialogfeld dazu nicht zu verlassen)
"- Klicken Sie im Dialogfeld die Schaltfläche ""Adresse"". Die Adresse der linken oberen Zelle wird eingeblendet."

Bitte beachten Sie, dass [XSQL] ohne Warnung sämtliche Zellen des Ausgabebereichs überschreibt.

Max. Anzahl Zeilen - Mit diesem Bedienfeld können Sie die Anzahl der Zeilen, die xsql maximal vom Server übertragen soll, beschränken.

"Bei Auswahl von ""dynamisch"" (am oberen Ende der Liste) werden - soweit in Excel möglich - alle zur Verfügung" stehenden Sätze abgerufen. Die Beschränkung der Satzanzahl ist sinnvoll, da Sie hierdurch - insbesondere bei komplexen Abfragen gegen große Tabellen - die Responsezeit erheblich verkürzen können.

Um alle Sätze zu bekommen klicken Sie auf den aufwärts zeigenden Pfeil und halten die Maustaste gedrückt, bis das Wort "alle" erscheint.


Formatieren - Bei der ersten Abfrage werden im Ausgabebereich folgende Formatierungen vorgenommen:

"- Überschriftszeile (sofern ausgewählt) in fetter Schrift, grau unterlegt;"
"- numerische Felder mit vordefinierter Anzahl Dezimalstellen;"
- Datums und Zeitfelder im korrekten Format.

Sie können die Formatierung der Spalten oder Zeilen individuell anpassen, z.B. Schriftart, -größe, -farbe, Dezimalstellen, usw. Damit diese individuellen Formatierungen erhalten bleiben, müssen Sie vor dem Aktualisieren (Ausführen) deaktivieren.

Wenn Formatieren aktiviert ist, werden die individuellen Anpassungen, z.B. Schriftart, -größe, -farbe, Dezimalstellen, usw. beim erneuten Ausführen gelöscht.


Autofilter setzen - Durch Aktivieren dieser Option wird am Ende der Abfrage der Excel Autofilter aktiviert. Das erzeugt für jedes Feld einen drop-down-Button über den man die Sätze sortieren und selektieren kann:

Spaltenbreite anpassen - Durch Aktivieren dieser Option werden am Ende die Breite aller Spalten des Ausgabebereichs automatisch angepasst.

Spaltenüberschriften - Wählen Sie aus, ob Sie Feldnamen, Label(Feldtexte) oder keine Spaltenüberschriften möchten.

Buttons - Ausführen und Übernehmen

Ausführen - Durch Klicken diese Schaltfläche wird die Abfrage ausgeführt.

  • Die geholten Daten werden beginnend an der als Adresse definierten Zelle eingetragen
  • Die Inhalte in den Zellen werden überschrieben

Übernehmen - Durch Klicken diese Schaltfläche wird die Abfragedefinition im Tabellenblatt gespeichert und mit diesem gesichert.

"Wenn Sie den SQL-Text löschen und ""Übernehmen"" klicken, wird die Abfragedefinition komplett gelöscht."

Hinweise zum SQL-Befehl

  • es ist kein Semikolon (;) am Ende des Befehls erforderlich
  • Kommentare können nur am Ende eingefügt werden. Mit der üblichen SQL-Syntax mit 2 Gedankenstrichen (- -). Ein Kommentar vor dem Befehl oder innerhalb des Befehls wird nicht akzeptiert.

Erweiterungen der SQL-Syntax

Auswahl von Teildateien:

Um bei einer Datei mit mehreren Teildateien eine bestimmte Teildatei auszuwählen, geben Sie den Dateinamen wie folgt ein:

Bibliothek/Datei[Teildatei], d. h. der Name der Teildatei muss unmittelbar im Anschluss an den Dateinamen in eckigen Klammern stehen, z. B.:

SELECT * FROM PRODLIB/STATISTIK[JAN2017]

Arbeiten mit Parametermarkern

Parametermarker sind Platzhalter für Variablen, die es ermöglichen, die gleiche SELECT-Anweisung mit unterschiedlichen Auswahlkriterien aufzurufen.

Beispiel für eine SELECT-Anweisung mit Parametermarker:

SELECT * FROM AVLIB/AUFTRAEGE WHERE KUNDENNR = ?a1

In diesem Fall werden Aufträge ausgewählt, Kundennummer dem Wert in Zelle A1 des Tabellenblatts gleicht.

Es können auf einfache Weise auch Listen gebildet werden:

SELECT * FROM AVLIB/AUFTRAEGE WHERE AUFTRAGSART IN (?a1:h1)

In diesem Beispiel werden alle Aufträge ausgewält, bei denen die Auftragsart einem der Einträge im Bereich a1:h1 entspricht.

Bitte beachten Sie, dass Sie - um Eingaben im Tabellenblatt vorzunehmen - das [XSQL] Dialogfeld nicht verlassen müssen.

Menüpunkt: XSQL-Abfrage ausführen / Doppelklick in eine Zelle

Es erscheint die Abfrage: "Datenübertragung starten"

Wenn Sie die Frage mit "Ja" beantworten, dann wird die Abfrage so ausgeführt, wie sie definiert ist, inklusive der Position.