</Définition des blocages>
Les blocages permettent de définir sur un enregistrement ou un fichier entier le type de blocage que nous souhaitons définir (Aucun, Écriture ou Lecture + Écriture).
Il est possible de bloquer un fichier entier avec la fonction HBloqueFichier() ou uniquement un enregistrement avec la fonction HBloqueNumEnr() qui permet (en spécifiant le numéro d’enregistrement à bloquer) de ne bloquer que l’enregistrement souhaité.
</Les blocages en écriture>
Les blocages en écriture empêchent les modifications depuis une autre application mais n'empêche pas la lecture par tout le monde.
Cette option permet donc de signaler aux autres applications que cet enregistrement est en cours de modification par un autre programme.
Cela permet donc aux autres programmes de savoir qu’ils ne pourront pas enregistrer les modifications apportées à l’enregistrement en cours tant qu’il sera bloqué en modification.
Exemple :
Dans une fenêtre de gestion de la fiche client, on regarde si l’enregistrement de la fiche est bloqué en modification. Ainsi, nous pouvons informer l’utilisateur qu’un autre utilisateur a ouvert la fiche de ce client. Il est donc possible de l’en informer et par exemple de lui ouvrir la fiche client en lecture seule.
</Les blocages en lecture + écriture>
Les blocages en lecture et écriture permettent à un enregistrement de ne pas pouvoir être lu ni modifié par une autre application.
Cette option permet donc de masquer l’enregistrement aux autres applications.
Exemple :
Dans une fenêtre de fiche client, on bloque l’enregistrement à l’ouverture en mode lecture + écriture. Dans la liste des clients, ce client n’apparaitra pas lors du parcours du fichier car il ne sera pas lu.
</Utilisations>
Le plus fréquemment, il est utilisé le blocage en écriture seulement ainsi, toutes les données sont accessibles par les utilisateurs mais sont gérées par les blocages. Ainsi aucun écrasement de données ne peut être fait avec cette gestion des blocages.
Tips :
Si le déblocage d’un enregistrement / fichier n’est pas fait, il sera automatiquement débloqué lorsque l’application qui a initié le blocage sera fermée.