Ver Mensaje Individual
  #6  
Antiguo 15-11-2016
martin17476 martin17476 is offline
Miembro
 
Registrado: oct 2006
Posts: 27
Reputación: 0
martin17476 Va por buen camino
Gracias a todos por vuestra ayuda. Siento no haber usado el TAG de Delphi.
Leyendo con atención todo lo que habéis compartido aún sigue habiendo problemas. El código que he usado es:

Código Delphi [-]
Table1.Insert;
Table1.Campo2 := Valor2; //el Campo1 sería el Autoincrement
........
Table1.Post;
marca := Table1.GetBookmark;
Table1.Refresh;
table1.GotoBookMark(marca);
.....

Ahora el valor del campo Autoincrement no es 0, sino que corresponde al valor del último registro físico de la tabla, y no con el que acabo de insertar (el cual ha ido a otro lugar de la tabla).

Lo he resuelto con un Locate:

Código Delphi [-]
Table1.Post;
intCam := table1Camp.Value;
Table1.Refresh;
Table1.Locate('Camp',intCam,[]);

Ahora sí que voy al registro y el valor Autoincrement sí que es el correcto.

Pero sigo pensando que algo no va bien. Debería funcionar con el primer código.

Espero haberme explicado bien. Cualquier observación será de ayuda.
Responder Con Cita