Der Sucheditor ist ein vielseitiger Editor zum Erzeugen von einfachen oder verknüpften Suchbedingungen. Sie können verknüpfte Suchläufe erstellen, die mit den Operatoren Und, Oder bzw. Außer verbunden sind. Sie können z.B. nach Mitarbeitern suchen, die über 60 Jahre alt sind oder ein monatliches Einkommen über 4.000 € haben.
Sie können die aktuelle Auswahl an Datensätzen durchsuchen. Die anderen Suchmethoden durchsuchen stets die gesamte Tabelle. Sie können Suchbedingungen abspeichern und sie bei Bedarf wieder laden, um den Suchlauf zu wiederholen. Der Sucheditor merkt sich die zuletzt verwendeten Suchbedingungen. So können Sie diese entweder ändern oder löschen und neu eingeben. Sie können in Datenfeldern der aktuellen Tabelle und der verknüpften Tabellen suchen. Sie können auch komplexe Suchläufe mit Formeln ausführen (siehe Suche nach Formel).
Das Editorfenster enthält eine Menüleiste, einen Bereich zum Erstellen der Suche und das DropDown-Menü Letzte Suchen (wenn während der Sitzung bereits eine Suche durchgeführt wurde).
Das Menü Optionen enthält Befehle zum Verwalten des Suchcodes:
Laden... und Sichern...: Diese Menübefehle verwalten das Laden und Sichern der Suchdateien auf der Festplatte. Führen Sie dieselbe Suche öfters durch, macht es Sinn, diese abzuspeichern. Sie müssen Ihre Suche nur einmal einrichten und können sie dann später wieder in den Sucheditor laden. Klicken Sie auf Suchen, um sie erneut auszuführen. Um eine Suche auf der Festplatte zu sichern, legen Sie im Sucheditor die Suchkriterien fest und klicken auf die Schaltfläche Sichern... . 4D zeigt den Standard Sichern-Dialog an, wo Sie den Dateinamen und den Speicherort auf der Festplatte festlegen. Die Endung für 4D Suchen ist ".4df". Alle Parameter werden gesichert, d.h. Suchzeile(n), Suchaktion und Suche nach Formel. Um eine gesicherte Suche zu laden, klicken Sie im Sucheditor einfach auf Laden... und wählen die Suchdatei (Endung ".4df"). 4D lädt Ihre Suche in den Sucheditor. Sie überschreibt alle zuvor im Sucheditor angezeigten Suchen.
Formel in Zwischenablage kopieren setzt den Code der Formel aus dem Bearbeitungsbereich in die Zwischenablage.
Rücksetzen löscht alle Zeilen der Suche im Editor. Die Operation lässt sich nicht rückgängig machen.
Dieses Menü definiert die auszuführende Suchaktion, sie basiert auf der aktuellen Auswahl der vorhandenen Datensätze.
Erzeuge neue Auswahl (Standardaktion): 4D sucht in allen Datensätzen der Tabellen und ersetzt die ursprüngliche aktuelle Auswahl, um die gefundenen Datensätze anzuzeigen.
Suche in Auswahl: 4D sucht nur in den Datensätzen der ursprünglichen aktuellen Auswahl und ersetzt dann diese Auswahl mit den gefundenen Datensätzen.
Füge zur Auswahl hinzu: 4D sucht in allen Datensätzen der Tabellen und fügt die gefundenen Datensätze zur ursprünglichen aktuellen Auswahl hinzu. Gefundene Datensätze, die bereits Teil der aktuellen Auswahl sind, werden angezeigt, aber nicht dupliziert.
Entferne von Auswahl: 4D sucht in allen Datensätzen der Tabellen und entfernt alle gefundenen Datensätze aus der ursprünglichen aktuellen Auswahl.
Dieses Menü erscheint, wenn bereits eine Suche durchgeführt wurde. Es zeigt die aktuellsten Suchläufe während der Sitzung, so dass Benutzer ihre gängigsten Suchen leicht wiederholen können. Die 10 letzten Suchen werden beibehalten.
Beachten Sie, dass Auswahlaktionen, die den Suchen zugeordnet sind, wie Suche in Auswahl, Füge zu Auswahl hinzu, etc. nicht gesichert werden.
Wird eine Suche aus diesem Menü ausgewählt, erscheint die definierte Suche im Suchbereich. Sie können sie dann direkt ausführen oder bei Bedarf verändern.
Um eine Standardsuche einzurichten, erstellen Sie eine Suchzeile vom Typ "Feld Operator Wert":
Um das Feld zu definieren, können Sie über den Pfeil rechts neben dem Eingabebereich die hierarchische Liste aufrufen:
Sie können auch in den Eingabebereich klicken und den/die ersten Buchstaben eines Tabellennamens eintippen (ohne "[" ): Über das automatische Vervollständigen erscheinen dann passende Vorschläge:
Haben Sie die Tabelle gewählt, drücken Sie die rechte Pfeiltaste , um den Vorschlag zu bestätigen und auf die Liste der Felder zuzugreifen. Sie können wieder den/die ersten Buchstaben des Feldnamens eintippen oder über die Pfeiltasten durch die Felder der Tabelle scrollen:
Diese Liste zeigt alle Tabellen und Felder der Anwendung. Wurde über die Befehle SET TABLE TITLES und [#cmd id="602"/] eine virtuelle Struktur erstellt, wird sie berücksichtigt.
Wählen Sie einen Vergleichsoperator aus dem mittleren Menü. Die Liste der Operatoren ist je nach Art des gewählten Feldes anders:
Der Sucheditor bietet zusätzlich zu den standardmäßigen Vergleichsoperatoren erweiterte Operatoren und vordefinierte Wertetypen, damit Sie rasch alle gängigen Suchen durchführen können (siehe [#title id="1105" anchor="1127747"/]).
Typen Sie den Wert, nach dem Sie suchen wollen. In einem Feld vom Typ Text oder Alpha können Sie für eine Suche "Beginnt mit" am Ende des Wertes das Joker-Zeichen (@) setzen. Ist dem gewählten Feld eine Auswahlliste zugeordnet, zeigt 4D die Liste, wo Sie einen Wert auswählen können. Ist das gewählte Feld vom Typ Boolean, zeigt 4D einen Satz Optionsfelder.
Um eine Suche mit mehreren Suchkriterien durchzuführen, klicken Sie auf das Icon , um weitere Suchzeilen hinzuzufügen. 4D dupliziert den Inhalt der Zeile so oft wie erforderlich. Für eine Suche nach Formel klicken Sie unter Windows mit gedrückter Alt-Taste, auf Mac OS mit gedrückter Wahltaste am Ende der Zeile auf das Icon . Weitere Informationen dazu finden Sie im Abschnitt Suche nach Formel.
Setzen Sie den passenden Verbindungsoperator (Und, Oder, Außer). 4D setzt standardmäßig den Operator Und neben die hinzugefügte Zeile.
Wiederholen Sie Schritt 1 bis 3, um neue Suchkriterien zu definieren. Bei einer zusammengesetzten Suche bewertet 4D die einzelnen Suchen in der Reihenfolge, wie sie im Sucheditor erscheinen, also z.B. von oben nach unten. Die einzelnen Operatoren sind gleichwertig, d.h. Und ist nicht vorrangig vor Oder. Beachten Sie, dass sich die Reihenfolge beim Zusammensetzen mehrerer einfacher Suchen auf das Suchergebnis auswirkt. Beim Erstellen einer zusammengesetzten Suche können Sie bestehende Teile der Suche verändern. Klicken Sie dazu in die entsprechende Suchzeile und wählen ein anderes Feld, einen anderen Operator oder tippen Sie einen neuen Wert ein. Sie können eine einfache Suche entfernen. Klicken Sie dazu am Ende der Zeile auf das Icon . Beachten Sie, dass Sie das Löschen von Zeilen nicht rückgängig machen können.
Wählen Sie das Ziel der Suche über das Menü Auswahlaktionen: Erzeuge neue Auswahl, Suche in Auswahl, Füge zur Auswahlhinzu, Entferne von Auswahl(siehe vorigen Abschnitt).
(Optional) Um die Suche auf der Festplatte zu sichern, wählen Sie im Menü Optionen den Eintrag Sichern... .
Klicken Sie auf die Schaltfläche Suchen, um die Suche zu starten.
Mit einem Suchkriterium teilen Sie 4D mit, wie es den angegebenen Wert mit dem Inhalt der Datenbank vergleichen soll. Beispielsweise verwendet die Suchbedingung „Nachname ist gleich Schmidt“ den Vergleichsoperator „ist gleich“. Es teilt 4D mit, dass es die Werte des Datenfeldes Name mit der Zeichenkette „Schmidt“ vergleichen soll.
Vergleiche, die alphanumerische Werte betreffen, ignorieren die Groß- und Kleinschreibung. Ein Suchlauf nach dem Nachnamen „Schmidt“ wird auch Datensätze finden, die „schmidt“, „SCHMIDT“ oder „scHMidT“ enthalten.
Suchläufe mit den Operatoren Enthält und Enthält nicht sind stets sequentiell. Der Operator beinhaltet Schlüsselwort ist nur für Datenfelder vom Typ Alpha oder Text verfügbar.
Weitere Informationen dazu finden Sie im Handbuch 4D Programmiersprache im Abschnitt Vergleichsoperatoren.
Je nach Feldtyp sind bestimmte Operatoren verfügbar:
Operator
Alp/Txt
Datum
Zeit
Bool
Num
Bild
Beschreibung
is leer
x
x
Feld enthält keine Daten
ist nicht leer
x
x
Feld enthält Daten.
ist gleich
x
Standardmäßige Vergleichsoperatoren für Zahlen
ist größer als oder gleich
x
ist größer als
x
ist kleiner als oder gleich
x
ist kleiner als
x
ist unterschiedlich von
x
ist falsch
x
Standardmäßige Vergleichsoperatoren für Boolean
ist wahr
x
das ist
x
x
x
Feld enthält genau den eingegebenen Wert
ist nicht
x
x
x
Feld ist unterschiedlich zum eingegebenen Wert
beginnt mit
x
x
x
eldwert ist größer als oder gleich dem eingegebenen Wert (*).
ist nach
x
x
x
Feldwert ist größer als der eingegebene Wert (*).
ist bis zu
x
x
x
Feldwert ist kleiner als oder gleich dem eingegebenen Wert (*).
ist vor
x
x
x
Feldwert ist kleiner als der eingegebene Wert (*).
ist zwischen
x
Das erste Datum muss vor dem zweiten liegen. Die Suche beinhaltet die Felder dazwischen und die eingegebenen Datumswerte (inklusive)
ist vorher oder danach
x
Das erste Datum muss vor dem zweiten liegen. Die Suche beinhaltet nicht die Felder mit den eingegebenen Datumswerten (exklusive).
ist heute
x
Aktuelles Datum wird angezeigt
ist gestern
x
Datum des vorigen Tages wird angezeigt.
ist in aktueller/aktuellem
x
Mögliche Werte: - Woche (So-Sa) - Woche (Mo-So) - Woche (Mo-Fr) - Monat - Quartal - Jahr. Diese Werte werden ausgehend vom aktuellen Datum berechnet.
ist in den letzten
x
ist in den nächsten
x
ist in den letzten
x
Mögliche Werte: - Stunden - Minuten - Sekunden. Diese Werte werden ausgehend von der aktuellen Zeit berechnet.
ist in den nächsten
x
ist zwischen
x
x
x
Feldwert (inklusive) liegt zwischen den eingegebenen Werten (*).
ist zwischen (exklusive)
x
x
x
Feldwert (exklusive) liegt zwischen den eingegebenen Werten (*).
dauert exakt
x
Mögliche Werte: - Stunden - Minuten - Sekunden.
dauert nicht
x
dauert mindestens
x
dauert über
x
dauert maximal
x
ist kürzer als
x
startet mit
x
Standardmäßige Vergleichsoperatoren für Text
endet mit
x
enthält
x
enthält nicht
x
enthält Wort/Wörter
x
x
Suche nach Schlüsselwort/wörtern. Sie können wählen zwischen der Option "alle Wörter" (Feld muss alle eingegebenen Wörter enthalten) oder "einige Wörter" (Feld muss mindestens eins der eingegebenen Wörter enthalten).
enthält nicht Wort/Wörter
x
x
belegt maximal
x
Suche basiert auf Bildgröße (es gibt verschiedene Einheiten: Bytes, KB, MB, GB)
belegt mindestens
x
(*) Bei Zeichenketten richten sich Suchen nach dem Alphabet (es gilt a < b). Beispiel: Eine Suche vom Typ Name ist nach "don" findet Donna, Don Juan, Schmid, usw., aber nicht Anton oder Dominik.
Um Suchläufe einfacher zu gestalten, besitzt 4D ein Jokerzeichen (@), das ein oder mehrere Zeichen bei einem Suchlauf innerhalb von alphanumerischen Datenfeldern oder einem Textfeld ersetzen kann. Suchen Sie z.B. nach allen Personen mit Namen „Belmondo“ in einem Datenfeld, können Sie den Suchwert unterschiedlich angeben:
Suchen nach:
Findet
Bel@
Alle Werte, die mit „Bel“ beginnen
@do
Alle Werte, die mit „do“ enden
Bel@do
Alle Werte, die mit „Bel“ beginnen und mit „do“ enden
@elm@
Alle Werte, die „elm“ beinhalten
Hinweis: Mit dem Suchkriterium beinhaltet Schlüsselwort können Sie den Joker nur verwenden, wenn er am Ende des gesuchten Wortes steht, z.B. “Hinweise beinhaltet Schlüsselwort ‘anti@’”.
Sie können in einem oder mehreren Datenfeldern suchen. Eine Suche in einem einzigen Datenfeld heißt einfacher Suchlauf. So ist beispielsweise das Suchkriterium „Nachname ist gleich Schmidt“ ein einfacher Suchlauf. Bei einfachen Suchläufen untersucht 4D nur die Inhalte eines Datenfeldes in der Anwendung.
Ein Suchlauf in zwei oder mehr Datenfeldern heißt zusammengesetzter Suchlauf bezeichnet. Bei diesem Suchlauf verbinden Sie einzelne Suchkriterien mit einem logischen Operator. Der logische Operator teilt 4D mit, wie es die Ergebnisse der einzelnen Suchläufe miteinander verbinden soll. Es gibt drei logische Operatoren:
Und: Dieser Operator findet alle Datensätze, die zwei Bedingungen gleichzeitig erfüllen. Beispielsweise bildet das Suchkriterium „Suche alle Mitarbeiter, die in der Entwicklungsabteilung arbeiten und die über 3.000 € verdienen“ eine gemeinsame Teilmenge aus den beiden Suchläufen nach Mitarbeitern der Entwicklungsabteilung UND nach Gehältern von über 3.000 € pro Monat.
Oder: Dieser Operator findet alle Datensätze, auf die eine von zwei Suchbedingungen zutrifft. Beispielsweise findet die Suchbedingung „Suche alle Mitarbeiter der Entwicklungsabteilung ODER alle mit einem Gehalt von über 3.000 €“ sowohl alle Mitarbeiter der Entwicklungsabteilung, als auch die Besserverdienenden mit Gehältern über 3.000 € anderer Abteilungen.
Außer: Der Operator entspricht „nicht“. So findet die Suchbedingung „Suche alle Ingenieure, jedoch NICHT diejenigen, die über 3.000 € verdienen“ nur die Ingenieure, die weniger als 3.000 € monatlich verdienen.
Um eine Suche mit mehreren Suchkriterien durchzuführen, können Sie so oft wie erforderlich auf das Icon klicken.
Mit den logischen Operatoren können Sie komplexe Suchbedingungen erstellen, wie z.B. „Finde alle Vertriebsmitarbeiter in New York ODER Kalifornien, die über 30 % Provision haben UND ein Verkaufsvolumen unter 20.000“. Das folgende Bild zeigt, wie dieser Suchlauf im Sucheditor definiert wird:
Wenn diese Suche ausgeführt wird, findet 4D alle Mitarbeiter des Vertriebs in New York und Kalifornien, die eine hohe Provision bei niedrigem Verkaufsvolumen erhalten. Bei jeder Suchmethode finden Sie weitere Anwendungsbeispiele für Vergleichs- und logische Operatoren.