Zitat:
"Can not update this
query type".
Soll bedeuten, das du deine ZTable mit einem View verbunden hast, in dem ein oder mehrere JOINS mit 1:n, n:n oder SubSelects vorhanden sind.
Diese Datenmengen können nur ReadOnly geöffnet werden, da ein oder mehrere Felder im Datensatz nicht eindeutig bis zum "Datensatz der Quelltabelle" zurückverfolgt werden können. Ein Speichern über TDataset (bzw. Nachfahren) ist somit nicht möglich.
Du musst dein onBeforePost etwa so umbauen:
Procedure TZTable.onBeforePost(bla);
begin
1. Update der Daten in die
DB über UpdateSQL, eine
Query o.Ä.
2. Dataset.cancel; // Post der ZTable abbrechen
3. ZTable.Refresh; // Daten neu aus den View laden bzw. Refreshen
end;