Hallo Invention,
tritt das Problem nur bei den Normteilen auf, oder generell, wenn du was in Compass anlegst? Ich nehme mal an, es gab da eine Datenübernahme?
Versuch mal, folgendes SQL-Skript auf der Datenbank auszuführen (mit dem SQLQueryAnalyzer):
SELECT Round(MAX(AIMKEY),0,1)+1 FROM ELEMENT
WHERE RIGHT(AIMKEY,6) in (SELECT SNR FROM AIMKEY)
WAS MACHT DAS DING?
Für gewöhnlich erscheint diese Meldung dann, wenn Compass den Datenbankeintrag nicht schreiben kann (egal ob Normteil oder sonst irgendwas), und zwar aus folgendem Grund:
- der eindeutige Schlüssel in der Datenbank ist der AIMKEY
- Dieser wird für jede Neuanlage aus der Tabelle AIMKEY, Spalte AIMKEY ausgelesen
- Sofort nach dem Auslesen wird der Wert in der Tabelle um 1 erhöht, um für die nächste Neuanlage nicht wieder denselben Schlüssel zu verwenden
Und genau das ist aber passiert (nehme ich mal an). Passiert meist dann, wenn Datenbankeinträge ohne Compass erstellt werden (z.B. Datenübernahme) und anschließend vergessen wird, den AIMKEY zu erhöhen.
Was ist zu tun?
Lies dir den höchsten AIMKEY aus der ELEMENT-Tabelle aus. Erhöhe den Wert um 1, schneide die Dezimalstellen weg, und das Ergebnis kommt in die Tabelle AIMKEY, Spalte AIMKEY.
Du musst nur noch darauf achten, dass der höchste AIMKEY der ELEMENT-Tabelle einer ist, der deiner Seriennummer entspricht, da mit dieser Nummer eingetragen wird. Seriennummer findest du in Tabelle AIMKEY, Spalte SNR.
Und genau das macht oben erwähntes SQL-Skript.
Ciao,
WolfgangE
------------------
An Optimist Is A Person Who Has Not Been Shown All The Facts Yet!!!
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP