Suchen nach Datensätzen mit identischen Werten in unterschiedlichen Feldern
Sie können Datensätze suchen, in denen unterschiedliche Felder eines Datensatzes denselben Wert enthalten. Nehmen wir zum Beispiel an, Sie möchten alle Bestellungen finden, in denen der bezahlte Betrag mit dem in Rechnung gestellten Betrag übereinstimmt. Verwenden Sie ein Formelfeld oder eine Schleife in einem Script, um die Werte der beiden Felder in jedem Datensatz zu vergleichen.
So suchen Sie mithilfe eines Formelfelds Datensätze mit identischen Werten:
- Erstellen Sie in der Tabelle, die die zu vergleichenden Felder enthält, ein Formelfeld mit dem Ergebnistyp „Zahl“. Weitere Informationen finden Sie unter Definieren von Formelfeldern.
Erstellen Sie beispielsweise ein Formelfeld mit dem Namen „Feldvergleich“.
- Geben Sie im Dialogfeld „Formel angeben“ einen Ausdruck ein, der die beiden Felder vergleicht.
Beispielsweise stellt der Ausdruck
FeldA = FeldB
das Feld „Feldvergleich“ nur dann auf 1 ein, wenn beide Felder denselben Wert enthalten. Anderenfalls lautet das Ergebnis 0. - Fügen Sie das Formelfeld (Feldvergleich) dem Layout hinzu.
Weitere Informationen finden Sie unter Platzieren und Entfernen von Feldern in einem Layout.
- Starten Sie eine Suchabfrage, geben Sie
1
in das Formelfeld (Feldvergleich) ein und klicken Sie dann auf Suchen.Weitere Informationen finden Sie unter Definieren einer Suchabfrage.
Die Ergebnismenge umfasst alle Datensätze, für die das Formelfeld „Feldvergleich“ gleich 1 ist, d. h. alle Datensätze, in denen FeldA denselben Wert enthält wie FeldB.
So suchen Sie mithilfe eines Scripts Datensätze mit identischen Werten:
- Erstellen Sie ein Script.
Weitere Informationen finden Sie unter Erstellen und Bearbeiten von Scripts.
- Fügen Sie dem Script die nachfolgenden Schritte hinzu, wobei Tabelle::FeldA und Tabelle::FeldB die beiden Felder sind, die Sie in einem bestimmten Layout (in diesem Fall „Mein Layout“) vergleichen möchten.Kopieren
Gehe zu Layout [ "Mein Layout" (Tabelle) ]
Alle Datensätze anzeigen
Gehe zu Datens./Abfrage/Seite [ Erster ]
Schleife (Anfang) [ Löschen: Immer ]
Wenn [ Tabelle::FeldA = Tabelle::FeldB ]
Gehe zu Datens./Abfrage/Seite [ Nächster ; Nach letztem beenden: Ein ]
Sonst
Datensatz ausschließen
Ende (wenn)
Schleife (Ende) - Führen Sie dieses Script aus.
Das Script zeigt alle Datensätze an und wechselt in den ersten Datensatz. Dann vergleicht es für jeden Datensatz die beiden Felder und schließt die Datensätze aus, in denen FeldA ungleich FeldB ist.
Hinweis Anstelle eines Gleichheitszeichens im Formelfeld oder im obigen Scriptschritt „Wenn“ können Sie einen beliebigen Vergleichs- oder Logikoperator verwenden, um Felder zu vergleichen. Verwenden Sie z. B. Tabelle::FeldA > Tabelle::FeldB
, um Datensätze zu finden, in denen FeldA größer als FeldB ist. Weitere Informationen hierzu finden Sie unter Vergleichsoperatoren und Logische Operatoren.