PDA

Ver la Versión Completa : Problema con Bookmark


marceloalegre
02-10-2006, 14:31:38
Buen Dia:
Les molesto por la siguiente cuestion. Estoy tratando de usar las funciones de bookmark de la unit DB, donde me encuentro con este problema:
Estoy usando una grilla de tipo maestro detalle, donde al eliminar un registro quiero quedarme en el anterior o siguiente que elimine.
Para eso en mi IBTABLE tengo una variable book de tipo TBookMark de la siguiente manera en el BeforeDelete:

Book:=IBTable.GetBookmark;


Luego despues de borrar el registro en el AfterDelete hago lo siguiente:

IBTable.GotoBookMark(Book);
IBTable.FreeBookmark(Book);


lo cual no funciona ya en el gotobookmark porque el "book" que marque no existe mas ya que fue borrado saliendome el siguiente mensaje: "IBTable: Registro no encontrado".

Como hago para que posicionarme en llamemosle "el book -1" ya que book es de tipo pointer?
Alguien ha tenido que manejar esta cuestion y me puede ayudar?!

Muchas gracias!!!!!

marcoszorrilla
02-10-2006, 14:50:27
Se me ocurre utilizar 2 Bookmark, capturar en uno el registro actual y en otro el anterior, luego mediante un
Try....Except...end

Tratas de colocarte en el primero y si falla, vas al segundo.

Un Saludo.

marceloalegre
02-10-2006, 15:11:38
El problema que tengo es que no se me "ocurre" como hacer para que estando parado en el registro actual, me guarde en un book el anterior...:confused:

marcoszorrilla
02-10-2006, 15:21:45
Todo depende de la estructura de la tabla, si son líneas de albaran o de factura yo tengo la costumbre de numerarlas de 1....xxx por cada factura.

En cualquier caso si aprovechas el evento del borrado puedes retroceder una línea guardar el bookmark y luego seguir la operación.

Un Saludo.

marceloalegre
02-10-2006, 15:24:36
Comprendo la idea Marcos, ahora voy a chequearlo, Muchas Gracias!!