Ver Mensaje Individual
  #20  
Antiguo 30-11-2006
efelix efelix is offline
Miembro
 
Registrado: jul 2006
Posts: 84
Reputación: 18
efelix Va por buen camino
Felicidades fcg02 por ser padre, no se si por primera vez, pero bueno eso no importa, cada nuevo hijo es como si fueramos padres por vez primera, yo tengo tres hijos y son tremendos, el mas pequeño anoche no me dejo dormir. Te cuento lo que sucede. Puse en en evento onclick del botón guardar lo siguiente:
Código Delphi [-]
begin
 if ADOTNuevaFactura.State in [edit, insert] then
    ADOTNuevaFactura.
end;
Cuando hago esto el método post del ADOTable realacionado con la tabla factura no me sale en la lista de miembros. Eliminé como me dijiste la línea else del evento before post del ado table y ahora quedó de la siguiente manera:
Código Delphi [-]
begin
 ADOQNuevaFactura.Close;
 ADOQNuevaFactura.Parameters.ParamByName('IdFactura').Value :=StrToInt(DBEditNumero.Text);
 ADOQNuevaFactura.Open;
 if ADOQNuevaFactura.RecordCount > 0 then
 begin
    MessageDlg('La Factura que está intentando introducir ya existe',mtWarning,[mbOK],0);
    DBEditNumero.SetFocus;
    ADOTNuevaFactura.Cancel;
 end;

end;
Cuando la factura que intento agregar es nueva esto me funciona a la perfección, por supuesto si elimino la primera línea del evento onclick del botón guardar y solamente dejo ADOTNuevaFactura.Post. Ahora no te entiendo en cuantoa a lo que me explicas sobre la utilización del método cancel y post, porque aunque ambos están en al mismo evento es decir en el before post del ado table nueva factura, ambos se aplican al ado table y no al ado query, realmente no entiendo bien lo que pasa o es que ambos métodos no deben estar en el mismo evento. Disclpáme nuevamente, independientemente de que resuelva o no el problema me ha servido de mucho tu ayuda al ugual que la de los demás compañeros que me han respondido, te reítero mis felicitaciones y suerte con la nueva cria.
Responder Con Cita