WR Find

4D - Documentation   Français   English   German   4D Write, Befehle nach Thema   4D Write, Befehle alphabetisch   Konstanten nach Thema   Back   Previous   Next

Version 6.5


WR Find (Bereich; String; GanzesWort; Großschreibung; Umfang) Lange Ganzzahl

ParameterTypBeschreibung
BereichLange Ganzzahl4D Write Bereich
StringAlphaZu suchender String
GanzesWortGanzzahl0=Teilweise Übereinstimmung
1=Ganzes Wort
GroßschreibungGanzzahl0=Ignoriere Großschreibung
1=Berücksichtige Großschreibung
UmfangGanzzahl0=Suche ab Einfügepunkt
1=Suche im ganzen Dokument
FunktionsergebnisLange GanzzahlStatus der Suche

Beschreibung

Mit der Funktion WR Find suchen Sie nach einem String in einem 4D Write Bereich. Mit dem Befehl WR GET WORDS finden Sie die Position der gefundenen Wörter. Mit dem Befehl WR GET SELECTION finden Sie die Position der gefundenen Auswahl. Wurde ein String gefunden, gibt WR Find den Wert 1 zurück und wählt das erste Vorkommen aus.

War die Suche erfolglos, gibt WR Find den Wert Null (0) zurück. Die aktuelle Auswahl wird nicht verändert. Existiert Bereich nicht, gibt WR Find den Wert -1 zurück.

GanzesWort und Großschreibung grenzen die Suche ein:

Bei GanzesWort gleich 1 muss das gesuchte Wort zwischen Trennzeichen (Leerzeichen oder Satzzeichen) stehen. Bei GanzesWort gleich 0 kann der String entweder ein ganzes Wort oder Teil eines längeren Wortes sein.

Bei Großschreibung gleich 1 beachtet die Suchfunktion die Groß- und Kleinschreibung. Suchen Sie nach "HALLO", wird "Hallo" nicht gefunden.

Über Umfang definieren Sie, ob die Suche für das ganze Dokument gilt. Bei Umfang gleich 1 wird die Suche im ganzen Dokument ausgeführt. Bei Umfang gleich 0 wird die Suche ab der Einfügemarke oder der Auswahl bis zum Ende des Dokuments ausgeführt.

Beispiele

(1) Sie fordern den Benutzer auf, den Suchbegriff einzugeben und suchen dann danach:

   Suchen:=Request("Gib gesuchte(n) Begriff(e) ein:")
   If(OK=1)
      WR SET SELECTION(Bereich;0;0)
      If(WR Find(Bereich;Finden;1;1;1)=0)
         ALERT("Kein Vorkommen gefunden.")
      End if
   End if

(2) Dieses Beispiel führt in einer Datensatzauswahl eine Suche nach Schlüsselwort aus. Die Suche erfolgt in Bildbereichen.

Wichtig: Haben Sie Ihre 4D Write Bereiche in BLOB Feldern gesichert, sehen Sie sich das Beispiel zur Funktion WR Find direct an. Es ist um einiges schneller.

Ihre Datenbank verwaltet Kochrezepte. Die 4D Write Bereiche sind in Datenfeldern vom Typ Bild gespeichert. Sie möchten alle Rezepte finden, die eine bestimmte Zutat verwenden. Die Methode lautet:

   Suchen:=Request("Gib die gewünschte(n) Zutat(en) ein:")
      `Erstelle leere Menge, in die alle gefundenen Datensätze gelegt werden
   CREATE EMPTY SET([MeineRezepte];"Gefundene Datensätze")
   ALL RECORDS([MeineRezepte])  `Durchlaufe die gesamte Auswahl der Tabelle
   Virtueller Bereich:=WR New offscreen area 
   While (Not(End selection([MeineRezepte])))
      WR PICTURE TO AREA (Virtueller Bereich;[MeineRezepte]PictRezept_)
      If (WR Find (Virtueller Bereich;Suchen;1;1;1)=1)
            `Wird Zutat gefunden, füge Datensatz in Menge ein
         ADD TO SET([MeineRezepte];"Gefundene Datensätze")
      End if 
      NEXT RECORD([MeineRezepte])
   End while 
   WR DELETE OFFSCREEN AREA (Virtueller Bereich)
   USE SET("Gefundene Datensätze")
   OUTPUT FORM([MeineRezepte];"Ausgabe")
   MODIFY SELECTION([MeineRezepte];*)

Referenz

WR Direct find.


4D - Documentation   Français   English   German   4D Write, Befehle nach Thema   4D Write, Befehle alphabetisch   Konstanten nach Thema   Back   Previous   Next