Les fenêtres de type Fiche ou Table peuvent posséder des boutons de liaison. Ces boutons de liaison permettent par exemple d'afficher une table, une fiche ou encore une table + fiche sur les fichiers liés.
Un exemple simple : visualiser les commandes d'un client à partir de la fiche du client.
Un bouton de liaison doit avoir obligatoirement pour nom :
- BTN_LiaisonTable_RADFichierX pour une liaison vers une fenêtre table
- BTN_LiaisonFiche_ RADFichierX pour une liaison vers une fenêtre fiche
- BTN_LiaisonRelation_ RADFichierX pour une liaison vers une fenêtre de relation.
Remarque : BTN_ est le préfixe de la charte de programmation : il n'est pas nécessaire si vous n'utilisez pas de charte de programmation.
Le libellé peut être quelconque. Il est cependant conseillé d'utiliser un libellé simple (par exemple "Table RADFichierB" ou "Fiche RADFichierA").
Code : Voici un exemple de code pouvant être utilisé dans un bouton de liaison, permettant d'ouvrir une table sur le fichier RADFichierB à partir de la fiche sur RADFichierA :
// Mise en place du filtre sur la clé de liaison
HFiltre(RADFichierB,IDRADFichierARel, RADFichierA.IDRADFichierA)
// Ouverture de la fenêtre table des RADFichierB
Ouvre(FEN_Table_RADFichierB)
// Désactivation du filtre
HDésactiveFiltre(RADFichierB)
Position des boutons de liaison et liaison supplémentaire
Les boutons de liaisons peuvent être positionnés n'importe où dans la fenêtre. Lors de la génération de la fenêtre, les boutons de liaison seront créés à l'endroit indiqué. Selon la taille de l'analyse utilisée par le RAD, il est possible d'avoir plus de 3 boutons de liaison dans une fenêtre. Il est donc conseillé de prévoir des boutons de liaison supplémentaires.
Ces boutons supplémentaires permettent de positionner les boutons de liaisons. En effet, les boutons de liaison peuvent être alignés horizontalement, verticalement, ou pourquoi pas, en arrondi.
Les boutons de liaison supplémentaires doivent avoir un nom spécifique : BTN_LIA_n (BTN_ est le préfixe de la charte de programmation : il n'est pas nécessaire si vous n'utilisez pas de charte de programmation), où n est le numéro du bouton (par exemple BTN_LIA_1). Ces boutons ne doivent pas contenir de code et ni être associés à une action prédéfinie.
Remarque : Si au moment de la génération RAD, le nombre de boutons de liaison dépasse le nombre prévu dans le pattern, les boutons générés en plus seront superposés sur la position du dernier bouton de liaison positionné dans le pattern.