append - открыть только для чтения
edit - для редактирования
insert - для вставки
Хоть и новенький, но что-то я знаю.
В вашем коде append - надо убрать. Вы два раза открываете в разных режимах.
Насколько я понял вам надо таблицы "заполнить" из некоторых Edit/DBEdit компонентов.
Блок для вставки такой:
Код:
ADOTable1.Insert; // открыть для вставки
ADOTable21.FieldByName('название поля 1').asstring:=edit1.text; // вставляемое поле 1
ADOTable21.FieldByName('название поля 2').asstring:=edit2.text; // вставляемое поле 2
ADOTable21.Post; // закрепить изменения
ADOTable1.Edit; // открыть для редактирования
ADOTable21.FieldByName('название поля 1').asstring:=edit1.text; // редактируемое поле 1
ADOTable21.FieldByName('название поля 2').asstring:=edit2.text; // редактируемое поле 2
ADOTable21.Post; // закрепить изменения
В первом случае, если вы не укажете 3 4 и т.д. поля, то они заполняться "типизированной пустотой".
Т.е. если поле 3 типа string туда попадёт ''
а поле 4 типа integer туда попадёт nil
Во втром случае, в
ВЫБРАННОЙ записи будут измененны поля 1 и 2 на соответствующую инфу из edit1 и edit2/
Итог:
на выходе из первой процедуру получаем новую запись.
на выходе из второй процедуры получаем модифицированную запись.
условие перечитайте
Код:
if frmdolzhniki.ADOTable1.Modified then frmdolzhniki.ADOTable1.post;
if frmdolzhniki.ADOTable1.Modified then frmdolzhniki.ADOTable2.post;
Если модернизируется 1ая таблица ... то закрепляем изменения в первой
Если модернизируется 1ая таблица ... то закрепляем изменения во второй