MUIbase Support This Project
programmable relational database
with graphical user interface
This page is also available in Deutsch English

Documentation

La documentation ci-dessous fait partie de la distribution de MUIbase. Elle est également disponible sous forme de PDF.


[ << ] [ >> ]           [Sommaire] [Table des matières] [Index] [ ? ]

6. Gestion des projets

Dans ce chapitre vous trouverez :


6.1 Format de fichier

Un projet MUIbase se compose de plusieurs fichiers stockés dans un répertoire contenant le projet. Ce répertoire est d'abord créé quand vous sauvez le projet. Ne faite pas de supposition au sujet de la structure du répertoire ou des noms de fichier à l'intérieur du répertoire. En particulier, n'enlevez pas et ne placez pas de fichiers ni de répertoires supplémentaires dans ce répertoire ! Ils seraient supprimés lors d'une réorganisation ultérieure du projet.

Le répertoire contient un fichier appelé `Structure.mb' où sont stockées les descriptions de toutes les tables, champs, filtres, etc. Les en-têtes d'enregistrements sont également placés ici. Pour chaque table vous trouverez un fichier avec le nom de la table. C'est à l'intérieur que sont stockés tous les enregistrements d'une table. Il y a enfin et surtout des fichiers appelés `.lock', `.plock' et `.rlock'. Ils sont utilisés pour gérer l'accès du projet. Plusieurs instances de MUIbase peuvent ouvrir le projet en lecture et acquérir un accès partagé au fichier `.lock'. Mais une seule instance est autorisée en écriture en acquérant le fichier `.rlock', et en écrivant les données sur le disque en acquérant le fichier `.plock'. Notez que pour un bon fonctionnement le système de fichier doit offrir certaines garanties. Il est recommandé de tester d'abord le partage d'un projet avec plusieurs instances de MUIbase sur un système de fichier particulier avant d'utiliser cette fonctionnalité.


6.2 Informations

MUIbase conserve quelques informations sur chaque projet. Sélectionnez le menu `Projet - Information...' pour obtenir des informations sur le projet en cours. L'information retournée comprend le nom du projet, le nombre de tables, le nombre d'enregistrements dans toutes les tables, et une valeur montrant le nombre d'octets que vous pourriez gagner si vous réorganisiez ce projet. Le gain n'est cependant qu'une estimation grossière et ne doit pas être considéré comme une valeur exacte. Cette valeur est loin d'être précise, particulièrement si vous avez fait beaucoup de changements sur la structure du projet (en ajoutant ou en enlevant des champs).


6.3 Nouveau projet

MUIbase peut manipuler plusieurs projets en même temps. Vous êtes seulement limités par la mémoire disponible. Pour démarrer un autre projet, choisir le menu `Projet - Nouveau'. Une nouvelle fenêtre s'ouvre avec un projet vide. Vous pouvez maintenant définir la structure de ce projet (voir l'voir Projet - Éditeur de structure) ou charger un projet existant à partir du disque dur (voir voir Ouvrir - Projet).


6.4 Nettoyer un projet

Pour réinitialiser un projet sélectionnez le menu `Projet - Nettoyer - Projet'. Le projet en cours sera alors fermé et remplacé par un projet vide. Lorsque vous démarrez MUIbase sans projets vous arrivez automatiquement dans cet état.

Par la sélection du menu `Projet - Nettoyer - Enregistrements' vous démarrez un nouveau projet en utilisant la structure courante. Ce qui signifie que tout (excepté les données enregistrées du projet en cours) est employé pour le nouveau projet.

Si un projet en cours n'a pas été sauvé sur le disque dur et que vous avez sélectionnez le menu ci-dessus, une fenêtre de sûreté vous demandera alors la confirmation de l'opération.


6.5 Ouvrir un projet

Pour charger un projet sélectionnez le menu `Projet - Ouvrir - Projet' qui ouvrira une fenêtre vous permettant de choisir un projet. Il y a plusieurs projet de démonstration pour illustrer les fonctionnalités ve MUIbase. Pour les charger, sélectionnez le menu `Projet - Ouvrir - Démo'.

Si le projet chargé a son programme source placé à l'extérieur, le fichier source externe sera créé après ouverture du projet (voir voir Code source externe).

