Ansicht
Dokumentation
ABENCONSTRUCTOR_EXPR_FILTER_BASIC - CONSTRUCTOR EXPR FILTER BASIC
ROGBILLS - Synchronize billing plans RFUMSV00 - Advance Return for Tax on Sales/PurchasesDiese Dokumentation steht unter dem Copyright der SAP AG.
FILTER, Grundform
... FILTER type( itab $[EXCEPT$] $[USING KEY keyname$]
WHERE c1 op f1 $[AND c2 op f2 $[...$]$] ) ...
Zusätze:
1. ... USING KEY keyname
2. ... WHERE c1 op v1 $[AND c2 op v2 $[...$]$]
Wirkung
Diese Variante des Filteroperators FILTER filtert itab über Einzelwerte. In der WHERE-Bedingung werden die Spalten eines Tabellenschlüssels von itab mit einzeln Werten verglichen. Es werden die Zeilen von itab verwendet, welche die WHERE-Bedingung erfüllen bzw. bei der Angabe von EXCEPT nicht erfüllen.
Die interne Tabelle itab muss hierfür mindestens einen sortierten Schlüssel oder einen Hash-Schlüssel haben, der für den Zugriff verwendet wird. Dies kann
- entweder der primäre Tabellenschlüssel sein, der ohne die Angabe von USING KEY oder über die Angabe seines Namens primary_key hinter USING KEY verwendet wird,
- oder ein sekundärer Tabellenschlüssel, der über die Angabe seines Namens hinter USING KEY verwendet wird.
Für eine interne Tabelle itab ohne sortierten Schlüssel oder Hash-Schlüssel ist diese Variante des Filteroperators nicht möglich.
Beispiel
Filterung der Nachrichten eines Arbeitsgebiets aus der Datenbanktabelle T100 nach der Sprache.
Zusatz 1
... USING KEY keyname
Wirkung
Angabe des Tabellenschlüssels keyname,
mit welchem die Auswertung der WHERE-Bedingung erfolgt. Es kann ein sortierter Schlüssel
oder ein Hash-Schlüssel der Tabelle itab angegeben werden. Wenn der Primärschlüssel
von itab kein sortierter Schlüssel oder Hash-Schlüssel ist, muss itab einen solchen Sekundärschlüssel haben und dieser muss mit USING KEY angegeben werden.
Beispiel
Wie das vorhergehende Beispiel, wobei hier explizit ein sekundärer Tabellenschlüssel angegeben
werden muss, da die interne Tabelle messages eine Standardtabelle ohne Primärschlüssel ist.
Zusatz 2
... WHERE c1 op f1 $[AND c2 op f2 $[...$]$]
Wirkung
Hinter WHERE muss eine Bedingung für den im FILTER-Ausdruck verwendeten Tabellenschlüssel angegeben werden:
- Bei einem Hash-Schlüssel muss es für jede Schlüsselkomponente genau einen Vergleichsausdruck c op f geben. Der einzige für op erlaubte Vergleichsoperator ist =.
- Bei einem sortierten Schlüssel muss eine Anfangsstück des Schlüssels durch Vergleichsausdrücke c op f abgedeckt werden. Für op sind alle binären Vergleichsoperatoren erlaubt.
Die Kombinierung mehrerer Vergleiche darf nur mit AND erfolgen. Außer den genannten Vergleichen für Schlüsselkomponenten darf es keine weiteren Vergleiche geben. In der Grundform sind für die linken Operanden c1, c2, ... Schlüsselkomponenten der internen Tabelle itab anzugeben. Auf der rechten Seite sind Datenobjekte f1, f2, ... anzugeben, die zur linken Seite kompatibel sind. f1, f2, ... sind allgemeine Ausdruckspositionen.
Hinweise
- Die obsoleten Vergleichsoperatoren können in der WHERE-Bedingung nicht verwendet werden.
Tabellenfilterungen, Einzelwerte
Fill RESBD Structure from EBP Component Structure Addresses (Business Address Services)
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 6070 Date: 20240523 Time: 162247 sap01-206 ( 89 ms )