|
|
|
|
|
- Conditions d'utilisation
- Trier un champ Table ou Table hiérarchique fichier
- Gestion d'un champ Table ou Table hiérarchique trié
- Tri sur une colonne calculée
- Champ Table ou Table hiérarchique parcouru par programmation
- Réaliser un tri basé sur la valeur ASCII
- Versions précédentes
TableTrie (Fonction) En anglais : TableSort Trie un champ Table ou Table hiérarchique sur une ou plusieurs colonnes (tri lexicographique). Remarque : Lorsqu'un champ est trié avec la fonction TableTrie, les images permettant de connaître le sens du tri ne sont pas affichées dans les colonnes.
// Tri des colonnes "COL_Désignation" et "COL_Prix" du champ "TABLE_Produit" // La colonne "COL_Désignation" est triée dans l'ordre croissant // La colonne "COL_Prix" est triée dans l'ordre décroissant TableTrie(TABLE_Produit, "COL_Désignation", "-COL_Prix")
// Tri multicolonne du champ Table // La colonne "COL_Désignation" est triée dans l'ordre décroissant // La colonne "COL_Prix" est triée dans l'ordre croissant TableTrie("-COL_Désignation" + TAB + "+COL_Prix")
Syntaxe
Trier un champ Table/Table hiérarchique sur une ou plusieurs colonnes identifiées par leur nom Masquer les détails
<Résultat> = TableTrie(<Champ Table> , <Colonne 1> [, <Colonne 2> [... [, <Colonne N>]]])
<Résultat> : Booléen - Vrai si le tri a été effectué,
- Faux dans le cas contraire.
<Champ Table> : Nom de champ Nom du champ à manipuler. Ce champ peut correspondre à : - un champ Table.
- un champ Table hiérarchique.
Si ce paramètre correspond à une chaîne vide (""), le champ manipulé est le champ auquel appartient l'événement en cours. <Colonne 1> : Chaîne de caractères Nom de la première colonne à trier (16 colonnes maximum). Ce paramètre est de la forme :
"[<Sens>]<Nom de la colonne>" où :- <Sens> (caractère) indique le sens du tri :
- "+" : tri croissant (par défaut),
- "-" : tri décroissant.
- <Nom de la colonne> (chaîne de caractères) : nom de la colonne à trier.
<Colonne 2> : Chaîne de caractères optionnelle Nom de la seconde colonne à trier (16 colonnes maximum). Ce paramètre est de la forme :
"[<Sens>]<Nom de la colonne>" où :- <Sens> (caractère) indique le sens du tri :
- "+" : tri croissant (par défaut),
- "-" : tri décroissant.
- <Nom de la colonne> (chaîne de caractères) : nom de la colonne à trier.
<Colonne N> : Chaîne de caractères optionnelle Nom de la Nème colonne à trier (16 colonnes maximum). Ce paramètre est de la forme :
"[<Sens>]<Nom de la colonne>" où :- <Sens> (caractère) indique le sens du tri :
- "+" : tri croissant (par défaut),
- "-" : tri décroissant.
- <Nom de la colonne> (chaîne de caractères) : nom de la colonne à trier.
Trier un champ Table/Table hiérarchique selon une liste de noms de colonnes Masquer les détails
<Résultat> = TableTrie(<Liste des colonnes>)
<Résultat> : Booléen - Vrai si le tri a été effectué,
- Faux dans le cas contraire.
<Liste des colonnes> : Chaîne de caractères Liste des colonnes à trier (16 colonnes maximum). Ce paramètre est de la forme :
"[<Sens>]<Colonne1>" + TAB + "[<Sens>]<Colonne2>" + TAB + ... où :- <Sens> (caractère) indique le sens du tri :
- "+" : tri croissant (par défaut),
- "-" : tri décroissant.
- <Colonne> (chaîne de caractères) : nom de la colonne à trier. Le nom d'une colonne peut être obtenu avec la fonction TableEnumèreColonne. Si deux champs ont des noms de colonnes identiques, il est nécessaire de préfixer le nom de la colonne par le nom du champ (par exemple "+TABLE_Table1.COL_ColonneTri"+TAB+"+TABLE_Table1.COL_ColonnePrix").
Trier un champ Table/Table hiérarchique sur les dix premières colonnes visibles du champ Masquer les détails
<Résultat> = TableTrie(<Champ Table> [, <A trier>])
<Résultat> : Booléen - Vrai si le tri sur les 10 premières colonnes du champ a été effectué,
- Faux dans le cas contraire.
<Champ Table> : Nom de champ Nom du champ à manipuler. Ce champ peut correspondre à : - un champ Table.
- un champ Table hiérarchique.
Ce paramètre est de la forme : "[<Sens>]<Nom du champ Table>" où : - <Sens> (caractère) indique le sens du tri :
- "+" : tri croissant (par défaut),
- "-" : tri décroissant.
- <Nom du champ Table> (chaîne de caractères) : nom du champ Table ou Table hiérarchique dont les 10 premières colonnes doivent être triées.
<A trier> : Booléen optionnel - Vrai si le tri sur les 10 premières colonnes du champ doit être effectué,
- Faux si le tri précédent doit être annulé. Après l'annulation du tri, l'ordre des lignes du champ n'est pas modifié mais les lignes qui seront ajoutées par les fonctions TableAjoute, TableAjouteLigne, TableInsère ou TableInsèreLigne ne seront pas triées.
Annuler un tri précédemment défini sur un champ Table/Table hiérarchique par programmation Masquer les détails
<Résultat> = TableTrie(<Champ Table> , <Faux>)
<Résultat> : Booléen - Vrai si le tri a été annulé,
- Faux en cas de problème.
<Champ Table> : Nom de champ Nom du champ à manipuler. Ce champ peut correspondre à : - un champ Table par programmation.
- un champ Table hiérarchique par programmation.
<Faux> : Constante Faux : Mot-clé permettant d'annuler un tri précédemment défini sur un champ Table ou Table hiérarchique par programmation. Remarques Conditions d'utilisation La fonction TableTrie peut être utilisée indifféremment sur : - un champ Table ou Table hiérarchique par programmation.
- un champ Table ou Table hiérarchique fichier avec parcours automatique (option "Parcours automatique" cochée dans l'onglet "Contenu" de la description du champ). Dans ce cas, le tri est exécuté uniquement sur une seule colonne.
- un champ monosélection ou multisélection.
Rappel : La multisélection n'est pas disponible sur les champs Table en mode classique.
Trier un champ Table ou Table hiérarchique fichier Un champ Table ou Table hiérarchique fichier sera trié uniquement selon la première colonne spécifiée (syntaxe 1 et 2). Attention : la colonne utilisée pour le tri doit être reliée à une rubrique clé dans le fichier de données utilisé pour le parcours du champ. Astuce : Pour trier un champ Table ou Table hiérarchique fichier avec plusieurs colonnes, utilisez une clé composée et la propriété RubriqueParcourue :
NomTable..RubriqueParcourue = NOMCLECOMPOSEE Pour annuler un tri dans un champ Table ou Table hiérarchique fichier, il suffit d'affecter une chaîne vide à la propriété RubriqueParcourue. Gestion d'un champ Table ou Table hiérarchique trié - Lorsque le champ est trié par la fonction TableTrie, les ajouts réalisés par les fonctions TableAjoute, TableAjouteLigne, TableInsère et TableInsèreLigne tiennent compte du tri.
- Lorsque le champ est trié par un clic de souris, les ajouts réalisés par les fonctions TableAjoute, TableAjouteLigne, TableInsère et TableInsèreLigne ne tiennent pas compte du tri.
- Le tri n'est pas annulé par les fonctions TableAffiche, TableAjuste, TableCherche, TableOccurrence, TablePosition, TableSelect, TableSelectMoins, TableSelectPlus, TableSupprime et TableSupprimeTout.
- Le tri est annulé si une colonne est modifiée (par saisie dans la colonne ou par les fonctions TableModifie et TableModifieLigne) et si cette colonne est triée.
Tri sur une colonne calculée Il est déconseillé d'utiliser la fonction TableTrie sur des colonnes calculées. En effet, ces colonnes sont calculées lors de l'affichage de chaque ligne. Un tri effectué avec la fonction TableTrie sur une colonne calculée sera valide uniquement sur les lignes déjà affichées. Champ Table ou Table hiérarchique parcouru par programmation La fonction TableTrie ne fonctionne pas sur un champ parcouru par programmation. Réaliser un tri basé sur la valeur ASCII Pour réaliser un tri basé sur la valeur ASCII, il est possible d'utiliser une zone mémoire. Exemple :
MemCrée("ZM") MemAjoute("ZM", "abc", "abc") MemAjoute("ZM", "ZZZ", "ZZZ") MemAjoute("ZM", "zbc", "zbc") MemAjoute("ZM", "ééébc", "ééébc") MemAjoute("ZM", "AB", "AB") MemAjoute("ZM", "CD", "CD") MemAjoute("ZM", "çabc", "çabc") MemAjoute("ZM", "bbc", "bbc") MemTrie("ZM") i est un entier MemPremier("ZM") TANTQUE PAS MemEnDehors("ZM") i = MemEnCours("ZM") Trace(MemRécupère("ZM", i)) // Affichage dans l'ordre ASCII MemSuivant("ZM") FIN Composante : wd300obj.dll
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|