Verrouillage de formulaire
En multi-utilisateurs, il est fortement conseillé de verrouiller les formulaires
Le verrouillage le plus approprié dans ce cas étant "Enregistremement modifié".
Le positionnement "à la main" de cette propriété, dans de nombreux formulaires, pouvant être rébarbatif, il suffit d'utiliser la fonction suivante :
Remarque : A utiliser à partir d'Access 2000
Function SetLock(Optional intValeur As Integer = 2)
'//
'// Usage: Call SetLock(x)
'//
'// Valeur de 'x' : 0 = Aucun , 1 = Général , 2 = Enregistrement modifié
'//
'// Si omis, la valeur 2 est utilisée
'//
Dim frm As Object
DoCmd.Echo False
For Each frm In CurrentProject.AllForms
DoCmd.OpenForm frm.Name, acDesign
Forms(frm.Name).Properties("RecordLocks").Value = intValeur
DoCmd.Close acForm, frm.Name, acSaveYes
Next frm
DoCmd.Echo True
End Function
La même fonction que ci-dessus, mais pour Access 97 qui ne connait pas la collection "AllForms"
Function SetLock97(Optional intValeur As Integer = 2)
'//
'// Usage: Call SetLock(x)
'//
'// Valeur de 'x' : 0 = Aucun , 1 = Général , 2 = Enregistrement modifié
'//
'// Si omis, la valeur 2 est utilisée
'//
Dim db As DAO.Database
Dim doc As DAO.Document
Set db = CurrentDb
DoCmd.Echo False
For Each doc In db.Containers("Forms").Documents
DoCmd.OpenForm doc.Name, acDesign
Forms(doc.Name).Properties("RecordLocks").Value = intValeur
DoCmd.Close acForm, doc.Name, acSaveYes
Next doc
Set db = Nothing
DoCmd.Echo True
End Function
Dernière modification : 08/02/2010 01:41
Catégorie : Les mémos - Formulaires
Page lue 11380 fois