Gespeichert von FileMaker Entwickler am Do, 03/05/2020 - 15:32

Die Doppelgleichfalle [==]

FileMaker stellt für die Suche verschiedene Operatoren zur Verfügung, mit denen der Anwender seine Suche spezifizieren kann. Aber auch der FileMaker Entwickler muss hin- und wieder Suchabfragen in seinen Skripten programmieren, z.B. um "jede Suche" der Anwender auf die Datensätze des "aktuellen Mandanten" zu begrenzen.

Unterschiede bei den Feldtypen

Wenn in einem Zahlenfeld nach "11" gesucht wird, wird auch nur der Datensatz mit dem Wert "11" angezeigt. Datensätze mit den Werten "111" oder "112" werden nicht gefunden.

Ganz anders verhält es sich mit Textfeldnern. Wenn man in einem Textfeld ohne den Einsatz eines Operators nach "11" sucht, werden die Datensätze gefunden, in denen der Wert "11" vorkommt. Also auch "111" und "112".

Beispiel:

Eine Datenbank hat ein Textfeld. Die 3 Datensätze haben die unterschiedlichen Werte:

  • FileMaker
  • FileMaker Entwickler
  • FileMaker Entwicklung

Eine Suche nach "FileMaker" im Textfeld gibt alle 3 Datensätze als Ergebnismenge aus.

Möchte man aber nur die Datensätze finden, die exakt dem Wert "FileMaker" entsprechen, muss man den "Doppelgleich"-Operator (die beiden Gleichheitszeichen "==") nutzen. Die Suche lautet also "==filemaker" (die Groß- und Kleinschreibung wiederum ist unerheblich!), um nur den 1 Datensatz "FileMaker" zu finden.

Exakte "unscharfe" Suche

Wie würde man nun nach den beiden Datensätzen suchen, die mit "FileMaker Entwick" beginnen?

Es gibt gleich 3 Möglichkeiten:

  1. Als erste Suchabfrage nach "FileMaker Entwickler" erstellen und eine weitere Suchabfage mit "FileMaker Entwicklung" hinzufügen
  2. Eine exakte "unscharfe" Suche mit Doppelgleich + Wildcard: "==FileMaker Entwick*"
  3. am einfachsten ist es jedoch, nach "fileMaker entwick" zu suchen. Beim Datensatz "FileMaker" fehlt der Teil mit "entwick", daher gehört der Datensatz nicht zur Ergebnismenge

 

Warum "Doppelgleichfalle"

Manche Fehler entstehen ganz einfach, weil sie unter der Wahrnehmungsschwelle bleiben. Wir hatten einmal den Fall, dass ein seit Jahren bestehendes Textfeld später für die Speicherung von Zahlen genutzt wurde. Daraufhin kam es zu "merkwürdigen" Ergebnissen einer vor Jahren programmierten Suchroutine. Es stellte sich heraus, dass vergessen wurde, der Suchroutine ein "==" & voranzustellen, um sicher zu gehen, das keine ähnlichen Datensätze gefunden werden.

 

 

 

 

Mamtemic GmbH:
FileMaker Entwicklung, FileMaker Programmierung, Individuelle Datenbanklösungen, Speziallösungen, Web Applications, Auswertungen & Berichte, Außendienst Steuerung, Spezial Kalkulationen, Datenkonvertierung, FileMaker Entwickler für die Anpassung und Wartung Ihrer Inhouse Datenbank
FileMaker Development in Hamburg, Deutschland und Europa, FileMaker Consulting in Norddeutschland