6
« en: Martes 25 de Octubre de 2005, 02:49 »
Necesito saber cómo abrir una tabla de Access en Modo Exclusivo, o sea, que un usuario la abra y que mientras la tenga abierta, ningún otro usuario pueda acceder a ella.
Por ejemplo, estoy capturando pagos, los cuales tienen esta estructura..:
Clave Otros Datos....
00001 .......
00002 ......
Cuando agrego un pago, la clave es generada automáticamente, a como se vayan agregando se va generando, mi forma de generar esa clave es así.... antes de grabar el nuevo registro, abro la tabla con un "SELECT MAX(clave) AS maximo FROM Tabla....." le sumo uno y ya tengo la clave, mi pregunta es....
Quiero que al momento de grabar el pago, se abra la tabla "TABLA" en modo exclusivo, o sea, bloquearla al resto de los usuarios para que no puedan abrirla mientras busco el MAXIMO y le agrego el nuevo registro....
¿CÓMO HAGO ESO..........?
La operación de agregar lo hago asi...:
Set Rs = New ADODB.RecordSet
Rs.Open "select max(Clave) as mayor from Pagos", Rc, adOpenKeyset, adLockOptimistic
If Not IsNull(Rs("mayor")) Then
Nva_Cve = Val(Rs("mayor")) + 1
Else
Nva_Cve = 1
End If
Rs.Close
Rs.Open "select * from Pagos", Rc, adOpenKeyset, adLockOptimistic
Rs.AddNew
Rs("clave") = Nva_Cve
Rs......
Rs.Update
Rs.Close
Lo que pretendo es que la tabla PAGOS quede bloqueada al resto de los usuarios mientras hago la operación de sacar el Máximo y grabar el registro..
Uso Access 2000, y ADODB para manejar los archivos