Anfang des Inhaltsbereichs

Hintergrunddokumentation Generische und konstante Fremdschlüssel   Dokument im Navigationsbaum lokalisieren

Eine Fremdschlüsselprüfung gegen alle Schlüsselfelder der Prüftabelle ist nicht immer sinnvoll. Beispiele sind zeitabhängige Prüftabellen oder Prüftabellen mit einer Versionsnummer als Schlüsselbestandteil.

In diesen Fällen können generische Fremdschlüssel verwendet werden. Hierbei werden Felder aus der Zuordnung zu den Schlüsselfeldern der Prüftabelle herausgenommen. Die Prüfung erfolgt damit nur gegen die verbliebenen Schlüsselfelder.

Es ist auch möglich einem Schlüsselfeld der Prüftabelle einen konstanten Wert zuzuweisen. Die Prüfung erfolgt für dieses Feld dann nur gegen die angegebene Konstante. Diese Möglichkeit können Sie verwenden, wenn nur Sätze der Prüftabelle zulässig sind, die in diesem Schlüsselfeld einen konstanten Wert enthalten.

Diese Grafik wird im zugehörigen Text erklärt

Für die Fremdschlüsseldefinition in der Abbildung hätte das zugehörige SELECT-Statement für die Dynproprüfung die folgende Form:

SELECT * FROM PTAB WHERE PTAB-FELD1 = FTAB-FELD6 AND PTAB-FELD3 = FTAB-FELD8 AND PTAB-FELD4 = ‘K’.

Eine Eingabe in das Prüffeld Feld6 ist also nur dann zulässig, wenn ein Satz der Prüftabelle PTAB existiert, der den Eingabewert für Feld6 in PTAB-Feld1, den Eingabewert für Feld8 in PTAB-Feld3 und in PTAB-Feld4 die Konstante K enthält.

Diese Grafik wird im zugehörigen Text erklärt

Die für Feld7 und Feld9 auf dem Dynpro eingegebenen Werte sind also für die Prüfung gegen die Prüftabelle bedeutungslos. Ein Eintrag mit Feld6 = 1, Feld8 = 3 und Feld9 = B wäre in diesem Beispiel unzulässig, da in der Prüftabelle kein Satz mit PTAB-Feld1 = 1, PTAB-Feld3 = 3 und PTAB-Feld4 = K existiert!