Cześć, mam sobie dataseta i smdbGrida.

Mam wyświetlone w gridzie jakieś dane i użytkownik może zmieniać zawartość jednej kolumny.
Jednak, gdy ustawiam się na ostatnim rekordzie i wciskam TAB, to automatycznie dodaje się kolejny pusty rekord. Jak temu zapobiec?

Próbowałem w zdarzeniu grida: OnAppendRecord wywołać cichy wyjątek, ale to nic nie dało. Próbowałem też w tym zdarzeniu dać DataSet.Cancel, ale wychodzi na to, że chyba OnAppendRecord jest wywoływana przed append.
Jak to można zablokować?

[DOPISANE]
OK, poradziłem sobie. W zdarzeniu datasetu AfterInsert należy wpisać:

if dataset.RecNo = -1 then dataset.Cancel;

Okazało się, że po wywołaniu Insert, recNo przyjmuje wartość -1.