Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Problema con evento onNewRecord (https://www.clubdelphi.com/foros/showthread.php?t=20409)

novaten 14-04-2005 18:51:38

Problema con evento onNewRecord
 
Tengo un Ibtable y en el evento OnnewRecord tengo este codigo: para que me cubra en un dbedit el valor de un campo de una tabla al darle al boton nuevo registro de un Dbnav que se encuentra en el mismo form qu el dbedit:


procedure TMODULO.APARATOSNewRecord(DataSet: TDataSet);
var
aux:integer;
begin
aux:=ibtable1.Fields.Fields[1].AsInteger;
FormAparatos.DBEdit6.Text:=inttostr(aux);
end;

Pero no me cubre nada en el dbedit, ¿alguien sabe que falla?

Un saludo a todos.

jachguate 14-04-2005 19:16:00

No tiene sentido alterar la propiedad Text de un dbEdit. Alterá directamente el valor del campo asociado a este:

Código Delphi [-]
procedure TMODULO.APARATOSNewRecord(DataSet: TDataSet);
begin
  ibtable2.Fields[1].AsInteger := ibtable1.Fields[1].AsInteger;
end;

Esto se reflejará directamente en el edit.

Hasta luego.

;)

roman 14-04-2005 19:26:43

¡Ah! ¡Claro! Hasta ahora que veo tu respuesta me percato de por qué no se ve nada en el DBEdit. Seguramente cuando este evento ocurre aun no se han inicializado los controles de edición y, dado que no se asignó nada al campo directamente, cuando los controles se inicializan toman el valor original: vacío.

// Saludos

marcoszorrilla 14-04-2005 20:01:24

Para que ocurra el evento OnNewRecord, tienes que escribir algo en un campo, si tienes una rejilla verás como al escribir en cualquier columna se produce dicho evento.

Un Saludo.

roman 14-04-2005 20:06:30

Marcos, creo que no es correcto lo que mencionas. El evento OnNewRecord se genera cuando se va a insertar un nuevo registro. En el caso de la rejilla se produciría cuando orpimimos INSERT o avanzamos más allá de la última línea. Cuando comenzamos a escribir en una celda el evento ya se produjo.

// Saludos

marcoszorrilla 14-04-2005 22:07:04

Pues me retracto, es verdad, lo que ocurre es que cuando escribes es cuando ves el resultado del evento OnNewRecord por ejemplo en la citada rejilla, pero como muy bien dice Román se produce cuando se ejecuta un Insert o Append según los casos.

Un Saludo.


La franja horaria es GMT +2. Ahora son las 12:07:59.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi