Ver Mensaje Individual
  #6  
Antiguo 01-06-2007
jcapitan jcapitan is offline
Miembro
 
Registrado: jun 2006
Posts: 31
Reputación: 0
jcapitan Va por buen camino
Un poco mas detallado, sorry, aunque gaste mas texto :-)

Lo que mencionas (http://www.clubdelphi.com/foros/imag...ine=1165511126 AzidRain) es precisamente o que quiero hacer, que trabajen de manera independientes las "papeletas".

Mas detalles:

Primero, tengo un DataModule, en el cual tengo un FIBDatabase, un FIBTransaction, y unos FIBDataSet.
ok.

Ahora

Desde mi form principal, voy a llamar y mostrar a mi ventana (.Show) para capturar mis datos del nuevo registro.

el codigo que tengo es el siguiente:


frmNew:=TfrmNew.Create(Self);
frmNew.Caption:=IntToStr(NewFolio);
frmNew.Show;

Este codigo es el que ejecuto cada que pongo el comando de generar una nueva papeleta, es decir si abro 5 este codigo es el que se ejecuta 5 veces, con el cual las mantengo en pantalla y me muevo de una a otra sin problemas (solo el moverme :-( )

Cabe mencionar los componentes que tengo en esta ventana (frmNew):
2 FIBDataSet que estan ligados al FIBDatabase del DataModule, esto con el fin de que cada papeleta tenga su propia consulta y su grid, bien hasta ahi todo bien (creo) , tengo igualmente un boton en el frmNew con el cual mando a llamar otra ventana en la cual meto las notas para la papeleta seleccionada ( y aqui viene el problema), en esta nueva ventana (notas) grabo cada que doy un enter y limpio el campo esperando una nueva nota (esto por motivos de registro en cuanto a tiempo, fecha, usuario, etc), si la nota es vacia simplemente se cierra la ventana y regresa al frmNew, en la cual se me deben de reflejar las notas de esa papeleta.
cuando grabo las notas lo hago de la siguiente manera (la cual es donde creo que esta el problema)

frmNew.tblDetalles.Insert;
frmNew.tblDetallesFOLIO.AsString:=Caption;
frmNew.tblDetallesOPERADOR.Value:=Operador;
frmNew.tblDetallesNOTA.AsString:=NotasMemo.Lines.Text;
frmNew.tblDetallesHORA.Value:=Now;
frmNew.tblDetallesDIA.Value:=Now;
frmNew.tblDetalles.Post;

En esta form (frmNew) tengo: un boton para las notas (llama a un form en la cual meto las notas), un componente dbgrid y 2 FIBDataBase (reporte y notas de las cuales guardo hora, usuario y la nota en si) que usa al FIBDatabase que se encuentra en el DataModule (mencionado al inicio), al crearse la ventana (frmNew) asigno un nuevo numero de papeleta, y abro el FIBDatabase con la condicion de folio=NewFolio para que me muestre en el grid las notas relacionadas a este folio (las notas estan en otra tabla como mencione arriba) , bien pues cuando abro una sola papeleta no hay broncas click al boton par añadir notas y cuando voy guardando las notas aparecen en el grid de la papeleta, pero... cuando abro dos y me muevo a la primera papeleta y quiero meter las notas, las mete en la ultima pepeleta creada, ese es el problema, como le hago para que cada papeleta sea independiente y cuando me mueva a cualquiera los componentes o tablas que se activen sean las de la papeleta en uso y no la ultima generada.

¿Es por el crearlas con el mismo nombre? ¿Como puedo hacer esto?
Responder Con Cita