Réalisation d’une application pas à pas avec 4D

Alex Vimory

Ce document vous permet de vous familiariser avec le RAD 4D au travers de la programmation d’une application.

Pour cela, on a choisi de créer une base de gestion de vente de CD. Ce document montre les différentes étapes de la création de la base avec des captures écran qui facilitent la tâche.

Commentez ♪

- Titre : Réalisation d’une application pas à pas avec 4D

- Auteur : Alex Vimory

- Parution : 15 février 2009

- Licence : Copyright ® 2009 Alex Vimory. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Premier contact

- II. Création et programmation de boutons

- II-A. Création de boutons

- II-B. Programmation du bouton

- II-C. Création et programmation du bouton « Client »

- III. Affichage automatique au démarrage

- III-A. Créer la méthode initialisation

- III-B. Appeler la méthode initialisation

- IV. Affichage d’un message automatique à la fermeture

- IV-A. Création de la méthode « Message_fermeture »

- IV-B. Appel de la méthode « Message_fermeture »

- V. Utilisation du menu

- VI. Remplacement des boutons

- VI-A. Bouton « Terminé »

- VI-A-1. Comment ajouter une image à la bibliothèque

- VI-A-2. Importation de l’image à partir de la bibliothèque

- VI-B. Les autres boutons de formulaire

- VI-C. Création des textes

- VI-D. Les boutons fonctionnels

- VII. Navigation entre les pages de formulaire

- VIII. Création des tables

- IX. La saisie et la suppression des données

- X. Liens

- XI. Création de formulaires de sortie

- XI-A. La création

- XI-B. Intégration du formulaire

- XII. Programmation des boutons fonctionnels

- XII-A. Bouton « Rechercher »

- XII-B. Bouton « Trier »

- XII-C. Bouton « Etat »

- XII-D. Bouton « Ajouter »

- XII-E. Bouton « Imprimer »

- XII-F. Bouton « Supprimer »

- XIII. Fin de la base

I - Premier contact

On lance le logiciel 4D v11 Release3 en appuyant sur cette icône.

La première page de bienvenue s’affiche, il faut donc cliquer sur : « Créer une nouvelle application ».

En appuyant, une autre fenêtre s’ouvre.

Il faut choisir une base vierge et cliquer sur Créer la base.

Il faut donner un nom à cette base et l’enregistrer dans un emplacement précis en cliquant sur : « Enregistrer ».

Après avoir créé et enregistré la nouvelle base et pour commencer le travail, l’explorateur s’ouvre et nous donne le choix de créer des formulaires projets ou formulaires tables.

On commence par créer le formulaire projet.

Il faut choisir « formulaire projet » puis cliquer sur le bouton qui se trouve en bas.

Donner un nom à ce formulaire « Bibliothèque ».

Cliquer sur OK, un formulaire vide apparaît alors.

Les outils qui apparaissent en haut permettent de gérer les options d’affichage dans le formulaire et de manipuler des objets.

À côté de chaque outil, on trouve un petit triangle à droite qui affiche les différentes options de l’outil.

II - Création et programmation de boutons

II-A - Création de boutons

On va travailler sur la page 0, et pour cela il faut appuyer sur la flèche pour arriver à la page désirée.

Les boutons et les textes qu’on va mettre sur la page 0 seront visibles quelle que soit la page affichée.

Sélectionnez l’outil à gauche du formulaire.

Tracer le bouton sur le formulaire.

II-B - Programmation du bouton

Nous allons programmer ce bouton pour qu’il ferme le formulaire.

Double cliquer sur le bouton pour faire apparaître la liste des propriétés.

À partir de cette liste, on va modifier le nom du bouton et déterminer son utilité.

Dans le thème objet, on modifie le titre « Terminé ».

Appuyez sur Entrée et le bouton va changer de nom.

Dans le thème « Action », cliquez sur « Action standard » et « changer Pas d’action » en « Valider ».

Ce changement va permettre de fermer la fenêtre.

Pour tester les changements effectués sur le bouton, fermez la liste de propriétés et cliquez sur le triangle vert qui s’affiche en haut à gauche de la fenêtre de formulaire .

En cliquant sur ce triangle, l’exécution se lance et une fenêtre s’ouvre.

En cliquant sur Terminé, cette fenêtre se referme.

II-C - Création et programmation du bouton « Client »

On va créer un autre bouton, le renommer « Client » et on va le placer au-dessous du 1er bouton.

