Wie ich zwei Tabellen miteinander vergleiche wenn ich einen vorgegebenen Wert habe, weiß ich, aber wie gehe ich vor wenn ich zwar nach gleichen Werten suche, aber nicht genau weiß nach welchem Wert ich suche.
Als Beispiel:
Tabelle 1:lt_name Tabelle 2:lt_kunden
Index Name BOOL Nummer Kname
Ich möchte nun schauen ob es bei den beiden Tabellen bei den Namen(und kname) eine Paarung gibt und gleichzeitig bei der Paarung die Boolsche Spalte der ersten Tabelle X hat.
Wenn die erste Paarung auftritt dann verlasse ich die Schleife? mit einem Exit.
Leider bekomme ich gerade den Syntax nicht fehlerfrei zusammen und habe auf der Suche nur Ergebnisse gefunden wo beispielsweise ein bestimmter Name im Voraus bekannt war.
Was für eine Fehlermeldung kommt, wie sieht der Code / Fehlerstelle aus?
Ansonsten ist das eigentlich nicht kompliziert:
loop über Tabelle1 in Struktur1.
loop über Tabelle2 in Struktur2 wenn Kname = Struktur1-Name und BOOL = X.
Wenn ich da bin, habe ich was gefunden
Ende Loop über Tabelle2
Ende Loop über Tabelle1
Es gibt auch eine FILTER Anweisung die für sowas intersant sein könnte.
Wobei der innere LOOP überflüssig ist und die Lesbarkeit des Programms erschwert. Man sollte niemals LOOP nehmen, wenn man nur eine Zeile braucht und in der WHERE-Bedingung nur Abfragen auf Gleichheit hat. Dann langt auch ein READ TABLE oder ein passendes 7.40-Syntaxkonstrukt.