@Heiko:
Neo hat Recht per Logging kommt man dem Fehler nicht zu Rande.
Die
Query bekommt auch keinen Fehler, ich finde zumindest in meinen LOgfiles keinen.
Der neue oder geänderte Datensatz wird einfach nicht gespeichert.
@Neo:
Da es sich bei der
Gui-
DB(DB1) um eine
DB handelt die Zentral gemerched wird,
werden die PK anhand von Nummernkreisen berechnet abhängig von der ID des Standorts.
Ermittelt mit:
"Select max(xyz) from Tblxyz where (xyz > blamin) and (xyz < blaMax)"
Das Ergebnis dann + 1 ergibt die neue ID.
Und ja Neo beim Import den der Dienst durchführt gibt es zu 95% nur Inserts,
allerdings auch ein paar Updates da die Daten des Exports nicht unbedingt in einem Stück kommen.
Beim Speichern des
SQL-Befehle gibt es nur Inserts.
Beim Thread der aus dem Dienst zum RZ des SQLs syncronisiert gibt es nur Updates(zu bearbeitene Datensätze werden via Flag markiert),
dann sequentiell übertragen und danach alle markierten Datensätze gelöscht.
Die Fehler treten laut Kundenaussagen aber nachher bei Stammdaten des Programms auf, die bei dem ganzen Kram nicht angepackt werden,
Oder es wird gar nichts mehr gespeichert.
Abhilfe bringt dann wie gesagt Neustart des Rechners, oder meine App beenden, meinen Dienst beenden und Firebird Dienst neu starten.
Habe das ganze jetzt soweit geändert das jedes TDatabase in meinem Dienst in einer eigenen Session läuft,
denke bin heute Abend soweit ein paar Tests zu fahren.
Wenn Ihr noch mehr Infos braucht, sagt wie ich Licht ins Dunkle bringen kann.
Greetz Data
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.