Si vous chargez un projet ou la structure d'un projet alors que le projet courant n'a pas été sauvé, une fenêtre de sûreté s'ouvrira vous demandant de confirmer l'opération.


6.6 Enregistrer le projet

Tous les changements effectués sur un projet se font uniquement en mémoire ou sont temporairement stockés lors de déchargements d'enregistrements (voir voir Décharger les enregistrements). Aussi, si vous voulez les stocker de façon permanente, vous devez enregistrer le projet sur votre disque dur, en choisissant le menu `Enregistrer'. Si votre projet n'a pas encore de nom, il vous sera demandé auparavant.

La raison pour laquelle MUIbase ne sauve pas automatiquement un projet qui a changé, est que, de cette façon, c'est vous qui décidé lorsque vous voulez sauver un projet! Vous pouvez toujours retourner sur la dernière version sauvée de votre projet en choisissant le menu `Projet - Rétablir la sauvegarde'. Ce mécanisme est semblable aux commandes `COMMIT' et `ROLLBACK' des systèmes de bases de données SQL.

Si vous enregistrez un projet, tous les enregistrements modifiés sont écrits sur le disque dur et le fichier `Structure.mb' est recréé. Avant de créer le nouveau fichier `Structure.mb', MUIbase renomme d'abord le fichier existant `Structure.mb' en `Structure.old' pour avoir une copie de sécurité au cas où l'opération échouerait.

Ce mécanisme garantit le chargement et la sauvegarde rapide des opérations, mais il n'est pas exempté de réorganisation. Si vous avez modifié beaucoup d'enregistrements alors l'emplacement physique où les enregistrements se trouvent et la fragmentation qui en résulte peut devenir désavantageuse. C'est pourquoi un menu `Projet - Enregistrer & réorganiser' existe, pour réaliser l'opération d'enregistrement & de réorganisation. Cette opération peut prendre un certain temps selon le nombre et la taille de vos enregistrements. L'opération enregistrer & réorganiser crée un nouveau répertoire et réécrit tous les fichiers reliés à un projet. Une fois cette opération réalisée, l'ancien répertoire est supprimé.

Un autre bon moment pour prévoir une réorganisation est lorsque vous avez fait des changements sur la structure de données d'un projet, par exemple après avoir ajouté un nouveau champ dans une table. Ces changements ne sont pas appliqués immédiatement à tous les enregistrements parce que cela prendrait trop de temps de charger chaque enregistrement, pour le modifier, et le sauver de nouveau sur le disque. Par conséquent ces changements sont mis sur une liste interne `À faire' qui est appliquée après le chargement d'un enregistrement. L'application de cette liste à un enregistrement ne prend que peu de temps. Cependant plus la liste devient longue, plus cela prend de temps. Réorganiser un projet oblige à appliquer cette liste `à faire' à tous les enregistrements, donc si vous avez fait des modifications à la structure du projet alors sa réorganisation réduira le temps de chargement des enregistrements.

Vous pouvez également enregistrer et réorganiser un projet sous un nouveau nom, ce qui conserve l'ancien projet intact. Pour faire cela il suffit d'utiliser le menu `Projet - Enregistrer & réorganiser en' qui vous demande de saisir un nouveau nom de projet.


6.7 Modes Administrateur et Utilisateur

MUIbase travaille soit en mode administrateur (mode par défaut), soit en mode utilisateur. Vous pouvez basculer d'un mode à l'autre en sélectionnant le menu `Projet - Passer en mode Administrateur' et `Projet - Passer en mode Utilisateur'. En mode Utilisateur, plusieurs éléments de menu sont désactivés et les éditeurs de structure, de programme et de requête ne sont pas disponibles. Ainsi seule l'édition basique d'enregistrement est possible. En mode Administrateur toutes les opérations sont autorisées.

