Moin, Moin Hansa,
Die Views lasse ich mal raus, das sind vorbereitete
Abfragen um die ganzen Select-Statements nicht jedesmal neu schicken zu müssen...
Habe sowas ähnliches mal auf folgendem Weg gelöst
Delphi-Quellcode:
if DataLink.DataSet.Locate( 'PID_Feldname', 'Mein_Wert' ,[] )
then DataLink.DataSet.Edit
else DataLink.DataSet.Append;
Im 'PID_Feldname' Feld der Datenbank wird hier ein eindeutiger Index erwartet.
Bei 'Mein_Wert' könntest Du auch auf die Zeilen Deinse StringGrids zugriefen. Zum Beispiel die eindeutige Artikelnummer, die sich in der Datenbank im PID_Fieldname# Feld befindet.
Grüße aus dem etwas unterkühlten Norden // Martin