Ce 2e bouton va nous servir après pour afficher la liste des clients.

On sait que le 1er bouton « Terminé » est déjà fonctionnel et maintenant on doit rendre le 2e bouton aussi fonctionnel.

Alors on commence par effectuer un clic droit sur le bouton et on clique sur méthode objet.

Une fenêtre de la méthode objet s’ouvre et on doit saisir la ligne suivante :

ALERTE("Liste des Clients bientôt disponible")

En fermant la fenêtre méthode objet, on va remarquer la présence du badge sur le bouton client, ce qui signifie qu’une méthode est associée maintenant à ce bouton.

On va tester ce bouton, alors on clique sur le triangle vert d’exécution puis sur le bouton client.

Cette alerte doit être affichée.

Maintenant on va répéter le même travail effectué sur le bouton client pour avoir un formulaire qui ressemble à l’exemple suivant :

Il ne faut pas oublier d’associer une alerte pour chaque bouton, donc sur le formulaire bibliothèque chaque bouton doit porter le badge .

N’oublions pas de changer les alertes pour qu’ils soient identiques aux noms des boutons.

Pour vous aider à bien positionner les boutons, un trait pointillé rouge apparaît au moment de glissement du bouton.

III - Affichage automatique au démarrage

Nous voulons maintenant afficher automatiquement le formulaire dès que l’utilisateur lance le programme. Pour cela, il faut suivre les étapes suivantes :

III-A - Créer la méthode initialisation

Affichez l’explorateur en cliquant sur .

Après avoir ouvert l’explorateur, on clique sur l’icône .

On clique sur le bouton en bas de l’explorateur pour ajouter une nouvelle méthode.

Nommez cette nouvelle méthode « Initialisation » puis cliquez OK.

Saisir le code suivant :

$NumFenetre:=Creer fenetre formulaire("Bibliothèque")
DIALOGUE("Bibliothèque")
FERMER FENETRE($NumFenetre)

La 1re ligne demande de créer un conteneur dimensionné à la taille du formulaire Bibliothèque en tenant compte de ses propriétés.

La 2e ligne demande d’afficher le formulaire Bibliothèque dans le conteneur.

La 3e ligne referme le conteneur lorsqu’on clique sur le bouton Terminé.

Pour vérifier que cette méthode fonctionne bien, on clique sur le bouton en haut à gauche de la fenêtre méthode. Le formulaire doit apparaître et on le ferme en cliquant sur bouton Terminé.

Cette méthode d’initialisation est déjà créée, il suffit maintenant de l’appeler pour qu’elle s’affiche automatiquement au démarrage.

III-B - Appeler la méthode initialisation

IL faut d’abord afficher l’explorateur puis l’icône .

Ouvrir la liste « méthode base » et double cliquer sur la méthode base « sur ouverture ».

Nous allons faire appel à la méthode « Initialisation », il suffit d’écrire les premières lettres du nom de la méthode (Init) puis d’appuyer sur la touche tabulation.

Le reste du mot va apparaître.

Pour tester l’affichage automatique :

- il faut d’abord fermer la méthode « base sur ouverture » ;

- allez à menu « Fichier » puis « Ouvrir bases récentes » et choisissez le nom de votre base.

En faisant cela, la base va se refermer puis s’ouvrir, le formulaire doit apparaître en mode utilisateur et en cliquant sur « Terminé » le mode développement réapparaît.

IV - Affichage d’un message automatique à la fermeture

IV-A - Création de la méthode « Message_fermeture »

Après avoir créé un affichage automatique au démarrage, on va afficher automatiquement le message « À bientôt » à la fermeture de la base.

On commence par les mêmes étapes de l’affichage automatique au démarrage et on nomme cette nouvelle méthode « Message_fermeture ».

On clique sur OK, la méthode « Message_fermeture » s’ouvre et on doit saisir le code suivant :

ALERTE("A bientôt")

Pour vérifier que cette méthode fonctionne bien, on exécute. Le formulaire doit apparaître et on peut le fermer en cliquant sur bouton OK.

Cette méthode est déjà créée, il suffit maintenant de l’appeler pour qu’elle s’affiche automatiquement à la fermeture de la base.

IV-B - Appel de la méthode « Message_fermeture »

Il faut d’abord afficher l’explorateur puis l’icône .

Ouvrir la liste « méthode base » et double cliquer sur la méthode base « sur fermeture ».

Nous allons faire appel à la méthode « Message_fermiture » en écrivant le nom de la méthode dans la méthode « sur fermeture ».

Si on veut tester cette alerte, on doit fermer la base et il faut que l’alerte « A bientôt » apparaisse.

V - Utilisation du menu

Avec 4D, on peut utiliser jusqu’à 32 000 barres de menu et on peut nommer chaque barre pour pouvoir l’identifier.

On va voir maintenant comment créer une barre de menu et l’appeler à partir d’une ligne de menu.

Nous allons commencer par afficher la boite à outils en cliquant sur le bouton .

La fenêtre « Boite outils » s’affiche, on clique sur le bouton Menu .

On change le titre de « Menu bar 1 » en « Bibliothèque » en haut droite de la fenêtre dans « Titre ».

On affiche le menu contextuel par un clic droit sur le menu Bibliothèque puis on choisit « attacher un menu à la barre Bibliothèque » et enfin « Nouveau menu ».

On renomme ce menu « Outils ».

Par un clic droit sur le menu « Outil », on affiche le menu contextuel et on choisit « ajouter une ligne au menu outils ».

Renommer cette ligne « Tableau de bord ».

On choisit la méthode « Initialisation » pour « nom de méthode ».

Cliquez sur « Tester l’application » dans le menu « Exécuter » pour tester cette application.

VI - Remplacement des boutons

VI-A - Bouton « Terminé »

On va maintenant remplacer les boutons utilisés par d’autres, plus esthétiques, et définir la fonction du bouton.

On fait un double clic sur le bouton « Terminé » pour faire apparaître sa liste de propriétés.

Lorsque la liste s’affiche, on va changer le nom de variable exemple « b_ter ».

Dans la propriété type, on va choisir « bouton image ».

Le bouton va changer est s’est transformé comme suit :

On observe aussi que les propriétés relatives à l’image « la référence et la source » ont changé.

L’image sera appelée de la bibliothèque d’image par son nom ou bien son numéro, mais pour le moment aucune image ne figure dans la bibliothèque.

Nous allons maintenant voir comment ajouter une image pour la bibliothèque.

VI-A-1 - Comment ajouter une image à la bibliothèque

Ouvrir la boite à outils .

On clique sur .

Cliquez sur le menu déroulant en bas et choisissez « Ouvrir ».

Choisissez l’image, dans notre cas on a choisi « Fermer.png ».

On voit que l’image choisie est réellement réalisée sur 4 images qui présentent les 4 états du bouton :

1. Affiché

2. Cliqué

3. Survolé

4. Désactivé

La fenêtre des propriétés d’image va s’afficher.

On va donner un nom à l’image et indiquer qu’elle est composée de 4 images, donc 1 colonne et 4 lignes. On va également changer la taille pour 48 x 48.

Cliquer sur OK pour enregistrer les changements.

la bibliothèque d’images n’est plus vide maintenant puisqu’on a importé la 1re image.

VI-A-2 - Importation de l’image à partir de la bibliothèque

On ferme maintenant la boite à outils et on va revenir au formulaire, on clique deux fois sur le bouton pour afficher la liste des propriétés, et on change la source et le numéro d’image que le bouton doit utiliser.

On va remarquer que le bouton a changé et prend cette forme :

On va essayer de le modifier pour qu’il s’affiche correctement.

Le bouton doit être affiché sur 1 colonne et 4 lignes.

On va activer les animations suivantes : Bascule sur passage du curseur, Retour sur relâchement du clic et Dernière imagette si désactivé.

Régler la largeur et la hauteur à 48.

Alors le bouton prend sa forme idéale.

Pour tester, on clique sur exécuter .

VI-B - Les autres boutons de formulaire

On va maintenant répéter ces manipulations avec chacun des boutons de formulaire. On va donc faire appel dans la bibliothèque d’image à chaque bouton.

La source est toujours la bibliothèque d’images, mais il ne faut pas oublier de changer le numéro pour chaque image.

Tous les boutons doivent être sur 1 ligne x 1 colonne.

Voici les cases à cocher dans les propriétés d’animation.

VI-C - Création des textes

Maintenant on va créer des textes pour ces boutons.

Dans le formulaire bibliothèque on clique sur le bouton .

On choisit alors la zone du texte avec le curseur et on saisit le nom du bouton.

Dans la propriété texte, on va déterminer la police du texte, la taille, gras, italique, souligné, et même la couleur de la police.

Après avoir effectué ces changements sur chacun des boutons du formulaire, on exécute le travail effectué en cliquant sur

Maintenant, le formulaire doit s’afficher ainsi :

Appuyez sur Terminé pour fermer le formulaire.

VI-D - Les boutons fonctionnels

On va maintenant ajouter les boutons fonctionnels en haut et à gauche du bouton Terminé.

Ces boutons sont : Ajouter, Rechercher, Trier, Imprimer, Etats et Supprimer.

La source est toujours la bibliothèque d’images sans oublier de changer le numéro pour chaque image.

Les boutons doivent être découpés en 4 lignes x 1 colonne.

Les propriétés d’animation sont :

On va aussi créer des textes pour ces boutons.

Après exécution, le formulaire doit être affiché comme ci-dessous.

Pour le moment, on ne va pas programmer ces boutons, nous le ferons plus loin.

VII - Navigation entre les pages de formulaire

Grâce au bouton de manipulation créé sur la page 0, on va rendre la navigation possible entre les différentes pages du formulaire.

Pour cela, il faut d’abord créer des nouvelles pages de 2 à 6, mettre des informations sur chacune des pages et enfin rendre la navigation possible entre ces pages.

On commence par créer les pages, on pourra le faire par 2 méthodes.

1re méthode :

- afficher le formulaire « Bibliothèque » ;

- on choisit « Ajouter page » dans le menu « formulaire » ;

- confirmer le message d’ajout.

Répéter l’opération 6 fois pour avoir 6 pages (7 si on compte la page 0).

2e méthode :

- on ajoute des pages en cliquant sur la flèche droite du panneau de navigation jusqu’à arriver à 6/6 ;

- confirmer le message d’ajout pour chaque page.

Maintenant on va indiquer pour chaque bouton la page du formulaire qu’elle doit afficher.

On va commencer par le 1er bouton « Client » qui doit afficher le contenu de la page 1.

Sur la page 0, on fait un clic droit sur le bouton « Clients ».

On clique sur la méthode objet.

On efface son contenu et on saisit la ligne suivante :

ALLER A PAGE(1)

On va répéter ces étapes pour tous les autres boutons sans oublier de changer le numéro de page à chaque fois.

Pour vérifier et contrôler les changements des pages, on ajoute un texte ou une image ou même un bouton sur les pages.

Après avoir testé le formulaire, on peut dire qu’il est maintenant prêt à l’utilisation, mais il reste à le remplir de données.

VIII - Création des tables

Les données peuvent être stockées dans une table, un fichier texte, un fichier XML et même dans d’autres bases de données.

Pour le moment, on va prendre le cas du stockage des données dans une table.

On va commencer par créer une table, pour cela il faut suivre les étapes suivantes :

Cliquez sur l’icône structure .

La fenêtre structure s’affiche et on clique sur le bouton en haut à gauche de la fenêtre.

Choisissez table.

La nouvelle table créée s’affiche avec l’inspecteur.

Nommez la table Clients.

Pour créer une table, il existe aussi d’autres méthodes

Pour créer une table, il existe aussi d’autres méthodes

- clic droit sur structure puis « Ajouter table » ;

- menu Fichier, nouveau, Table ;

- ou bien à partir du bouton « Nouveau » de la barre d’outils.

Après avoir créé la table, on va maintenant ajouter ses champs

Cela se fait par double clic sur la première ligne de la table, saisir le nom du champ et valider par la touche Entrée.

On refait la même chose sur les autres lignes pour créer les autres champs.

On revient sur chaque champ pour changer son type.

Pour ajouter un champ dans une table, on peut aussi faire un clic droit sur la structure de la table et cliquez sur Ajouter champ.

Plusieurs opérations pourront être effectuées sur les champs des tables :

- on peut modifier le nom ou le type d’un champ à partir d’une clique droite ;

- Pour déplacer un champ, on clique sur la touche Alt le curseur se transforme en une main et on glisse le champ dans sa nouvelle position.

À la fin de la création des champs, la table Clients doit s’afficher de cette façon :

Vous pouvez modifier les attributs de chaque champ en faisant double clic sur le champ.

Les clés primaires (ID) doivent être définies de la façon suivante :

On va continuer à créer les autres tables pour qu’elles s’affichent de la manière suivante :

IX - La saisie et la suppression des données

Dans cette étape, on va créer des formulaires de saisie à l’aide de l’éditeur de formulaires et on va commencer à entrer des données.

Nous allons créer des formulaires standards créés automatiquement par 4D pour cette première saisie.

Dans le menu « Enregistrement », on choisit « Afficher la table courante ».

4D nous propose de créer les formulaires.

On clique sur « Oui pour toutes ».

4D a créé maintenant deux formulaires :

- le formulaire « ENTREE » qui présente l’ensemble des champs d’un enregistrement ;

- le formulaire « SORTIE » qui présente la liste des enregistrements de la sélection.

La liste des tables s’affiche.

On sélectionne la table clients dans la liste des tables.

Dans le menu « Enregistrement », on choisit « Nouvel enregistrement ».

La fenêtre de saisie de données s’ouvre.

La première chose à remarquer est que l’ID est incrémenté automatiquement grâce à l’option que l’on a sélectionnée précédemment.

Il nous reste à saisir les données des autres champs.

Pour enregistrer les données saisies sur cette fiche, on clique sur le bouton « Valider » .

La liste sera enregistrée et 4D passe automatiquement à un nouvel enregistrement.

Pour arrêter et revenir à la liste, on clique sur le bouton « Annuler » .

Voici un exemple d’enregistrements pour la table clients :

Exemple de catégories :

Pour supprimer un enregistrement :

- double clic sur le champ à supprimer pour l’afficher ;

- cliquer sur le bouton supprimer enregistrement ;

- confirmer le message de suppression

L’enregistrement table par table est facile à faire et pratique, mais cela ne nous permet pas de gérer l’enregistrement dans d’autres tables, ce qui veut dire que si deux champs sont reliés l’un à l’autre, lorsqu’on change le contenu de l’un, l’autre n’est pas changé.

Pour cela, 4D propose des solutions, parmi lesquelles l’utilisation des liens. C’est ce que l’on va utiliser de suite.

X - Liens

Il est très simple de créer un lien sur 4D, il suffit de cliquer sur un champ de départ et glisser jusqu’à arriver à un champ d’arrivée.

Les deux champs doivent être de même type et on trace toujours le lien d’un champ de la table N (FOREIGN KEY) vers un champ de la table 1 (PRIMARY KEY).

Après avoir fini de construire les liens, notre structure doit être comme cela :

Double cliquez sur chaque lien, l’inspecteur s’affiche, on le modifie de la façon suivante :

Le lien aller automatique permet lors de la saisie d’une nouvelle Det-vente d’avoir en mémoire l’enregistrement du client dont on a mis le code.

Le lien retour automatique permet lors de l’enregistrement d’un technicien d’avoir en mémoire la liste de Det-vente réalisée par le client.

On refait cela pour tous les liens.

On peut finir maintenant les enregistrements en respectant les liens.

À partir du lien, on peut voir que le cd 1 appartient à la catégorie film. On va découvrir maintenant une autre option que le lien permet.

Dans la table vente, on va ajouter un nouvel enregistrement. Dans le champ ID-client, saisir un ID qui n’existe pas. Cette fenêtre s’affiche :

Puisque l’enregistrement n’existe pas dans la table Clients, 4D nous propose de le créer. En cas d’erreur, on clique sur le bouton pour revenir et ressayer avec un autre code existant.

Si on veut créer le nouveau client avec le nouveau code, on clique sur le bouton et on continue à remplir les informations puis on valide.

XI - Création de formulaires de sortie

Après avoir saisi différentes données, on va les intégrer sur l’interface de bibliothèque. On va commencer par créer le formulaire liste à l’aide de l’assistant.

XI-A - La création

Affichez l’explorateur et choisissez Formulaires.

On sélectionne la table clients.

On choisit « Nouveau formulaire avec l’assistant » en bas de la liste.

On le donne le nom « liste ».

On choisit le type de formulaire.

On indique le modèle utilisé pour les boutons.

Le menu liste des champs doit être affiché comme ceci :

On clique sur le bouton pour qu’apparaisse la liste des champs sélectionnés à droite.

Si on veut supprimer l’un des champs, on clique sur le bouton .

Après tout cela, il faut cliquer sur le bouton .

Sélectionnez ensuite l’onglet « Option ».

Cochez maintenant « largeur demandée » et indiquez la largeur 860.

On clique sur OK pour créer le formulaire.

On clique sur le bouton « Modifier » pour afficher le formulaire en mode développement.

L’indicateur jaune précise la position de la zone du formulaire.

XI-B - Intégration du formulaire

On doit maintenant intégrer ce formulaire en formulaire bibliothèque, pour cela il faut :

- fermer le formulaire liste, ouvrir le formulaire bibliothèque à partir de l’explorateur, choisir la page sur laquelle on va intégrer la liste des clients (page 1 dans notre cas) ;

- afficher l’explorateur, cliquer sur le nom du formulaire liste, le faire glisser sur le formulaire bibliothèque.

On clique droit sur le fond de formulaire, puis on clique sur liste des propriétés et on change les paramètres comme ci-dessous.

Pour sélectionner des enregistrements dans la table clients, il faut juste ajouter une ligne de code pour le bouton Clients.

Cliquez droit sur le bouton « Clients » dans la page 0 du formulaire bibliothèque, Méthode objet, on ajoute la deuxième ligne.

ALLER A PAGE(1)
TOUT SELECTIONNER([Clients])

- La 1re ligne permet de naviguer entre les pages ;

- la 2e ligne permet de créer une sélection avec l’ensemble des enregistrements de la table.

L’affichage deviendra comme ci-dessous lorsque l’on cliquera sur le bouton « Clients ».

On doit créer maintenant des formulaires pour les autres tables et programmer le reste des boutons pour qu’ils affichent les tables.

XII - Programmation des boutons fonctionnels

Nous allons maintenant programmer les boutons fonctionnels en haut et à gauche du bouton « Terminé » en tenant compte de la page sur laquelle nous nous trouvons.

XII-A - Bouton « Rechercher »

On commence par le bouton Rechercher.

Cliquez droit sur le bouton Rechercher dans la page 0 du formulaire bibliothèque, puis sur méthode objet et copiez ces lignes :

Au cas ou
:(Page formulaire courante=1)
CHERCHER([Clients])

:(Page formulaire courante=2)
CHERCHER([CD])

:(Page formulaire courante=3)
CHERCHER([CATEGORIES])

:(Page formulaire courante=4)
CHERCHER([GENRE])

:(Page formulaire courante=5)
CHERCHER([VENTE])

:(Page formulaire courante=6)
CHERCHER([DET_VENTE])

Fin de cas

On sait que la page 1 du formulaire présente la table Clients et que la page 2 présente la table CD.

Donc lorsqu’on est sur la table Clients 4D va effectuer sa recherche sur cette table, et si on est sur table CD, la recherche est effectuée sur cette table.

Enregistrez la méthode : Fichier ' Sauvegardez Méthode Objet.

On exécute le formulaire pour teste le fonctionnement du bouton.

On se met sur la liste des clients et on clique sur le bouton « Rechercher ».

On doit obtenir la fenêtre suivante :

On note que les champs correspondent à la table Clients.

Pour tester cette option de recherche, il faut cliquer sur l’un des champs, choisir un critère pour la comparaison, saisir la valeur désirée et cliquez sur Rechercher.

Les résultats trouvés s’afficheront dans une liste.

Cette fenêtre nous permet d’utiliser plusieurs critères de recherche, on peut aussi effectuer une première recherche puis une deuxième recherche sur cette première sélection en cliquant sur bouton .

Après ce test, nous sommes certains que le bouton Rechercher fonctionne correctement.

XII-B - Bouton « Trier »

Cliquez droit sur le bouton Trier dans la page 0 du formulaire bibliothèque, méthode objet, puis copiez ces lignes :

Au cas ou
:(Page formulaire courante=1)
TRIER([Clients])

:(Page formulaire courante=2)
TRIER([CD])

:(Page formulaire courante=3)
TRIER([CATEGORIES])

:(Page formulaire courante=4)
TRIER([GENRE])

:(Page formulaire courante=5)
TRIER([VENTE])

:(Page formulaire courante=6)
TRIER([DET_VENTE])

Fin de cas

On enregistre et on exécute, puis on se place sur la table Client et on clique sur le bouton Trier. Cette fenêtre s’affiche :

On glisse le champ (celui par lequel on veut effectuer le tri) de la colonne gauche vers la colonne droite.

On indique le sens de tri pour chaque colonne en cliquant sur croissant ou bien décroissant.

On clique sur Trier, la liste s’affiche alors triée selon le champ choisi.

XII-C - Bouton « Etat »

Nous allons maintenant programmer le bouton Etat en tenant compte de la page sur laquelle nous nous trouvons.

Dans la méthode objet du bouton « Etat », on saisit ces lignes :

Au cas ou
:(Page formulaire courante=1)
QR ETAT([Clients];Caractere(1);Vrai;Vrai;Vrai)

:(Page formulaire courante=2)
QR ETAT([CD];Caractere(1);Vrai;Vrai;Vrai)

:(Page formulaire courante=3)
QR ETAT([CATEGORIES];Caractere(1);Vrai;Vrai;Vrai)

:(Page formulaire courante=4)
QR ETAT([GENRE];Caractere(1);Vrai;Vrai;Vrai)

:(Page formulaire courante=5)
QR ETAT([VENTES];Caractere(1);Vrai;Vrai;Vrai)

:(Page formulaire courante=6)
QR ETAT([DET_VENTE];Caractere(1);Vrai;Vrai;Vrai

Fin de cas)

Les paramètres saisis signifient :

- si la page courante est 1, le nom de la table est Clients ;

- le nom ou chemin d’accès à un document est prédéfini, dans le cas présent Caractere(1) force l’affichage de l’assistant ;

- afficher la navigation hiérarchique entre les tables (utilisation des liens) : Vrai ;

- afficher le module d’assistance : Vrai ;

- permettre une recherche particulière : Vrai.

On enregistre la méthode et on exécute. Lorsque l’on clique sur le bouton Etat, on obtient la fenêtre suivante :

Cette fenêtre se compose de 4 parties :

- la partie haute (barre de menus, barres d’outils et rectangle gris de paramétrage des colonnes) ;

- la zone sur fond vers qui permet de choisir la table, faire une recherche, définir le type d’état ou ouvrir l’assistant (chapeau de magicien à droite) ;

- la colonne de champs de la table sélectionnée ;

- la colonne des ordres de tris.

On va essayer de réaliser rapidement un état :

Double cliquez sur les champs de la 3e partie.

Des colonnes vont apparaître à la 1re partie.

On clique sur le bouton aperçu

La fenêtre suivante apparaît :

Pour choisir l’ordre de tri, on glisse un ou plusieurs champs de la 3e partie vers la 4e partie.

La ligne « sous-total » s’affiche pour chacun des critères de tri ajoutés.

On voit sur l’exemple ci-dessous comment on a choisi trier selon le ID-CAT en affichant la somme dans la table CD.

Après avoir cliqué sur le bouton aperçu, la fenêtre suivante s’affiche.

XII-D - Bouton « Ajouter »

Le bouton ajouter nous permet d’ajouter des enregistrements sur la table, on va le programmer pour qu’on puisse ajouter des enregistrements en tenant compte de la page sur laquelle nous nous trouvons.

Dans la méthode objet du bouton « Ajouter », on saisit ces lignes :

Au cas ou
:(Page formulaire courante=1)
AJOUTER ENREGISTREMENT([Clients])
Fin de cas

On enregistre la méthode et on exécute.

On sélectionne la table Clients, on clique sur bouton Ajouter et on obtient la fenêtre suivante.

On finit de programmer le bouton pour qu’il fonctionne avec les restes des tables.

XII-E - Bouton « Imprimer »

Dans la méthode objet du bouton Imprimer, on écrit les lignes suivantes :

Au cas ou
:(Page formulaire courante=1)
IMPRIMER SELECTION([Clients])
Fin de cas

Après avoir enregistré, on exécute.

On sélectionne la table Clients et on clique sur bouton « Imprimer », la fenêtre suivante s’affiche.

Maintenant, on finit de programmer le bouton pour qu’il fonctionne avec le reste des tables.

XII-F - Bouton « Supprimer »

On va programmer le bouton Supprimer pour qu’il supprime un enregistrement dans la table courante.

On écrit ces lignes dans la méthode objet du bouton :

Au cas ou
:(Page formulaire courante=1)
SUPPRIMER ENREGISTREMENT([Clients])
Fin de cas

Après avoir enregistré et exécuté, on doit choisir l’enregistrement que l’on veut supprimer de la table « Clients » puis on clique sur bouton Supprimer.

On finit maintenant de programmer le bouton pour qu’il s’exécute sur toutes les tables.

XIII - Fin de la base

Après avoir suivi les différentes instructions de ce document, on peut dire que notre base est maintenant complète et prête à l’utilisation.