VALEURS DISTINCTES

4D - Documentation   Français   English   German   4e Dimension, Commandes par thèmes   4e Dimension, Liste alphabétique des commandes   4e Dimension, Constantes par thèmes   Retour   Précédent   Suivant

version 6.5 (Modifiée)


VALEURS DISTINCTES (champ; tableau)

ParamètreTypeDescription
champChamp | Sous-champChamp ou sous-champ à utiliser
tableauTableauTableau devant recevoir les données du
champ indexable

Description

VALEURS DISTINCTES crée et remplit le tableau tableau avec toutes les valeurs distinctes provenant du champ champ pour la sélection courante de la table à laquelle le champ ou sous-champ appartient.

Vous pouvez passer à cette commande tout type de champ indexable, c'est-à-dire dont le type supporte l'indexation mais qui n'est pas forcément indexé. Toutefois, l'exécution de la commande avec des champs non indexés est plus lente qu'avec des champs indexés. A noter également que dans ce cas, la commande perd l'enregistrement courant.

Vous pouvez aussi exécuter cette commande avec un sous-champ. Dans ce cas, le sous-champ doit être indexé.

Note : La commande FIXER PARAMETRE BASE permet de définir si VALEURS DISTINCTES doit utiliser ou non l'index, en fonction du nombre d'enregistrements présents dans la sélection.

Si vous passez un champ, VALEURS DISTINCTES analyse et extrait les valeurs distinctes pour les enregistrements sélectionnés uniquement. En revanche, si vous passez un sous-champ, VALEURS DISTINCTES examine tous les sous-enregistrements de chaque enregistrement sélectionné.

Note : Lorsque vous exécutez VALEURS DISTINCTES au sein d'une transaction non encore terminée, la commande tient compte des enregistrements créés au cours de la transaction.

Le tableau utilisé par VALEURS DISTINCTES doit être du même type que le champ ou sous-champ passé en premier paramètre, sinon le tableau est retypé. Il y a une exception à cette règle : si le champ est de type Heure, le tableau correspondant doit être de type Entier long.

Après l'appel, la taille du tableau est égale au nombre de valeurs distinctes trouvées dans la sélection. La commande ne modifie pas la sélection courante ni l'enregistrement courant. Les éléments dans tableau sont triés par ordre croissant car VALEURS DISTINCTES utilise l'index du champ. Si cet ordre vous convient, vous n'avez donc pas besoin d'appeler TRIER TABLEAU après l'exécution de VALEURS DISTINCTES.

ATTENTION : VALEURS DISTINCTES 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'interception d'erreurs installée par la commande APPELER SUR ERREUR.

4D Server : Cette commande est optimisée pour 4D Server. Le tableau est créé et les valeurs sont calculées sur le serveur. Seul le tableau est envoyé au client.

Exemples

(1) L'exemple suivant crée une liste de villes à partir de la sélection courante et indique à l'utilisateur le nombre de villes dans lesquelles la société dispose de magasins :

   TOUT SELECTIONNER([Revendeurs]) ` Créer une sélection d'enregistrements
   VALEURS DISTINCTES([Revendeurs]Ville;taVilles) 
   ALERTE("Cette société dispose de magasins dans " +Chaine(Taille tableau(taVilles))+" villes.")

(2) L'exemple suivant retourne dans taMotsClés tous les mots-clés qui sont liés (à l'aide d'une sous-table) aux documents 4D Write stockés dans la table [Documentation] et dont le sujet est "Economie" :

   CHERCHER ([Documentation];[Documentation]Sujet="Economie")
   VALEURS DISTINCTES([Documentation]MotsClés'Mot;taMotsClés)

Une fois ce tableau construit, vous pouvez le réutiliser pour chercher rapidement les documents liés au mot-clé sélectionné en écrivant :

   CHERCHER ([Documentation];[Documentation]MotsClés'Mot=taMotsClés{taMotsClés})
   SELECTION VERS TABLEAU ([Documentation]Sujet;taSujets)
      ` ...

Référence

APPELER SUR ERREUR, FIXER PARAMETRE BASE, SELECTION LIMITEE VERS TABLEAU, SELECTION VERS TABLEAU.


4D - Documentation   Français   English   German   4e Dimension, Commandes par thèmes   4e Dimension, Liste alphabétique des commandes   4e Dimension, Constantes par thèmes   Retour   Précédent   Suivant