LOCKTABLE(TRUE,TRUE)

Studiando la gestione dei Lock sul DB Navision nativo ho visto che sui manuali viene detto che per evitare di bloccare si può utilizzare la LOCKTABLE(TRUE,TRUE) nel seguente modo: Lettura dati; LOCKTABLE(TRUE,TRUE); Elaborazione dei dati; Modifica dei dati; Ora quando si va a modificare i dati tramite la MODIFY questa controlla che la versione non sia cambiata prima di aggiornare e in caso contrario genera un errore. Però in realtà il comportamento è lo stesso anche se non metto la LOCKTABLE(TRUE,TRUE) nel senso che la MODIFY controlla il Timestamp del record e se questo non è cambiato lo modifica altrimenti genera un errore. Quindi mi sa che non ho capito bene l’utilità della LOCKTABLE(TRUE,TRUE) Un saluto a tutti.

Se esegui due batch che fanno transazioni di scrittura sui medesimi dati, credo che l’uso di locktable sia indispensabile. Nel caso del db nativo hai l’opportunità di non bloccare tutta la tabella ma solo i record con una versione, diciamo così, superata.