Ver Mensaje Individual
  #1  
Antiguo 24-06-2007
Avatar de mRoman
mRoman mRoman is offline
Miembro
 
Registrado: nov 2003
Posts: 646
Reputación: 23
mRoman Va por buen camino
Grabar en Maestro Detalle

Hola que tal....amigos foreros.

He estado navegando en la pagina del club para localizar informacion sobre maestro-detalle, la cual he encontrado y me ha dado un panorama mas amplio de como es q funciona....pero aun asi tengo un problema distinto a los del foro.

Tengo un formulario donde despliego los datos del CLIENTE y tengo un DBGrid donde DEBEN de aparecer los DETALLES de la NOTA del CLIENTE....la bronca es la forma en como quiero q guarde los datos, sé que para poder grabar detalles es necesario tener el registro grabado en la tabla maestra, pero lo que quiero es....que cuando el usuario termine de capturar los detalles de la nota grabe en el MAESTRO y en el DETALLE -en ese orden obviamente-, pero no se como se puede hacer eso.....

Ya que lo intento y cuando graba el primer detalle, el DATASET maestro se cierra....chequen el codigo:
procedure TfrmDetalle.btnGrabarClick(Sender: TObject);
begin
inherited;
try
dsDetalle.FieldByName('PRECIO').AsFloat:=StrToFloat(lblPrecio.Caption);
dsDetalle.FieldByName('COLOR').AsInteger:=ColorBox1.ItemIndex;

frmRegistroNota.dsRegNota.Post;
frmRegistroNota.dsRegNota.ApplyUpdates;

dsDetalle.Post;
dsDetalle.ApplyUpdates;
dmDatos.trsLavan.Commit;
btnGrabar.Enabled:=False;
btnEliminar.Enabled:=False;
btnCancelar.Enabled:=False;
except
dmDatos.trsLavan.Rollback;
showmessage('Este registro no se puede GRABAR!');
end;
mskClave.SetFocus;
end;

Es aqui donde al querer agregar otro registro al detalle me marca un error de que el DSDETALLE no esta en modo EDit......

Como puedo solucionar este problema....la otra podria ser agegar todos los detalles a un DBGRID y que al dar click en el BOton Grabar, tome cada uno de esos registros y los empieze a guardar en la tabla de detalles, talvez utilizando algun procedimiento almacenado....pero no se como agregar registros a un DBGrid sin tener asociado un DATASOURCE al DBGRID.

Espero haberme explicado......estoy atorado en esto, buscando una solucion.

Utilizo componente IB y BD FireBird....GRACIAS !
__________________
Miguel Román

Afectuoso saludo desde tierras mexicanas....un aguachile?, con unas "cetaseas" bien "muertas"?, VENTE PUES !!
Responder Con Cita