Un mot de passe Administrateur peut être configuré pour un projet en sélectionnant le menu `Projet - Modifier le mot de passe Administrateur'. Une fois configuré, le mot de passe doit être saisi pour passer en mode Administrateur sinon le basculement sera refusé laissant le projet en mode Utilisateur.

Lors de l'ouverture d'un projet ayant un mot de passe Administrateur configuré, le projet est démarré en mode Utilisateur, dans le cas contraire (aucun mot de passe Administrateur n'est configuré), il est démarré en mode Administrateur.


6.8 Vérifier l'intégrité des données

MUIbase peut vérifier si toutes les données de votre projet sont encore valides et non corrompues par des programmes de votre fichier projet ou par des accidents systèmes. Choisir le menu `Projet - Vérifier l'intégrité' pour démarrer le processus.

Normalement, vous ne devriez jamais avoir besoin de cette fonctionnalité, MUIbase devrait toujours signaler que l'intégrité des données est parfaite. Mais si jamais il arrive que votre projet contienne des `erreurs internes', c'est-à-dire, quelques enregistrements ne peuvent plus être chargés, vous pourrez réparer votre projet en employant ce menu.

MUIbase écrira un fichier journal où il notera tous les enregistrements affectés et vous pourrez ensuite enregistrer et réorganiser le projet. Dans ce journal, les enregistrements qui pourraient être corrompus ainsi que les enregistrements qui ne sont plus accessibles et qui donc pourraient avoir été supprimés sont énumérés par leur numéro d'enregistrement dans l'ancien projet (corrompu) et par leur numéro d'enregistrement (entre parenthèses) dans le projet réorganisé.


6.9 Décharger les enregistrements

MUIbase n'a pas besoin de conserver tous les enregistrements d'un projet en mémoire. Ainsi le chargement et la sauvegarde des projets sont beaucoup plus rapide. En chargeant un projet, un en-tête enregistrement est alloué pour chaque enregistrement. Les données elle-même sont chargées seulement lorsque c'est nécessaire, par exemple quand elles sont affichées sur l'écran. Le nombre d'enregistrements est encore limité par la mémoire disponible puisque chaque en-tête d'enregistrement utilise quelques octets de mémoire.

Vous pouvez spécifier la taille de la mémoire que devrait utiliser MUIbase pour les enregistrements d'un projet. Choisir une des valeurs prédéfinies se trouvant dans le menu `Préférences - Cache d'enregistrements' (voir voir cache d'enregistrements). MUIbase ne préaffecte pas un bloc mémoire de la taille indiquée, il vérifie seulement de temps en temps si la quantité courante de mémoire allouée est plus grande que la valeur indiquée.

Si MUIbase manque de mémoire ou si la limite supérieure de la capacité mémoire a été atteinte alors MUIbase essaye de libérer autant de d'enregistrements de la mémoire que possible. Dans ce cas-là, MUIbase peut écrire les enregistrements modifiés sur le disque dur pour obtenir le maximum de mémoire disponible. Vous pouvez également forcer MUIbase à le faire en choisissant le menu `Projet - Décharger les enregistrements'.

MUIbase maintient une liste d'espace libre pour chaque fichier d'enregistrements. Si vous supprimez un enregistrement, l'emplacement dans le fichier d'enregistrements est ajouté à la liste d'espace libre. En outre, si vous changez un enregistrement et que celui-ci a besoin d'être écrit sur le disque dur, l'ancien emplacement dans le fichier est ajouté à la liste d'espace libre. Cependant MUIbase s'assure qu'un rechargement vous permettra toujours de retourner au point de la dernière opération de sauvegarde. MUIbase n'écrira pas sur les secteurs qui sont libres mais où un enregistrement existe toujours et qui pourra être accédé en rouvrant le projet.


6.10 Fermer un Projet

Quand vous avez terminé votre travail sur un projet vous pouvez le fermer en sélectionnant le menu `Projet - Fermer'. Ce qui libère la mémoire et toutes les ressources appartenant au projet. Si le projet contient des changements qui n'ont pas encore été sauvés, une fenêtre s'ouvrira vous demandant de sauver, de continuer ou d'annuler l'opération.

Pour la fermeture d'un projet vous pouvez également choisir le menu `Projet - Sauver & Fermer' qui sauve d'abord le projet s'il y a eu des changements avant de le fermer.


[ << ] [ >> ]           [Sommaire] [Table des matières] [Index] [ ? ]

Ce document a été généré le 10 Octobre 2017 par texi2html