4D v14.3

TRIER PAR FORMULE

Accueil

 
4D v14.3
TRIER PAR FORMULE

TRIER PAR FORMULE 


 

TRIER PAR FORMULE ( laTable ; expression {; > ou <}{; expression2 ; > ou <2 ; ... ; expressionN ; > ou <N} ) 
Paramètre Type   Description
laTable  Table in Table de laquelle trier la sélection d'enregistrements
expression  Expression in Formule de tri des enregistrements (peut être de type Alphanumérique, Réel, Entier, Entier long, Date, Heure ou Booléen)
> ou <  Opérateur in Ordre de tri pour chaque niveau : > ordre croissant ou < ordre décroissant

TRIER PAR FORMULE trie (réordonne) les enregistrements de la sélection courante de laTable pour le process courant sur le critère de tri défini par expression. Une fois le tri effectué, le premier enregistrement de la sélection courante devient le nouvel enregistrement courant.

Notez que vous devez spécifier laTable. Vous ne pouvez pas utiliser une table par défaut.

Vous pouvez trier la sélection sur un ou plusieurs niveaux. Pour chaque niveau, vous passez une expression dans expression et un ordre de tri dans > ou <. Si vous passez le symbole “supérieur à” (>), l'ordre est croissant. Si vous passez le symbole “inférieur à” (<), l'ordre est décroissant. Si vous ne passez pas ce paramètre, l'ordre est par défaut croissant.

Le paramètre expression peut être de type Alpha, Réel, Entier, Entier long, Date, Heure ou Booléen.

Quelle que soit la manière dont le tri est défini, si l'opération risque de prendre un certain temps, 4D affiche automatiquement un message contenant un thermomètre de progression. Vous pouvez décider d'afficher ou de ne pas afficher ce message pour le process à l'aide des commandes SUPPRIMER MESSAGES et LAISSER MESSAGES. Si le thermomètre de progression est affiché, l'utilisateur peut cliquer sur le bouton Stop pour interrompre l'opération. Si le tri s'est correctement déroulé, la variable système OK prend la valeur 1. Sinon, si le tri est interrompu, OK prend la valeur 0 (zéro).

4D Server : A compter de la version 11 de 4D Server, cette commande est exécutée sur le serveur, ce qui optimise son exécution. A noter qu’en cas d’appel direct de variables dans l'expression, le tri est calculé avec la valeur de la variable sur le poste client.
En revanche, ce principe n’est pas appliqué pour les formules utilisant des méthodes qui, elles-mêmes, font appel à des variables (la valeur des variables est évaluée sur le serveur). Dans ce contexte, il peut être judicieux d’utiliser l'attribut de méthode "Exécuter sur serveur" permettant d’exécuter une méthode sur le serveur en lui passant des paramètres (variables) (cf. manuel Mode Développement).
Dans les versions précédentes de 4D Server, cette commande était exécutée sur les postes clients. Par compatibilité, ce fonctionnement est maintenu dans les bases de données converties en version 11. Une préférence de compatibilité et un sélecteur de la commande FIXER PARAMETRE BASE permettent toutefois d'adopter le fonctionnement de la version 11 (exécution sur le serveur) dans ces bases de données.

Exemple  

L'exemple suivant trie les enregistrements de la table [Personnes] dans l'ordre décroissant par rapport à la longueur du nom de famille de chaque personne. L'enregistrement de la personne qui a le nom le plus long sera le premier enregistrement de la sélection courante :

 TRIER PAR FORMULE([Personnes];Longueur([Personnes]Nom);<)

 
PROPRIÉTÉS 

Produit : 4D
Thème : Recherches et tris
Numéro : 300
Nom intl. : ORDER BY FORMULA

Cette commande modifie la variable système OKCette commande change l'enregistrement courantComportement différent en mode distant

 
HISTORIQUE 

Modifié : 4D v11 SQL Release 2

 
VOIR AUSSI  

TRIER

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v12.4)
4D - Langage ( 4D v11 SQL Release 6)
4D - Langage ( 4D v14 R3)
4D - Langage ( 4D v14 R2)
4D - Langage ( 4D v13.5)
4D - Langage ( 4D v14.3)
4D - Langage ( 4D v14 R4)