Ver Mensaje Individual
  #1  
Antiguo 01-09-2008
javequipos javequipos is offline
Registrado
 
Registrado: jun 2008
Posts: 1
Reputación: 0
javequipos Va por buen camino
se me pisan los registros

Estan funcionando 3 cajas a la vez emitiendo entradas, pero en algun momento dos cojen el numero de ticket 171 por que algun terminal no lo alcanza a grabar y se me pierde uno.

Parte de la rutina es la siguiente :

Código Delphi [-]
               Movtos.Last;
               Numero:=Movtos.FieldByName('Ticket').Value+1;
               Movtos.Append;
               Movtos.FieldByNAme('Ticket').AsFloat:=Numero;
               Movtos.Post;
               dbiSaveChanges(Movtos.Handle);
               Application.ProcessMessages;
               Movtos.SetKey;
               Movtos.FieldByName('Ticket').Value:=Numero;
               Movtos.GotoKey;
               Movtos.Edit;
               Movtos.FieldByName('TPV').AsString:=GetEnvironmentVariable('NOMPC');
               Movtos.FieldByName('Usuario').AsString:=Inicio.NomUser;
               Movtos.FieldByName('Cantidad').AsString:='1';

y el resto hasta el post.

Alguna solucion mejor para asegurarme que siempre tome el ultimo registro y lo tome para si ?....
no se si se entiende, pero en la operatoria sucede que si el ultimo registro guardado tiene como numero de ticket 170, y dos terminales venden simultaneamente 5 entradas por ejemplo, pero sucede que por alguna razon dos terminales toman el 170 y le suman 1 pero solo uno despues queda grabado...el otro se pierde.

La verdad esto me quedo cuadrado, no se que hacer ya.
Uso delphi 6 enterprise.

Gracias por la ayuda.

Última edición por dec fecha: 01-09-2008 a las 10:50:38.
Responder Con Cita