SQL-Fehler beim Start von CO (Abschlagspositionen)

Beim Start von Concept Office erscheint folgende Fehlermeldung:



"Es ist ein Fehler beim Ausführen eines SQL-Befehls aufgetreten. 

Details entnehmen Sie dem Anwenderprotokoll.

command: 'alter table dbo.AbschlagsPositionen WITH CHECK CHECK 

CONSTRAINT FK_AuftragsKoepfe_AbschlagsPositionen' (Server/Database: 

CCSSQL\SQLEXPRESS/scOffice)

(Die ALTER TABLE-Anweisung steht in Konflikt mit der FOREIGN 

KEY-Einschränkung 'FK_AuftragsKoepfe_AbschlagsPositionen'. Der 

Konflikt trat in der scoffice-Datenbank, Tabelle 'dbo.AuftragsKoepfe' 

auf.)"

Ursache:

Die Meldung erscheint, da es in der Datenbank Abschlagspositionen gibt, an denen noch eine Vorgangsnummer hinterlegt ist. Diese Vorgänge wurden in der Zwischenzeit allerdings  gelöscht, dadurch entsteht hier eine Ungleichheit in den Tabellen und die Meldung ist das Resultat.

Lösung:

1. Betroffene Abschlagspositionen herausfinden:
select ab.* from AbschlagsPositionen ab
left join Auftragskoepfe ak
on ab.Mandant = ak.Mandant
and ab.Auftragsnummer = ak.Auftragsnummer
where ak.Mandant is null

2. Sicherung der Tabelle AbschlagsPositionen machen:
Select * into Abschlagspositionen_YYYY_MM_DD from AbschlagsPositionen

3. Betroffene Abschlagspositionen löschen:
delete ab from AbschlagsPositionen ab
left join Auftragskoepfe ak
on ab.Mandant = ak.Mandant
and ab.Auftragsnummer = ak.Auftragsnummer
where ak.Mandant is null