Instale firebird 2.5 en un pc windows XP
y la aplicacion lo realizo en Delphi XE un sistema de productos
La base de datos esta configurara asi
DatabaseName:=192.168.0.70
:\Yupana 2013\Win32\Debug\STORE.GDB
funciona perfectamente cuando 1 sola PC esta utilizando los productos
mi problema es la cuando una 2 o 3ra. .... 5ta PC utiliza el mismo producto
ejemplo. la PC 1 realiza la venta de un MOUSE y descuenta del almacen la cantidad
la PC2 puede vender cualquier otro producto que no sea MOUSE ,
el problema es cuando quieren vender el mismo producto al mismo tiempo.
me sale "deadlock update conflicts with concurrent update concurrent transaction number is 1125"
esto es problema del Firebird?
o es del codigo
posteo lo que esta haciendo el codigo en esta parte
Código Delphi
[-]
if agregar.Caption='&Modificar' then
begin
agregar.Caption:='&Agrega';
cancelar1.Enabled:= true;
end;
_DM.consulta1.SQL.Text:= 'select * From inalmacen Where id_inal='+idprod.text;
_DM.consulta1.Open;
_DM.consulta2.SQL.Text:= 'update INALMACEN set cantidad_inal=:auxcantidad_inal Where id_inal='+ idprod.text;
_DM.consulta2.ParamByName('auxcantidad_inal').Value:=inttostr(strtoint(_DM.consulta1.FieldByName('ca ntidad_inal').Value) - strtoint(cantidad.Text)) ;
_DM.consulta2.ExecSQL;
_DM.consulta2.Close;_DM.consulta1.Close;
_DM.talmacen.Active:=false;
_DM.talmacen.Close;
_DM.talmacen.Active:=true;
end;
recalco que cuando una sola PC, funciona de PELO
mi problem es cuando varias PC quieren vender el mismo producto y tienen que desconectar de almacen.
tengo esta misma aplicacion con MYSQL y NO tengo problema alguno. funciona en red o como local.
pero necesito en FIREBIRD: