Purtroppo si

Ho più utenti che inseriscono dati e vanno ad aggiornare uno stesso record di totali.
Tutta la registrazione dei dati inseriti è in una transazione.
Ho fatto diverse prove ed attualmente ho aggiunto una tabella dove flaggo l'inizio delle operazioni di salvataggio. Questa operazione è fuori dalla transazione. Il tutto è fatto con un comando SQL di Update del record. Ho pensato: Quanto potrà durare l'esecuzione di una Update? Un decimo di secondo? Forse un centesimo di secondo? E vuoi che in quel lasso di tempo un altro operatore registri i suoi dati? Non accadra mai .... COL KAZ non accadrà mai.....
E' una settimana che il cliente mi rompe le palle con i problemi di quadratura. E il problema è sempre li'.

Il primo utente legge il record di lock, verifica che ha la posibilità di salvare i dati ma prima che effettui l'Update del record di lock qualche altro utente ha già effettuato la lettura dello stesso record trovandolo ancora non flaggato.

Troverò una soluzione ?

Qualche suggerimento?