Ver Mensaje Individual
  #7  
Antiguo 14-06-2014
Avatar de Caminante
Caminante Caminante is offline
Miembro
 
Registrado: oct 2010
Ubicación: Lima - Peru
Posts: 338
Reputación: 14
Caminante Va camino a la fama
Bueno asi de memoria nomas

Para el problema de las claves primarias basta con utilizar la propiedad generatorfield del ibdataset.
Antes de ingresar algun registro en el detalle (creo q en el evento afterinsert) hago:

Código Delphi [-]
ibencabezado.CheckBrowseMode;
ibencabezado.edit

Asi se asigna el valor del generador a la clave primaria

y en el evento beforepost de la tabla detalle hago:

Código Delphi [-]
if ibdetalle.fieldbyname('referencia').isnull then
ibdetalle.fieldbyname('referencia').asinteger:=ibencabezado.fieldbyname('claveprimaria').asinteger;

y al guardar solo hago

Código Delphi [-]
ibencabezado.CheckBrowseMode;
ibdetalle.CheckBrowseMode;
ibtransaccion1.CommitRetaining;

Bueno creo q mas o menos asi. Tu disculparas si es q hay algo q no es. Es q no tengo delphi a mano en este momento.

Saludos
Responder Con Cita