Hola gorsan.
Ya con los datos que me faltaban en mano, una tabla de prueba y dejando de lado las llamadas al
TIBStoredProc, pude reproducir tu caso
sin obtener ningún error.
Este es el código de la prueba:
Código Delphi
[-]
...
procedure TWFicha.btnFichaClick(Sender: TObject);
begin
PNEdicion.BringToFront;
GLista.SendToBack;
if TBTabla.Down = True then TBTabla.Down := False;
if TBFicha.Down = False then TBFicha.Down := True;
end;
procedure TWFicha.btnTablaClick(Sender: TObject);
begin
GLista.BringToFront;
PNEdicion.SendToBack;
if TBTabla.Down = False then TBTabla.Down := True;
if TBFicha.Down = True then TBFicha.Down := False;
GLista.SetFocus;
end;
procedure TWFicha.TBAddClick(Sender: TObject);
begin
TBAdd.Enabled:=False;
TBEditar.Enabled:=False;
TBBorrar.Enabled:=False;
TBGrabar.Enabled:=True;
TBCancelar.Enabled:=True;
TBCargarFoto.Enabled:=False;
TBEliminarFoto.Enabled:=False;
TBCalcular.Enabled:=False;
TBCerrar.Enabled:=False;
TBImprimir.Enabled:=False;
TBSalir.Enabled:=False;
EBuscar.SetFocus;
with DMFicha.IBFicha do
try
DisableControls;
Append;
finally
EnableControls;
end;
WFicha.DBCONTADOR.Text:= '123'; WFicha.DBAlta.Text:=DateToStr(Now);
WFicha.DBBAJA.Text:='';
DMFicha.IBFicha.Post;
DBPRIMER_APELLIDO.SetFocus;
end;
procedure TWFicha.TBGrabarClick(Sender: TObject);
begin
TBAdd.Enabled:=True;
TBEditar.Enabled:=True;
TBBorrar.Enabled:=True;
TBGrabar.Enabled:=False;
TBCancelar.Enabled:=False;
TBCargarFoto.Enabled:=True;
TBEliminarFoto.Enabled:=True;
TBCalcular.Enabled:=True;
TBCerrar.Enabled:=True;
TBImprimir.Enabled:=True;
TBSalir.Enabled:=True;
DMFicha.IBFicha.Edit;
DMFicha.IBFicha.Post;
end;
...
¿ Seguro que no hay mas código involucrado ? ¿ Algo en algún evento ?
Saludos