Ver Mensaje Individual
  #10  
Antiguo 17-05-2004
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Reputación: 24
guillotmarc Va por buen camino
Hola.

Yo prefiero no utilizar Triggers. Puesto que el clientdataset no se entera del valor asignado al campo, hasta que no haces un refresh y vuelves a cargar los datos.

Por eso, utilizo un procedimiento almacenado, que me devuelve el siguiente nº de documento, y lo asigno desde Delphi. Aunque yo lo calculo y asigno en el momento de crear el registro de cabecera, de forma que lo pueden utilizar los detalles en el momento de crearse en su correspondiente clientdataset.

Pero esta forma tiene el problema que comentas de crear saltos (que normalmente en mis programas no tiene ninguna importancia). Si quieres evitarlo, una forma es esperar a calcular el próximo nº documento, y asignarlo, a justo antes de llamar al ApplyUpdates. Aunque tendrás que hacer posteriormente un recorrido sobre el clientdataset de detalles, para asignarles el nuevo valor a todos los registros.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita