4.3.2 Mode Multi
Transcription
4.3.2 Mode Multi
WLangage.book Page 375 Mardi, 23. avril 2013 1:59 13 Le mode Mono convient aux programmes ne partageant pas leurs fichiers pour développer simplement un programme. Appel du mode Mono Le mode Mono est le mode de blocage par défaut de WinDev. Remarque : Dans un programme, il est possible de passer du mode Mono au Multi. Exemple en mode Mono L’exemple suivant illustre le mécanisme de blocage et de déblocage du mode Mono. Les fonctions utilisées sont détaillées à la fin de cette partie. Vous remarquerez qu’aucun de ces programmes ne comporte de fonctions de blocage de fichier. // Recherche client selon son nom HLitRecherche(CLIENT,NOM,"MARTIN") Si HTrouve() alors Info ("Client trouvé") Sinon Info("Client inconnu") Fin Remarque : Après l'appel de la fonction HLitRecherche, le fichier "CLIENT" est ouvert et bloqué. Il est débloqué à la fin de l'exécution du programme. 4.3.2 Mode Multi Le mode Multi est le mode de blocage par défaut de WebDev. Le mode Multi se caractérise par : • les blocages sont gérés par le développeur dans les programmes, • les comptes rendus de blocage (permettant de savoir si aucun enregistrement d'un fichier n'est déjà bloqué par un autre programme) sont gérés dans les programmes par le développeur qui décide des traitements à effectuer. Utilisateur WinDev 5.5 : ce mode correspond à la fonction HModePerso de WinDev 5.5. Quand utiliser ce mode ? Le mode Multi doit être préféré au mode Mono lorsqu'un ou plusieurs fichiers d'un programme doivent être partagés par plusieurs programmes. En conséquence, le mode Multi doit être utilisé dès qu'une opération logique de mise à jour de plu- sieurs fichiers ne peut pas être interrompue : soit tous les fichiers sont mis à jour, soit aucun. En WinDev, le mode Multi propose une gestion automatique : • des erreurs de blocages, • des conflits de modification. Cette gestion automatique peut être personnalisée à tout moment grâce à la fonction HSurErreur. Pour plus de détails sur la personnalisation de la gestion automatique, consultez l’aide en ligne. Remarque : la gestion des blocages utilisée en WinDev 5.5 est toujours disponible par compatibilité. Appel du mode Multi Pour appeler le mode Multi dans un programme, il suffit d'exécuter au début du programme la fonction HMode(hModeMulti). Deux méthodes de mise en place des blocages sont disponibles : • Mode Direct : constante hModeDirect (valeur par défaut) : mise en place des blocages prioritaire (sur la modification par exemple). Ainsi, la modification d'un enregistrement sur lequel de nombreuses lectures sont réalisées a peu de chances d'être effectuée, mais les blocages sont plus rapides. Réservation : constante • Mode hModeRéservation : mise en place des blocages non prioritaire. Cette méthode permet de modifier immédiatement un enregistrement sur lequel de nombreuses lectures sont effectuées. Cette méthode est plus lente que la méthode hModeDirect. En résumé Le mode Multi permet de partager un ou plusieurs fichiers entre plusieurs programmes. En programmation, le développeur gère les blocages des fichiers. Il doit également tester HErreurBlocage après toutes les fonctions HyperFileSQL. Le mode Multi convient aux programmes gérant des fichiers pouvant être partagés. Les programmes traitent une opération logique de mise à jour de plusieurs fichiers ne pouvant pas être interrompue. Partie 7 : Gestion des fichiers de données 375