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.