Présentation des liens

4D - Documentation   Français   English   German   Español   4D v11 SQL, Commandes par thèmes   4D v11 SQL, Liste alphabétique des commandes   4D v11 SQL, Constantes par thèmes   Retour   Précédent   Suivant

version 6.0


Les commandes de ce thème, en particulier CHARGER SUR LIEN et LIEN RETOUR, établissent et gèrent les relations entre les tables, à la fois pour les liens automatiques et les liens manuels. Consultez le manuel Mode Développement de 4D pour la création des liens entre les tables avant d'utiliser ces commandes.

Exploiter par programmation les liens automatiques entre les tables


Deux tables peuvent être reliées par un lien automatique. En général, quand un lien automatique est créé, les enregistrements liés sont chargés et sélectionnés dans la table liée. Un grand nombre d'opérations exploitent cette relation. En particulier, citons les opérations suivantes :

Saisie de données,

Liste des enregistrements à l'écran dans un formulaire de sortie,

 Etats,

Opérations sur une sélection d'enregistrements comme les recherches, les tris et les formules.

Pour améliorer les performances, quand 4D active les liens automatiques, seul un enregistrement devient l'enregistrement courant pour la table. Pour chacune des opérations énumérées ci-dessus, l'enregistrement lié est chargé selon les principes suivants :

Si un lien sélectionne un seul enregistrement de la table liée, cet enregistrement est chargé du disque.

Si un lien sélectionne plusieurs enregistrements de la table liée, une nouvelle sélection d'enregistrements est créée pour cette table, et le premier enregistrement de cette sélection est chargé du disque.

Par exemple, dans la structure affichée ci-dessous, si un enregistrement pour la table [Personnes] est chargé et affiché pour une saisie de donnés, l'enregistrement lié dans la [Sociétés] est sélectionné et chargé. De la même façon, si un enregistrement pour la table [Sociétés] est chargé et affiché pour de la saisie de données, les enregistrements liés de la table [Personnes] sont sélectionnés.

Dans le type de schéma présenté ci-dessus, la table [Personnes] est appelée Table N et la table [Sociétés] est appelée Table 1. Pour vous souvenir de la différence, pensez à "plusieurs personnes travaillent dans une société" ou "une société emploie N personnes".

De même, le champ Société de la table [Personnes] est appelé Champ N, et le champ Nom de la table [Sociétés] est appelé Champ 1.

Il n'est pas toujours possible que le champ lié soit unique. Par exemple, le champ [Sociétés]Nom peut contenir des noms de sociétés identiques. Ce cas de non-unicité est facilement contournable : il suffit de créer un lien vers un autre champ de la table liée qui, lui, sera toujours unique. Ce champ pourrait être par exemple un numéro d'identification de la société.

Les commandes listées ci-dessous utilisent les liens automatiques pour charger les enregistrements liés lors de leur exécution. Toutes ces commandes activent les liens automatiques "de N vers 1" existants. En revanche, seules les commandes signalées explicitement par un Oui activent les liens automatiques "de 1 vers N".

CommandeLien 1 vers N
AJOUTER ENREGISTREMENT Oui
AJOUTER SOUS ENREGISTREMENT Non
APPLIQUER A SELECTION Non
VISUALISER SELECTION Non
ECRITURE DIF Non
ECRITURE SYLK Non
ECRITURE ASCII Non
EXPORTER DONNEES Non
MODIFIER ENREGISTREMENT Oui
MODIFIER SOUS ENREGISTREMENT Non
MODIFIER SELECTION Oui ()
TRIER Non
TRIER PAR FORMULE Non
CHERCHER PAR FORMULE Oui
CHERCHER DANS SELECTION Oui
CHERCHER Oui
IMPRIMER ETIQUETTES Non
IMPRIMER SELECTION Oui
QR ETAT Non
SELECTION VERS TABLEAU Non
SELECTION LIMITEE VERS TABLEAU Non

Activer par programmation les liens entre les tables


Que les liens soient automatiques ne signifie pas que les enregistrements liés ou les enregistrements pour une table seront sélectionnés simplement parce qu'une commande charge un enregistrement. Après avoir exécuté une commande chargeant un enregistrement, dans certains cas vous devez explicitement appeler le ou les enregistrement(s) lié(s) avec CHARGER SUR LIEN ou LIEN RETOUR si vous avez besoin d'accéder aux données liées.

Certaines des commandes listées ci-dessus (par exemple les commandes de recherche) chargent l'enregistrement courant une fois leur tâche terminée. Dans ce cas, l'enregistrement chargé n'appelle pas automatiquement le ou les enregistrement(s) lié(s). Là aussi, vous devez explicitement sélectionner le ou les enregistrement(s) lié(s) avec CHARGER SUR LIEN ou LIEN RETOUR si vous avez besoin d'accéder aux données liées.

Référence

ANCIEN LIEN RETOUR, CHARGER ANCIEN, CHARGER SUR LIEN, CREER SUR LIEN, FIXER LIEN CHAMP, FIXER LIENS AUTOMATIQUES, JOINTURE, LIEN RETOUR, LIRE LIEN CHAMP, LIRE LIENS AUTOMATIQUES, SELECTION RETOUR, STOCKER SUR LIEN.


4D - Documentation   Français   English   German   Español   4D v11 SQL, Commandes par thèmes   4D v11 SQL, Liste alphabétique des commandes   4D v11 SQL, Constantes par thèmes   Retour   Précédent   Suivant