if not DataModule.IBTransaction1.InTransaction then DataModule.IBTransaction1.StartTransaction; try //// sql insert o update DataModule.IBTransaction1.CommitRetaining; except on E: Exception do begin DataModule.IBTransaction1.RollbackRetaining; Application.MessageBox( PCHAR('Ocurrio un error.'+#13+E.MESSAGE), 'Error',MB_ICONERROR ); exit; end; END;
este es el que siempre he utilizado para guardar datos en la base de datos, en este caso guardar una factura en mi sistema de facturacion, he estado haciendo pruebas en dos computadoras, tratando de guardar un registro al mismo tiempo, pero me esta generando un dead lock al guardar al mismo tiempo, he dejado todo el codigo en una sola transaccion y no se porque siempre me salta el dead lock, he revisado el codigo y no doy con el error, espero puedan recomendarme algo para solucionar el problema.