version 6.8
PV TRI UNIQUE (zone; gauche; haut; droite; bas; direction; critère; ordre)
| Paramètre | Type | Description | |
| zone | Entier long | Zone 4D View | |
| gauche | Entier long | Numéro de la colonne de gauche | |
| haut | Entier long | Numéro de la ligne du haut | |
| droite | Entier long | Numéro de la colonne de droite | |
| bas | Entier long | Numéro de la ligne du bas | |
| direction | Entier | 0 = Tri des lignes; 1 = Tri des colonnes | |
| critère | Entier long | Colonne ou ligne servant de critère de tri | |
| ordre | Entier | 0 = Ascendant; 1 = Descendant |
Description
La commande PV TRI UNIQUE trie le contenu de la sélection délimitée par gauche, haut, droite et bas, par rapport aux valeurs contenues dans la ligne ou la colonne critère, dans l'ordre défini par ordre.
direction indique si le tri devra ordonner les lignes ou les colonnes :
Si vous passez 0, vous ordonnez les lignes en fonction des valeurs de la colonne critère.
Si vous passez 1, vous ordonnez les colonnes en fonction des valeurs de la ligne critère.
Cette commande fonctionne uniquement avec les données statiques.
Les zones dynamiques (tableaux et champs liés) doivent être triées à l'aide des commandes 4D le principe consiste à trier la source. Un exemple de tri de colonnes dynamiques liées à des champs lors d'un clic dans l'en-tête est fourni dans la description de la commande PV LIRE CHAMP CELLULE. A noter que le tri n'est pas possible sur les tableaux et champs de type image ainsi que les colonnes calculées (appelant une méthode de rétro-appel et affichant son résultat).
Exemple
Cet exemple permet le tri ascendant des colonnes statiques à l'aide d'un clic sur l'en-tête de la colonne. La zone ne contient que des colonnes statiques.
Nous commençons par installer la méthode de rétro-appel MéthodeTriEntête, qui sera appelée en cas de clic dans la zone :
PV APPELER SUR EVENEMENT (Zone;pv sur clic;"MéthodeTriEntête")
La méthode MéthodeTriEntête intercepte les clics sur les en-têtes des colonnes et trie les données correspondantes (de la ligne 1 à 25) dans un ordre ascendant :
`Méthode MéthodeTriEntête C_BOOLEEN($0) C_ENTIER LONG($1;$2;$3;$4;$5;$6) Si ($5=0) `Si le clic a eu lieu sur un en-tête $0:=Vrai `Filtrer l'événement PV TRI UNIQUE (zone;$4;1;$4;25;1;$4;0) `Tri ascendant de la colonne selectionnée Fin de si
Référence
PV TRI MULTIPLE, PV TRIER COLONNE.