version 5
SELECTION VERS TABLEAU (leChamp|laTable; tableau{; leChamp|laTable2; tableau2; ...; leChamp|laTableN; tableauN})
Paramètre | Type | Description | |
leChamp|laTable | Champ ou Table | Champ à récupérer dans le tableau ou | |
Table dont les numéros d'enregistrements sont à | |||
récupérer dans le tableau | |||
tableau | Tableau | Tableau recevant les valeurs des champs ou | |
les numéros d'enregistrements |
Description
La commande SELECTION VERS TABLEAU crée un ou plusieurs tableaux et y copie les valeurs des champ(s) ou les numéros d'enregistrement(s) de la sélection courante.
SELECTION VERS TABLEAU s'applique à la sélection courante de la table spécifiée dans le premier paramètre. La commande peut réaliser les opérations suivantes :
Charger les valeurs d'un ou plusieurs champs,
Charger les numéros des enregistrements, à l'aide de la syntaxe ...;[table];tableau;...
Charger des valeurs de champs liés, s'il existe un lien automatique de N vers 1 entre les tables, ou si vous avez préalablement appelé la commande FIXER LIENS AUTOMATIQUES pour rendre automatiques les liens manuels N vers 1 (dans les deux cas, les valeurs peuvent être chargées à travers plusieurs niveaux de liens N vers 1 entre les tables).
Chaque tableau est typé en fonction du type de champ. Il y a cependant deux exceptions :
La copie d'un champ de type Heure provoquera la création d'un tableau Entier long.
En mode compatibilité ASCII (non Unicode), lorsqu'un champ de type Texte est copié dans un tableau Alpha, le tableau reste de type Alpha.
Si vous chargez les numéros des enregistrements, ils sont copiés dans un tableau de type Entier long.
4D Server : La commande SELECTION VERS TABLEAU est optimisée pour 4D Server. Chaque tableau est créé sur le serveur puis envoyé en totalité sur le poste client.
ATTENTION : SELECTION VERS TABLEAU peut créer des tableaux de taille importante, en fonction de la taille de la sélection courante, ainsi que du type et de la taille des données à charger. Comme les tableaux résident en mémoire, il peut être utile de tester la taille des tableaux créés après l'exécution de la commande, ou d'utiliser une méthode projet d'appel sur erreur.
Note : Après un appel à SELECTION VERS TABLEAU, la sélection courante et l'enregistrement courant ne sont pas modifiés, mais l'enregistrement courant n'est plus chargé. Utilisez la commande CHARGER ENREGISTREMENT après un SELECTION VERS TABLEAU si vous souhaitez utiliser les valeurs des champs de l'enregistrement courant.
Exemples
(1) Dans l'exemple suivant, la table [Personnes] dispose d'un lien automatique vers la table [Sociétés]. Les deux tableaux tabNoms et tabAdresseSociétés sont dimensionnés en fonction du nombre d'enregistrements dans la sélection de la table [Personnes] et contiennent des informations venant des deux tables :
SELECTION VERS TABLEAU ([Personnes]Nom; tabNoms; [Sociétés]Adresse; tabAdresseSociétés)
(2) L'exemple ci-dessous retourne les numéros d'enregistrements de la table [Clients] dans le tableau tabNumEnr et les valeurs du champ [Clients]Noms dans le tableau tabNoms :
SELECTION VERS TABLEAU([Clients]; tabNumEnr; [Clients]Noms; tabNoms)
Référence
APPELER SUR ERREUR, FIXER LIENS AUTOMATIQUES, SELECTION LIMITEE VERS TABLEAU, TABLEAU MULTI TRI, TABLEAU VERS SELECTION.