Hi,
habe folgendes Problem: Ich will eine neue Adresse in den Adressstamm eingeben und immer wenn ich abspeichern will kommt
ISC Fehlermeldung:
violation of PRIMARY or UNIQUE KEY constraint "UK_BADR" on table "BADR"
In IBExpert
Error Message:
----------------------------------------
Invalid insert or update value(s): object columns are
constrained - no 2 table rows can have duplicate column values.
violation of PRIMARY or UNIQUE KEY constraint "UK_BADR" on table "BADR".
Das Problem ist den MASKENKEY gibt es aber noch nicht!! Was ist falsch??
Gruß
mlc
ISC Fehlernummer: 335544665
Moderator: SYNERPY
-
mlc
- Beiträge: 84
- Registriert: Di Apr 11, 2006 2:42 pm
Hallo,
ein Nummerkreis war schon vorhanden. Haben diese jetzt verändert und jetzt geht es. Habe jetzt noch mal alles durchgeschaut und bin auf folgende Stelle aufmerksam geworden.
Müßte da nicht stehen (F_STRINGLENGTH(INITIALWERT) <= NFELDLAENGE) sonst muß der selbst eingegebene Maskenkey (Beispiel BADR) ja immer 8 stellen haben ansonst wird der Maskenkey mit der vorgabe vom Nummernkreis erstellt. Diese hat im Hintergrund immer 00001 genommen und diese war schon da.
mfg
mlc
ein Nummerkreis war schon vorhanden. Haben diese jetzt verändert und jetzt geht es. Habe jetzt noch mal alles durchgeschaut und bin auf folgende Stelle aufmerksam geworden.
Code: Alles auswählen
PROCEDURE P_MASKENKEY_GJAHR
/* Gibt es eine Eingabe, die der Länge entspricht? */
IF ((NFELDLAENGE > 0) AND (F_STRINGLENGTH(INITIALWERT) = NFELDLAENGE)) THEN
BEGIN
NTEMPID = NULL;
IF (MYTABELLE = 'BFA') THEN
SELECT ID FROM BFA WHERE MASKENKEY = :INITIALWERT INTO :NTEMPID;
ELSE IF (MYTABELLE = 'BBES') THEN
SELECT ID FROM BBES WHERE MASKENKEY = :INITIALWERT INTO :NTEMPID;
...
INTO :NTEMPID;
/* Die Vorgabe gibt es noch nicht */
IF (NTEMPID IS NULL) THEN
BEGIN
MYDEFAULT = INITIALWERT;
SUSPEND;
EXIT;
END
END
mfg
mlc