Les mémos
Je débute...
Visites

 988008 visiteurs

 1 visiteur en ligne

Recherche
 
Fermer

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


Catégorie : Les mémos - Formulaires
Page lue 8751 fois