![]() |
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 ! |
Antes de dar valor a los campos precio y color, debes asegurarte de que está en modo edición:
.. por ejemplo... Saludos |
| La franja horaria es GMT +2. Ahora son las 00:50:29. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi