umm creo que el problema esta en que no tienes declarado el el uses el form de donde tomas los datos , ahora si es el mismo por que no pruebas de la siguiente manera.
Código Delphi
[-]with QueryDataModule.ConyugeZQuery do
begin
SQL.Clear;
SQL.Add('insert into cliente(apellido,nombre)');
SQL.Add('values(:Papellido,:Pnombre)');
Parameters.ParamByName('Papellido').Value:=self.ApellidoEdit.text;
Parameters.ParamByName('Pnombre').Value:=self.Nombreedit.text;
try
ExecSQL;
Application.MessageBox('Registro Almacenado con Éxito','Error', MB_OK + MB_ICONINFORMATION);
except
on E:EOleException do
begin
MessageDlg(Format('Error: %s Codigo: %d', [E.Message, E.ErrorCode]), mtError, [mbOK], 0);
end;
end;
end;
tienes que hacer mencion a la libreria ComObjs para que funcione, es este caso al menos capturamos el mensaje para ver que es.