Seleccionar ultimo registro


([N3] CENTRAL) #1

Hola Amigos

Como hago lo siguiente?

Necesito cargar algunos campos como contenido inicial del ultimo registros de una tabla.

Me explico.

Tendré una tabla con registros. AL abrir un nuevo registro debo traer algunos datos del ultimo registro ingresado. Siempre del ultimo. Como me posiciono en el ultimo para traer los datos?

Muchas Gracias.


([N3] Jose) #2

Al grabar al registro, guarda el valor de los campos en variables y las asignas despues a los campos del nuevo registro.


([N4] sauron911) #3

Tambien puedes antes de dar de alta el nuevo registro, cargar lista (Tabla) y posicionarte en el ultimo registro. Seleccionar ficha por posicion (sysListSize), luego Leer ficha seleccionada, almacenas los valores en variables locales y finalmente pones Alta de ficha (tablaaltas)
Modificar Campo…
etc…


([N4] Infortic) #4

Hola.

Hau muchas formas distintas de hacerlo.

Si no necesitas editar los campos copiados desde el último registro antes del alta lo mejor es lo que dice sauron911 en el trigger de anterior al alta.

Si quires verlos en el formulario antes del alta puedes hacer algo así:

Crear una función que me obtiene el ID del último registro, con el código que indica sauron911.

funcion GetLastID

Cargar lista (TABLA)
Seleccionar ficha por posicion (sysListSize)
Leer ficha seleccionada
set(ID_LAST,#ID)

Set dato de retorno (ID_LAST)

En la tabla te creas un campo ULT_REG de tipo indirecto virtual a la tabla TABLA con resolucion ID = fun: GetLastID()

Así puedes usar el campo enlace en los contenidos iniciales de la tabla #ULT_REG.CAMPO_A_TRASPASAR

Un saludo


([N3] CENTRAL) #5

Gracias a todos por sus aportes.
Ahora me pondré a probar sus sugerencias.