Ver Mensaje Individual
  #3  
Antiguo 19-02-2010
mjjj mjjj is offline
Miembro
 
Registrado: mar 2007
Posts: 652
Reputación: 18
mjjj Va por buen camino
Asi es exactamente como lo tengo desarrollado.

El código se ejecutada de la siguiente manera:
Se presiona el button para una nueva orden.

El codigo del botton es asi:

Código Delphi [-]
begin
 
ibtransaction1.active:=true;
ibsql1.close;
ibsql1.sql.add('insert into compras (fecha, usuario) values (current_date, :usuario)');
ibsql1.parambyname('usuario').asstring := usuario;  // el usuario que este conectado
ibsql1.execquery,
 
ibtransaction1.commit;
 
ibquery1.close;
ibquery1.sql.clear;
ibquery1.sql.add('select max(noc) noc from compras');
ibquery1.open;
 
noc := ibquery1.fieldbyname('noc').asinteger;
end;


El campo NOC es autoincremental, pero al parecer cuando 2 usuarios tratan de realziar una nueva orden se duplicada los numeros y no entiendo bien que es lo que ocurre.

Es por eso que me dirijo a usted para resolver esto, o mejor aún una mejor forma de realizar esto.

Como lo haría usted??

Espero me puedan ayudar.
Responder Con Cita