Suivez-nous sur X

|
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z,
ALL
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
A propos d'Obligement
|
|
David Brunet
|
|
|
|
En pratique : MUIbase - Éditeur de structures
(Article écrit par Steffen Gutmann et extrait de muibase.sourceforge.net - mars 2006)
|
|
MUIbase dispose de deux modes de fonctionnement différents : le mode
édition d'enregistrement où il est possible de saisir et parcourir les
enregistrements, et le mode édition de structure où se définit la
structure de la base, c'est à dire les tables, les champs et
l'apparence d'un projet. Ce chapitre décrit l'éditeur de structure et
explique comment gérer la structure d'un projet.
Pour basculer du mode édition d'enregistrement à celui d'édition de
structure, il faut sélectionner l'élément "Éditeur de structure" dans le
menu "Projet", ce qui ferme toutes les fenêtres et ouvre la fenêtre de
l'éditeur de structure. Pour revenir au mode édition d'enregistrement,
il faut sélectionner le menu "Projet - Fermer l'éditeur de structure" ou
simplement fermer l'éditeur de structure en cliquant sur le gadget de
fermeture dans la barre de titre de la fenêtre.
La fenêtre de l'éditeur de structure est divisée en trois parties :
la partie supérieure gauche composée du groupe "Tables" servant à gérer
les tables du projet, la partie inférieure gauche quant à elle occupée
par le groupe "Champs" permet de gérer les champs d'une table, et pour
finir la partie droite est occupée par un groupe "Affichage" pour gérer
les éléments graphiques du projet (interface).
Gestion des tables
Depuis le groupe "Tables" de l'éditeur de structure, vous pouvez
créer, changer, supprimer et trier les tables.
Création de tables
Pour créer une nouvelle table, appuyez sur le bouton "Nouveau" du
groupe "Tables" ce qui ouvrira la fenêtre "Nouvelle table" contenant :
- Un champ de texte pour nommer la table. Chaque table doit avoir
un nom unique commençant par une lettre majuscule suivie d'autres
lettres, de chiffres ou de tirets bas. Les caractères non-ASCII
(tréma, double point) ne sont pas autorisés. En revanche, il est
tout à fait possible d'utiliser des caractères non-ASCII dans
l'interface utilisateur de la table.
- Un groupe "Nombre d'enregistrements" dans lequel vous définissez
combien d'enregistrements comportera la table. "Illimité" signifie
que la table peut contenir un nombre infini d'enregistrements,
"Exactement un" signifie que la table ne peut comporter qu'un seul
enregistrement. Ce champ est utile pour contrôler le projet (see
Tables).
- Un groupe "Déclencheurs" dans lequel vous pouvez définir le nom de
deux fonctions. Dans le champ "Nouveau" vous entrez le nom de la
fonction à appeler à chaque fois que l'on veut créer un nouvel
enregistrement, alors que le champ "Suppression" contient le nom de
la fonction à appeler à chaque suppression d'enregistrement. Vous
pouvez également utiliser les boutons déroulants situés à droite
des champs de texte pour choisir à partir d'une liste de toutes
les fonctions celle à appeler. Si vous laissez ces champs vides,
alors ce sont les actions par défaut qui seront exécutées (les
enregistrements sont crées automatiquement et les enregistrements
sont effacés après une éventuelle requête de confirmation).
- Une zone à cocher "Nombre de modifications" qui, si elle est sélectionnée, fait
en sorte que toute création ou suppression d'un enregistrement compte comme une modification
du projet. Si elle n'est pas sélectionnée, toute modification apportée à la table
(ou à l'un de ses attributs) est ignorée.
- Une zone à cocher "Modifications du protocole". Si cette option est sélectionnée,
toute création ou suppression d'un enregistrement est enregistrée dans le journal de
projet. Sinon, aucune modification dans la table (ou dans l'un des attributs de la table)
n'est jamais enregistrée.
- Deux boutons "Ok" et "Annuler" pour fermer la fenêtre.
Une fois que vous avez effectué tous les réglages, appuyez sur le bouton
"Ok" pour créer la nouvelle table. Si vous avez fait une erreur comme
entrer un nom invalide, un message s'affichera et vous donnera des
informations sur l'erreur. À l'inverse si tout se passe correctement,
la fenêtre "Nouvelle table" se fermera et la nouvelle table s'affichera
dans la liste des tables de l'éditeur de structure.
Modification de tables
Après avoir créé une table, vous pouvez toujours la modifier. Il
vous suffit de double-cliquer sur le nom de la table et la fenêtre
"Modifier la table" apparaîtra. Cette fenêtre est similaire à celle de
création de table et vous permet de modifier les champs en saisissant une
nouvelle valeur.
Quand vous avez effectué toutes vos modifications, appuyez sur le
bouton "Ok" pour fermer la fenêtre.
Vous ne pouvez changer le nombre d'enregistrements de "Illimité" en
"Exactement un" si la table contient déjà plus d'un enregistrement.
Suppression de tables
Pour supprimer une table, sélectionnez son nom dans la liste de
l'éditeur de structure, puis cliquez sur le bouton "Supprimer" sous la
liste. Avant de supprimer définitivement la table, une requête de
confirmation sera ouverte. Si vous confirmez en appuyant sur le bouton
"Supprimer", la table sera irrémédiablement supprimée.
Un problème se pose si la table est utilisée ailleurs dans un projet.
Dans ce cas, la table ne peut pas être supprimée simplement, mais
toutes les références à cette table doivent être éliminées du programme.
Si la table à supprimer est utilisée dans un projet, l'éditeur
apparaîtra et affichera la première référence de la table. Vous devez
alors modifier le programme de manière à éliminer toute référence à la
table. Après avoir éliminé une référence, vous pouvez aller à la
prochaine en appuyant sur le bouton "Compiler". Vous pouvez à tout
moment annuler l'opération en appuyant sur le bouton "Rétablir" et fermer
l'éditeur.
Tri des tables
Vous pouvez trier les tables dans le groupe "Tables" de l'éditeur de
structure de plusieurs façons. Vous pouvez les arranger manuellement
par glisser/déposer ou vous pouvez utiliser le bouton "Tri" sous la liste
pour les classer par ordre alphabétique (Tri A-Z) ou bien encore en
fonction de l'ordre de la liste d'affichage (Tri Z-A).
Gestion des champs
Avec le groupe "Champs" de l'éditeur de structure, vous pouvez créer,
copier, modifier, effacer et trier les champs de la table sélectionnée
dans "Tables".
Création de champs
Pour créer un nouveau champ dans la table active, cliquez sur le
bouton "Nouveau" dans le groupe "Champs". Cette action ouvrira la fenêtre
"Nouveau champ" qui contient les éléments suivants :
- Un champ de texte pour entrer le nom du champ. Chaque champ d'une
table doit avoir un nom unique et commencer par une lettre
majuscule suivie d'autres lettres ou chiffres ou tiret bas. Les
caractères non-ASCII (les trémas par exemple) ne sont pas
autorisés. Cependant il est toujours possible d'utiliser pour les
champs (dans l'interface utilisateur) n'importe quel caractère y
compris non-ASCII.
- Une liste "Type" dans laquelle vous précisez le type de champ.
- Une section sous le champ "Type" pour préciser les réglages
spécifiques au type de champ choisi.
- Un champ "Déclencheur" dans lequel vous donnez le nom d'une fonction
qui sera appelée chaque fois que l'utilisateur voudra modifier le
contenu du champ dans un enregistrement. Vous pouvez utiliser le
bouton contextuel (ou bouton déroulant) à droite du champ de texte
pour sélectionner un nom parmi une liste de noms de fonction. Si
vous laissez ce champ vide, alors l'action par défaut sera
exécutée, ce qui veut dire que la valeur entrée sera simplement
stockée dans le champ.
- Une case à cocher "Tenir" compte des modifications. Si elle est
cochée, toute modification dans un champ d'un enregistrement, sera
considérée comme une modification du projet. Décochez cette case
si vous voulez ignorer les modifications de champ.
- Une zone "Protocole des modifications" qui, si elle est cochée, enregistre
toute modification apportée à l'attribut dans un enregistrement. Notez que cet élément
n'est activé que lorsque l'élément "Modifications du journal dans le tableau"
a également été défini.
- Deux boutons "Ok" et "Annuler" pour fermer la fenêtre.
Lorsque vous avez effectué vos réglages, appuyez sur le bouton "Ok"
pour créer le nouveau champ. Si vous avez fait une erreur tel qu'un
nom invalide, un message s'affichera et vous donnera des informations
sur l'erreur. À l'inverse si tout se passe correctement, la fenêtre
Nouveau champ se fermera et le nouveau champ s'affichera dans la liste
des champs de l'éditeur de structure.
Réglages liés au type de champ
Voici les modifications spécifiques aux types de champ que l'on peut effectuer :
Les réglages spécifiques aux champs de type "Texte" sont les suivants :
- Un champ de type "Entier Max length" pour définir la longueur maximale pour ce champ.
- Un champ de type "Texte Valeur par défaut" pour définir la
valeur par défaut de ce champ. On peut entrer n'importe quel
texte dans la limite de la longueur maximale.
Les réglages spécifiques aux champs de type Entier, Réel, Date et
Heure sont les suivants :
- Un champ "Valeur par défaut" dans lequel vous définissez la
valeur par défaut de ce champ. Vous avez le choix entre NIL
et Autre. Si vous utilisez "Autre" vous devez spécifier une
valeur initiale dans le champ de texte à droite.
- Un champ de type "Texte chaîne NIL" dans lequel vous définissez
le texte qui sera affiché lorsque le champ contiendra la valeur NIL.
Le réglage spécifique aux champs de type "Booléen" comprend un champ
"Valeur" par défaut dans lequel vous entrez la valeur par défaut : soit NIL soit TRUE.
Les réglages spécifiques aux champs de type "Choix" sont les suivants :
- Un bouton "Édition des entrées" pour ouvrir la fenêtre "Édition
des entrées" et donnez un nom au champ de type "Choix".
- Un champ "Valeur par défaut" dans lequel vous entrez la valeur par défaut.
Les réglages spécifiques aux champs de type "Référence" sont les suivants :
- Une liste de toutes les tables pour sélectionner celle vers
laquelle pointera le champ. En cliquant sur la table, le champ ira vers la référence.
- Un champ "Affichage auto ?". S'il est coché, la table de
référence sera mise à jour automatiquement en fonction de
l'enregistrement de référence, chaque fois que l'utilisateur
passera à un autre enregistrement.
- Un champ "Filtrer ?". S'il est coché, le filtre de référence de
ce champ sera activé.
Les champs de type Référence ont toujours NIL comme valeur par défaut.
Le réglage spécifique aux champs de type "Virtuel" concerne le champ
de texte "Calculer" dans lequel vous donnez le nom de la fonction à
lancer pour calculer la valeur du champ. Vous pouvez vous servir
du bouton déroulant pour sélectionner un nom parmi une liste de
tous les noms de fonctions.
Les champs de type "Mémo" et "Bouton" n'ont pas de réglages propres.
La valeur par défaut des champs de type "Mémo" est une ligne de texte vierge.
Éditeur d'entrée
L'éditeur d'entrées intervient à chaque fois que vous devez définir
une liste comme une liste de noms pour un champ de type
Choix. L'éditeur se compose d'une fenêtre qui contient :
- Une liste montrant les entrées existantes. Cliquer sur une entrée
la sélectionne et elle sera visible dans le champ de texte sous la
liste. Vous pouvez utiliser le glisser/déposer pour réarranger les entrées.
- Un champ de texte "Entrée" qui montre l'entrée sélectionnée et
permet également de la modifier. Les modifications ne seront prises
en compte que lorsque vous appuyez sur la touche "Entrée". S'il n'y a
aucune entrée de sélectionner, la pression sur "Entrée" ajoutera une
nouvelle entrée à la liste.
- Un bouton "Nouveau" qui désélectionne l'entrée courante, ce qui
permet d'ajouter de nouvelles entrées dans le champ de texte "Entrée".
- Un bouton "Supprimer" qui efface l'entrée sélectionnée de la liste.
- Un bouton "Trier" pour trier par ordre alphabétique la liste d'entrées.
- Deux boutons "Ok" et "Annuler" pour quitter l'éditeur d'entrées.
Après avoir ajouté toutes les entrées ou les avoir changées, pressez
le bouton "Ok" pour fermer la fenêtre.
Copie de champs
Dans le cas où vous avez besoin de plusieurs champs similaires, il
vous est possible de copier un champ. Pour cela, sélectionnez le champ
à dupliquer et cliquez sur le bouton "Copier" sous la liste de champ.
Cette action ouvre une requête "Copier le champ" montrant les options du
champ sélectionné. Modifiez certaines parties comme le nom puis cliquez
sur "Ok" pour générer une copie du champ.
Modification de champs
Après la création d'un nouveau champ, il est toujours encore possible
de modifier ses réglages. Pour cela, double-cliquez sur le nom du champ
ce qui laissera apparaître la requête "Modifier le champ". Cette requête
est semblable à celle de création d'un champ et permet de modifier certains
paramètres. Les paramètres ne pouvant être modifiées, comme le type de champ,
apparaissent grisés.
Les choses à prendre en compte lors d'un changement de champ sont les suivantes :
- Le type de champ ne peut être changé. Si vous devez changer le
type d'un champ, il est préférable d'en créer un nouveau du type
voulu et de copier les enregistrements du champ à remplacer vers
le nouveau champ en entrant un programme MUIbase simple dans
l'éditeur de requête.
- Si vous modifiez la valeur par défaut d'un champ, alors uniquement
les nouveaux enregistrements auront cette nouvelle valeur d'initialisation d'enregistrement.
- Certaines précautions sont à prendre pour les champs de type "Choix"
lors de changement d'entrées. Les entrées sont uniquement utilisées
pour visualiser le contenu du champ, mais en interne, ce sont des
numéros qui sont stockés et utilisés comme index dans la liste
d'entrées. Donc si vous modifiez l'ordre des entrées, vous ne
modifiez pas le numéro en interne mais sa visualisation sous forme
d'entrées ! Par conséquent, vous ne devriez pas changer l'ordre
des entrées après avoir crée un champ de type "Choix". Par contre
l'ajout de nouvelles entrées à la fin de la liste ne pose pas ce
genre de problème. Pour une plus grande flexibilité avec
possibilité de changer l'ordre des entrées, utilisez plutôt un
champ de type "Texte" associé à un Listview déroulant.
- La table de référence d'un champ "Référence" ne peut pas être modifiée.
Si vous en avez terminé avec les modifications, pressez le bouton "Ok" pour fermer la requête.
Suppression de champs
Pour effacer un champ, cliquez sur son nom dans la liste des champs
de l'éditeur de structure et appuyez sur le bouton "Supprimer" situé sous
la liste. Une requête de confirmation apparaîtra et si vous confirmez
en appuyant à nouveau sur "Supprimer", le champ sera définitivement effacer.
Un problème peut se poser lorsque le champ est utilisé ailleurs dans
le projet. Dans ce cas, le champ ne peut être simplement effacé mais
toutes les références à celui-ci doivent impérativement disparaître du
programme. Si le champ à effacer est utilisé ailleurs, l'éditeur de
programme apparaîtra et affichera la première occurrence de ce champ.
Vous devrez alors modifier le programme de manière à ce qu'il ne
contienne plus aucune référence à ce champ. Après chaque suppression
d'une référence, vous passez à la suivante en appuyant sur le bouton
"Compiler". À tout moment vous pouvez annuler toute l'opération en
appuyant sur Rétablir et en refermant l'éditeur de programmes.
Tri des champs
Le classement des champs dans la partie "Champs" de l'éditeur de
structure peut se faire de plusieurs façons. Vous pouvez le faire à la
main par glisser/déposer, ou utiliser le bouton "Tri" sous la liste qui
permet un tri par ordre alphabétique (Tri A-Z), ou encore un tri
suivant l'ordre de l'affichage de la liste (Tri Z-A).
Gestion de l'affichage
Dans la partie "Affichage" de l'éditeur de structure, vous définissez
l'agencement des éléments de la base de données dans l'interface
utilisateur. Cette section comporte une partie choix, une partie liste
et plusieurs boutons.
Champ d'affichage
Le champ d'affichage contient les éléments suivants :
- Un élément de sélection avec deux réglages, "Fiche de table" et
"Fenêtre principale". Dans "Fiche de table" vous définissez
l'agencement des champs de la table active dans l'interface
utilisateur. Dans "Fenêtre principale", vous définissez l'arrangement des tables.
- Une liste montrant la caractéristique actuelle de l'interface
utilisateur. La liste se présente sous forme d'arborescence. Les
éléments ayant une flèche à leur gauche sont des objets d'IG
composés pouvant être ouverts ou fermés en (double-) cliquant sur
le symbole de la flèche. Un double-clic sur l'élément lui-même
ouvre une fenêtre permettant l'édition de ses réglages. Tous les
objets de l'interface graphique issus du même objet parent sont placés de manière
identique (horizontalement ou verticalement). La représentation
est déterminée par l'objet d'interface graphique parent : les éléments des
tableaux, onglets et fenêtres sont placés verticalement alors que
les éléments des groupes sont placés en fonction des réglages
définis par l'éditeur de groupe.
- Un bouton "+" (ajouter) pour ajouter la table sélectionnée ou le
champ sélectionné (suivant ce qui est affiché dans la partie choix)
à la liste. En général, les tables et les champs sont ajoutés à la
liste automatiquement après leur création.
- Un bouton "-" (supprimer) pour retirer de la liste ce qui est
sélectionné. Si vous retirez une table, la totalité du formulaire
de la table sera enlevé de l'interface utilisateur. De ce fait,
vous ne pourrez plus voir la table dans l'interface projet et
pourrez cacher des tables entières. Idem pour les champs : retirez
un champ équivaut à le cacher de l'interface projet.
- Deux boutons "Haut" et "Bas" pour déplacer l'élément sélectionné vers
le haut ou vers la bas dans la liste.
- Deux boutons "Entrée" et "Sortie" pour déplacer l'élément sélectionné
vers un niveau hiérarchique plus élevé ou plus bas dans la liste.
- Un bouton "Onglet" pour ajouter un onglet à la table.
- Un bouton "Texte" pour ajouter un objet texte dans la liste.
- Un bouton "Image" pour ajouter un objet image.
- Un bouton "Séparateur" pour insérer un espace entre les autres objets.
- Un bouton "Balance" pour ajouter un objet balance dans la liste. Cet objet est très
utile pour contrôler la taille des autres objets graphiques.
- Un bouton "Groupe" pour ajouter un objet groupe dans la liste.
Avant d'appuyer sur ce bouton, vous pouvez sélectionner plusieurs
éléments dans la liste pour les déplacer dans un nouveau groupe.
- Un bouton "Registre" pour ajouter un groupe enregistré dans la liste.
Comme pour l'objet groupe, il est possible de sélectionner
plusieurs objets graphiques afin de les déplacer vers le nouveau
groupe enregistré.
- Un bouton "Fenêtre" pour ajouter une nouvelle fenêtre dans la liste.
Comme précédemment, il est possible de sélectionner plusieurs
objets graphiques pour les déplacer dans la nouvelle fenêtre.
Éditeur de table
Lors de l'ajout d'une table, un objet d'affichage par défaut est créé. Pour modifier les
paramètres de l'objet de table, double-cliquez sur la table dans la liste "Afficher liste"
et la fenêtre "Afficher table". La fenêtre comporte trois sections qui sont séparées en
onglets Général, Panneau et Enregistrement.
La section "Généralités" contient les éléments suivants :
- Un champ numérique "Poids" pour spécifier le poids de l'objet. La valeur de cette
zone détermine combien d'espace, par rapport aux autres objets, la table occupe dans
la disposition finale de la fenêtre.
- Un champ "Arrière-plan" avec un champ à cocher "Défaut" pour spécifier à quoi doit
ressembler l'arrière-plan de la table. Si vous cochez le champ "Défaut", un fond par
défaut est utilisé, sinon vous pouvez cliquer sur le champ "Arrière-plan"
pour ouvrir une fenêtre permettant de spécifier un fond personnalisé.
- Un champ à cocher possède un panneau qui spécifie si un panneau doit être affiché
en haut de la table. Décochez cette case pour masquer le panneau.
La section "Panel" n'est activée que si le champ "Has" panel a été coché.
Il contient les éléments suivants :
- Un champ de texte "Titre" pour donner un titre à l'entête de l'onglet.
- Un champ de texte "Police de caractères" avec un bouton déroulant
pour choisir la police du titre. Si vous laissez le champ vide, la
police par défaut sera utilisée.
- Un champ "Arrière-plan" avec une case à cocher "Défaut" pour définir
l'image de fond de l'entête du panel. Si le champ "Défaut" est
coché, alors l'image de fond par défaut sera utilisée. Sinon vous
pouvez cliquer sur "Arrière-plan" pour ouvrir une requête et en sélectionner une.
- Un champ "Num/All". S'il est coché, le numéro de l'enregistrement en
cours et le nombre total d'enregistrements apparaîtront dans la partie droite de l'entête du panel.
- Un champ "Filtre" qui, si coché, ajoute un bouton de filtrage à
l'entête du panel et permet d'activer ou non le filtrage
d'enregistrement de la table. S'il n'est pas coché, l'élément du
menu "Table - Changer filtre" sera aussi désactivé pour cette table
et vous ne pourrez plus ajouter de filtre pour la table.
- Un champ "Arrows" pour ajouter deux boutons flèches au masque de la
table. Ces flèches permettent la navigation entre les enregistrements de la table. S'il
n'est pas coché, vous ne pourrez pas naviguer dans les enregistrements et tous les sous-menus du
menu Goto record ainsi que les éléments "Search for", "Search forward",
et "Search backward" du menu "Table" seront désactivés.
- Deux boutons "Ok" et "Annuler" pour fermer la fenêtre.
Si vous en avez terminé avec les modifications, pressez le bouton "Ok" pour fermer la fenêtre.
Éditeur de champ
Lorsque vous ajoutez un champ à la liste, un objet graphique par
défaut lui sera attribué. Pour modifier les réglages de cet objet, un
double-clic ouvre la fenêtre "Display attribute". Le contenu de cette
fenêtre dépend du type de champ. Les éléments suivants sont disponibles
pour la plupart des types de champ :
- Une partie texte "Titre" pour le titre qui sera affiché à côté de
l'objet champ (ou à l'intérieur de l'objet si c'est un bouton).
Si vous laissez cette partie vide, aucun titre ne sera affiché.
- Une partie choix "Position" pour définir la position du titre (s'il
y en a un) par rapport un champ objet. Vous avez le choix entre
Gauche, Droite, Haut et Bas.
- Une partie de texte "Raccourci" pour la saisie d'une lettre qui sera
utilisée conjointement avec la touche "Amiga" pour activer l'objet.
- Une case "Home". Si elle est cochée, l'objet de champ correspondant
sera l'objet "home". Cet objet sera le placement du curseur à
chaque fois qu'un enregistrement sera entré. C'est très pratique
dans le cas où vous entrez vos données en commençant toujours par
le même champ. Lorsque vous définissez un champ en tant qu'objet
"home", tous les autres objets de champ de cette table perdront
cette propriété.
- Une case "Navigation cyclique". Si elle est cochée, l'objet fera
partie de la chaîne active qui utilise la touche
"Tab" pour faire défiler les objets. Ne cochez pas cette cas si
vous ne voulez pas inclure cet élément.
- Une case "Read only" qui, si elle est cochée, attribuera l'état
+lecture seule à l'objet. Le signe "+" signifie que vous pouvez
lire le contenu mais pas le modifier. À noter cependant que
l'ajout d'un bouton contextuel à l'objet permet de changer son contenu
pour l'un des choix proposés dans la liste déroulante.
- Une partie choix "Alignment" pour fixer la representation du contenu
d'un objet. Vous avez le choix entre Center, Gauche et Droite pour
respectivement afficher au centre, à gauche ou à droite.
- Une zone "Activé/désactivé". Si "Toujours activé" est sélectionné
alors l'objet est toujours activé indépendamment de
l'enregistrement affiché. "Désactivé sur initial" désactive l'objet
pour l'enregistrement initial mais l'active dans tous les autres
cas. Si "Calculer activation" est choisi, alors une fonction pour
calculer l'état d'activation de l'objet peut être spécifiée sur la
droite. La fonction ne requiert aucun argument. Si elle renvoie
NIL alors l'objet est désactivé, sinon il est activé. Dans le cas
où le déclencheur est laissé vide ou ne peut as être trouvé,
l'objet est désactivé.
- Une partie numérique "Poids" pour définir le poids de l'objet.
Cette valeur définie la place occupée par cette objet dans la
représentation finale par rapport aux autres objets. Pour la
plupart des types de champs, cela n'affectera que la taille
horizontale parce que la plupart des objets ont une taille
prédéfinie. Pour un champ de type "Memo", cela affectera également
la taille verticale.
- Une partie "Police de caractères" pour choisir la police utilisée
pour l'affichage du contenu du champ. La police par défaut sera
utilisée si vous laissez ce champ vide.
- Une partie "Arrière-plan" avec une case à cocher "Défaut" pour définir
la représentation du fond du champ. Si la case "Défaut" est cochée,
un fond par défaut sera utilisé. Sinon vous cliquez sur
"Arrière-plan" pour ouvrir une fenêtre de sélection pour le fond.
- Une partie édition "Infobulle" pour définir le texte qui sera
affiché dans la bulle d'aide pour l'objet de champ.
- Deux boutons "Ok" et "Annuler" pour fermer et quitter la fenêtre.
Une fois les réglages effectués, appuyez sur le bouton "Ok" pour fermer la fenêtre.
Réglages liés au type de champ
Voici les modifications spécifiques aux types de champ que l'on peut effectuer :
Les réglages spécifiques aux champs de type "Texte" sont les suivants
- Un champ de type "Entier Max length" pour définir la longueur maximale pour ce champ.
- Un champ de type "Texte Valeur par défaut" pour définir la
valeur par défaut de ce champ. On peut entrer n'importe quel
texte dans la limite de la longueur maximale.
Les réglages spécifiques aux champs de type "Entier", "Réel", "Date" et "Heure" sont les suivants :
- Un champ "Valeur par défaut" dans lequel vous définissez la
valeur par défaut de ce champ. Vous avez le choix entre "NIL"
et "Autre". Si vous utilisez "Autre" vous devez spécifier une
valeur initiale dans le champ de texte à droite.
- Un champ de type "Texte chaîne NIL" dans lequel vous définissez
le texte qui sera affiché lorsque le champ contiendra la valeur "NIL".
Le réglage spécifique aux champs de type "Booléen" comprend un champ
"Valeur" par défaut dans lequel vous entrez la valeur par défaut :
soit "NIL" soit "TRUE".
Les réglages spécifiques aux champs de type Choix sont les suivants :
- Un bouton "Édition des entrées" pour ouvrir la fenêtre "Édition
des entrées" et donnez un nom au champ de type "Choix".
- Un champ "Valeur par défaut" dans lequel vous entrez la valeur par défaut.
Les réglages spécifiques aux champs de type Référence sont les suivants :
- Une liste de toutes les tables pour sélectionner celle vers laquelle pointera le champ.
En cliquant sur la table, le champ ira vers la référence.
- Un champ "Affichage auto ?". S'il est coché, la table de
référence sera mise à jour automatiquement en fonction de
l'enregistrement de référence, chaque fois que l'utilisateur
passera à un autre enregistrement.
- Un champ "Filtrer ?". S'il est coché, le filtre de référence de
ce champ sera activé.
Les champs de type "Référence" ont toujours NIL comme valeur par défaut.
Le réglage spécifique aux champs de type "Virtuel" concerne le champ
de texte "Calculer" dans lequel vous donnez le nom de la fonction à
lancer pour calculer la valeur du champ. Vous pouvez vous servir
du bouton déroulant pour sélectionner un nom parmi une liste de
tous les noms de fonctions.
Les champs de type "Mémo" et "Bouton" n'ont pas de réglages propres.
La valeur par défaut des champs de type "Mémo" est une ligne de texte vierge.
Éditeur de texte
Lorsque vous ajoutez un objet de texte dans la liste d'affichage ou
lorsque vous en modifiez un par double-clic, la fenêtre "Texte" apparaîtra
et proposera les options suivantes :
- Une partie texte "Titre" pour définir le texte à afficher.
- Une partie numérique "Poids" pour définir la largeur de l'objet de texte.
- Une partie choix "Police de caractères" pour définir la police du
texte. Si vous laissez le champ vide, la police par défaut sera utilisée.
- Une partie "Arrière-plan" et une partie "Défaut" pour définir les réglages du fond de l'objet de texte.
- Deux boutons "Ok" et "Annuler" pour fermer la fenêtre.
Quand vous en avez terminé avec les réglages, cliquez sur le bouton "Ok" pour fermer la fenêtre.
Éditeur d'image
L'éditeur d'images apparaît lorsque vous ajoutez un nouvel objet image ou lorsque vous double-cliquez
sur une image existante. Il contient les options suivantes :
- Une partie "Poids" dans laquelle vous définissez la largeur de
l'objet image dans la representation finale.
- Une partie "Image" dans laquelle vous choisissez l'image à afficher.
- Une partie "Taille" dans laquelle vous définissez le type de
redimensionnement. Si vous choisissez "Redimensionnable", l'objet
image sera redimensionnable, alors que si vous choisissez "Fixé", la
taille sera fixe.
- Deux boutons "Ok" et "Annuler" pour fermer la fenêtre.
Quand vous en avez terminé avec les réglages, cliquez sur le bouton "Ok" pour fermer la fenêtre.
Éditeur d'espacement
Après avoir ajouté un objet d'espacement à la liste d'affichage,
vous pourrez modifier ses paramètres en double-cliquant sur celui-ci,
ce qui ouvrira la fenêtre "Séparateur" comportant les options suivantes :
- Un champ "Délimiteur" qui, s'il est sélectionné, affiche une barre
horizontale ou verticale (en fonction de la représentation de
l'objet parent) au milieu de l'objet d'espacement. Ceci est très
utile pour séparer les différents éléments dans la fenêtre de représentation.
- Un champ numérique "Poids" pour fixer la largeur de l'objet.
- Deux champs "Arrière-plan" et "Défaut" pour les réglages de fond.
- Deux boutons "Ok" et "Annuler" pour fermer la fenêtre.
Quand vous en avez terminé avec les réglages, cliquez sur le bouton "Ok" pour fermer la fenêtre.
Éditeur de groupe
Après avoir ajouté un objet de groupe à la liste d'affichage, vous
pourrez modifier ses paramètres en double-cliquant sur celui-ci, ce qui
ouvrira la fenêtre "Groupe" comportant les options suivantes :
- Une partie texte "Titre" pour donner un titre, centré au-dessus du
groupe. Si vous laissez ce champ vide, aucun titre ne sera affiché.
- Une partie numérique "Poids" pour fixer la largeur de l'objet.
- Deux champs "Arrière-plan" et "Défaut" pour les réglages de fond.
- Une case "Bordure" qui, si elle est sélectionnée, affichera un cadre autour du groupe.
- Une case "Horizontal" qui, si elle est cochée, affichera le groupe
de façon horizontale et sera défini comme HGroup dans la liste
d'affichage. Sinon, le groupe sera organisé de façon verticale et
sera défini comme VGroup dans la liste d'affichage.
- Une case "Espacement" qui, si elle est sélectionnée, ajoute de
l'espace entre les objets enfants du groupe. Sinon aucun espace
supplémentaire ne sera ajouté entre les objets.
- Deux boutons "Ok" et "Annuler" pour fermer la fenêtre.
Quand vous en avez terminé avec les réglages, cliquez sur le bouton "Ok" pour fermer la fenêtre.
Éditeur de registre
Vous pouvez modifier les réglages d'un objet groupe enregistré en
double-cliquant dessus, ce qui ouvrira la fenêtre "Groupe registre"
proposant les options suivantes :
- Une partie numérique "Poids" pour fixer la largeur de cet objet.
- Une partie "Entrée" pour donner un nom à chaque page enregistrée.
Il est recommandé d'avoir précisément le même nombre d'entrées que
d'éléments présents dans le groupe enregistré.
- Deux boutons "Ok" et "Annuler" pour fermer la fenêtre.
Quand vous en avez terminé avec les réglages, cliquez sur le bouton "Ok" pour fermer la fenêtre.
Éditeur de fenêtre
Vous pouvez modifier les réglages d'un objet fenêtre en
double-cliquant dessus, ce qui ouvrira l'éditeur de fenêtre et
proposera les options suivantes :
- Une partie texte "Titre" dans laquelle vous entrez le texte qui sera
affiché dans la barre de titre de la fenêtre ainsi que dans le
bouton de fenêtre optionel.
- Une partie texte "Id" qui peut contenir jusqu'à
quatre caractères correspondant à l'id d'une fenêtre MUI. Si vous
ajoutez un id, alors la taille et la position de la fenêtre
pourront être sauvegardés grâce à l'option "figer" de MUI. Notez
que chaque id défini dans MUIbase devra être unique. Si par
accident vous utilisez un id existant, les fenêtres partageront
les mêmes réglages. Les identifiants commençant par un souligné "_"
sont réservés à un usage interne à MUIbase. Si vous laissez le
champ vide, aucun id ne sera défini et les dimensions de la
fenêtre seront stockés dans le fichier du projet. La fenêtre
principale a toujours comme id les quatre premiers caractères du
nom du projet. Définir un id pour une fenêtre est utile dans le
cas où l'édition d'un projet se fait sous différentes
configurations, parce que les coordonnées de la fenêtre sont
mémorisées individuellement pour chaque configuration.
- Une case "Bouton" qui, si elle est cochée, ajoute un bouton pour
ouvrir la fenêtre dans la fenêtre parent. Si cette case n'est pas
cochée, la fenêtre ne peut être ouverte qu'à partir d'un programme
MUIbase, via la fonction SETWINDOWOPEN. Les
options suivantes définissent l'affichage du bouton de fenêtre :
- Une partie texte Raccourci dans laquelle vous définissez le
raccourci permettant d'activer le bouton de fenêtre.
- Une zone "Activé/Désactivé". Si "Toujours activé" est sélectionné,
alors le bouton de fenêtre est toujours actif. "Désactivé par
défaut" désactive le bouton s'il est dans une table et que celle-ci
affiche son enregistrement initial, sinon le bouton est activé.
Si "Calcul actif" est choisi alors une fonction pour calculer l'état
d'activation du bouton de fenêtre peut être spécifiée sur la
droite. La fonction ne requiert aucun argument. Si elle renvoie
NIL alors le bouton est désactivé, sinon il est activé. Dans le
cas où le déclencheur n'est pas renseigné ou ne peut pas être
trouvé, le bouton de fenêtre est désactivé. De plus si la case "Fermer la
fenêtre si désactivée" est cochée alors la fenêtre est
automatiquement fermée lorsque le bouton est désactivé.
- Une partie numérique Poids dans laquelle vous définissez la largeur du bouton de fenêtre.
- Une partie "Police de caractères" pour définir la police du bouton
de fenêtre. Si vous laissez ce champ vide, la police par défaut sera utilisée.
- Deux champs "Arrière-plan" et "Défaut" pour définir les réglages de fond du bouton de fenêtre.
- Deux boutons "Ok" et "Annuler" pour fermer la fenêtre.
Quand vous en avez terminé avec les réglages, cliquez sur le bouton "Ok" pour fermer la fenêtre.
Exporter une structure
Parfois, il peut être utile d'avoir une vue d'ensemble de toutes les
tables et champs d'un projet, par exemple lorsque vous voulez écrire un
programme MUIbase. Pour cela, vous sélectionnez l'option du menu
"Project - Exporter la structure", ce qui vous demandera un nom de
fichier dans lequel sera stocké la liste des tables et des champs.
Vous obtiendrez en sortie le nom du projet suivi de toutes les tables
qui y sont associées. Pour chaque table, vous aurez le détail de tous
les champs avec leurs types et les fonctions optionnelles qu'elles
lancent. Pour les champs de type "Virtuel", vous aurez également les
dépendances permettant la mise à jour automatique de la valeur des
champs.
|