Ver Mensaje Individual
  #1  
Antiguo 25-10-2003
tulio tulio is offline
Miembro
 
Registrado: may 2003
Ubicación: Argentina
Posts: 301
Reputación: 22
tulio Va por buen camino
Thumbs up Cuando trabajan dos usuarios simultaneos solo graba la factura de uno

Hola querido Foro

Tengo un sistema de facturacion que en forma monousuaria andaba barbaro, utilizando delphi 6 e Interbase 6 (el que trae delphi ) , componentes Ibdataset y windows 98 2da edic..
El problema me surgio cuando configure una maquina como servidora y quise facturar con el mismo programa en forma simultanea con dos puestos de trabajo, solamente me graba lo que hace un solo usuario, lo que factura el otro no graba nada en absoluto, siendo el mismo ejecutable y la misma base de datos. algo rarisimo, el codigo de la parte que grabo es el siguiente

Procedure tformu_FaCtura.Graba;
var
J : Integer;
sql ,input: string;
year, month, Day, hour, min : Word;
begin
try
tablas.t_nro_factu.Open;
tablas.t_nro_factu.active:=true;
nro_factu:=tablas.t_nro_factuAnro_factura.asinteger;
nro_factu:=nro_factu+1;
tablas.t_nro_factu.edit;
tablas.t_nro_factuAnro_factura.asinteger:=nro_factu;
tablas.t_nro_factu.post;
tablas.tran.CommitRetaining;

tablas.t_cabe_fac.Open;
tablas.t_cabe_fac.Append;
tablas.t_cabe_facnro_factura.asinteger:=nro_factu;
tablas.t_cabe_facsuCUrsal.asinteger:=1;
tablas.t_cabe_facnro_cliente.asinteger:=strtoint(edit_nroC.text);
tablas.t_cabe_facfe.value:=date();
tablas.t_cabe_factipo_fac.asstring:='A';
tablas.t_cabe_facestado.asstring:='A';
tablas.t_cabe_facimporte.asfloat:=neto ;
tablas.t_cabe_facforma_de_pago.asstring:='A';
tablas.t_cabe_facu.asstring:=F_PASSWORD.USUARIO;
tablas.t_cabe_fac.post;

tablas.t_items_fac.open;
FOR J:=1 TO 33 DO
Begin
If v_cod[J]<> '' then
begin
tablas.t_items_fac.Append;
tablas.t_items_facnro_factura.asinteger:=nro_factu;
tablas.t_items_facsucursal.asinteger:=1;
tablas.t_items_faccod_articulo.asstring:=v_cod[J];
tablas.t_items_facdesCri.asstring:=v_des[J];
If v_buluni[J]='B' then
tablas.t_items_faccantidad.asinteger:=v_canti[j]
Else
tablas.t_items_faccanti_uni.asinteger:=v_canti[j];
tablas.t_items_facimporte.asfloat:=v_impo[j]-(v_Jivatot[J]);
tablas.t_items_faciva.asfloat:=v_Jivatot[j];
tablas.t_items_facdesCu.asfloat:=v_desCuento[J];
tablas.t_items_facTIPO_FAC.asSTRING:='A';
tablas.t_items_facestado.asSTRING:='E';////emitido
tablas.t_items_fac.post;
End;
End;

tablas.tran.CommitRetaining;

except
tablas.tran.RollbackRetaining;
end;


/////////////

Por favor si me ayudan porque no me doy cuenta que puede pasar

Saludos y Gracias

tulio
Responder Con Cita