Code source wiki de Visual - Listes - Filtres manuels
Modifié par Isabelle FERRIERE le 2015/10/12 10:12
Afficher les derniers auteurs
| author | version | line-number | content |
|---|---|---|---|
| 1 | Soit une liste d’animaux, dont les colonnes CATEGORIE et ANIMAL sont définies en filtre manuel : | ||
| 2 | |||
| 3 | [[image:LST_ANIMAUX.png]] | ||
| 4 | |||
| 5 | |||
| 6 | Sur l’événement « (% style="line-height: 1.42857;" %)**ActionFiltre**(%%) » de ces colonnes : | ||
| 7 | |||
| 8 | |||
| 9 | **1/** Déterminer le filtre, à partir de la propriété VALEUR_INTERNE_FILTRE : | ||
| 10 | * Position 1 à 2 : opérateur du filtre. Valeurs possibles : '~=', '>', '<', '~' | ||
| 11 | * Position 3 : indicateur de casse ('0' sans casse, '1' avec la casse) | ||
| 12 | * Position 4 à 6 : longueur de la valeur (sur 3 chiffres, complétée par des zéros à gauche) | ||
| 13 | * Position 50 : début de la valeur | ||
| 14 | * La propriété à *BLANK indique que l'utilisateur a choisi de tout afficher (filtre « * ») | ||
| 15 | |||
| 16 | |||
| 17 | |||
| 18 | |||
| 19 | {{code language="none"}} | ||
| 20 | * Action sur filtre | ||
| 21 | SI COL_CATEG:VALEUR_INTERNE_FILTRE = *BLANK | ||
| 22 | W_FILTRE_OPERATEUR = '*' | ||
| 23 | W_FILTRE_CASSE = *BLANK | ||
| 24 | W_FILTRE_LONG = *BLANK | ||
| 25 | W_FILTRE_VAL = *BLANK | ||
| 26 | SINON | ||
| 27 | W_FILTRE_OPERATEUR = &EXTRACTION(COL_CATEG:VALEUR_INTERNE_FILTRE; 1; 2) | ||
| 28 | W_FILTRE_CASSE = &EXTRACTION(COL_CATEG:VALEUR_INTERNE_FILTRE; 3; 1) | ||
| 29 | W_FILTRE_LONG = &EXTRACTION(COL_CATEG:VALEUR_INTERNE_FILTRE; 4; 3) | ||
| 30 | W_FILTRE_VAL = &EXTRACTION(COL_CATEG:VALEUR_INTERNE_FILTRE; 50; 200) | ||
| 31 | FIN | ||
| 32 | {{/code}} | ||
| 33 | |||
| 34 | |||
| 35 | |||
| 36 | |||
| 37 | **2/** Parcourir la liste (LECTURE_LST, par exemple) et rendre visible ou non les lignes en fonction du filtre, ce en utilisant le filtre défini précédemment et la propriété LIGNE_VISIBLE : | ||
| 38 | |||
| 39 | |||
| 40 | |||
| 41 | {{code language="none"}} | ||
| 42 | LECTURE_LST LST_ANIMAUX:LISTE | ||
| 43 | |||
| 44 | * Masquer toutes les lignes | ||
| 45 | LST_ANIMAUX:LIGNE_VISIBLE = *FAUX | ||
| 46 | |||
| 47 | * Filtre = « tous » => Rendre visible toutes les lignes | ||
| 48 | SI W_FILTRE_OPERATEUR = '*' | ||
| 49 | LST_ANIMAUX:LIGNE_VISIBLE = *VRAI | ||
| 50 | |||
| 51 | SINON | ||
| 52 | |||
| 53 | SI W_FILTRE_CASSE = '0' | ||
| 54 | * Non respect de la casse | ||
| 55 | SI WCOL_NOM = 'CATEGORIE' | ||
| 56 | WCOL_VALEUR = &MINUSCULE(COL_CATEG:) | ||
| 57 | SINON_SI WCOL_NOM = 'ANIMAUX' | ||
| 58 | WCOL_VALEUR = &MINUSCULE(COL_ANIMAL:) | ||
| 59 | FIN | ||
| 60 | W_FILTRE_VAL = &MINUSCULE(W_FILTRE_VAL) | ||
| 61 | |||
| 62 | SINON | ||
| 63 | * Casse sensitive | ||
| 64 | SI WCOL_NOM = 'CATEGORIE' | ||
| 65 | WCOL_VALEUR = COL_CATEG: | ||
| 66 | SINON_SI WCOL_NOM = 'ANIMAUX' | ||
| 67 | WCOL_VALEUR = COL_ANIMAL: | ||
| 68 | FIN | ||
| 69 | FIN | ||
| 70 | |||
| 71 | * Rendre visible les lignes respectant le filtre | ||
| 72 | SI W_FILTRE_OPERATEUR = '=' ET WCOL_VALEUR = W_FILTRE_VAL | ||
| 73 | LST_ANIMAUX:LIGNE_VISIBLE = *VRAI | ||
| 74 | FIN | ||
| 75 | |||
| 76 | SI W_FILTRE_OPERATEUR = '>' ET WCOL_VALEUR > W_FILTRE_VAL | ||
| 77 | LST_ANIMAUX:LIGNE_VISIBLE = *VRAI | ||
| 78 | FIN | ||
| 79 | |||
| 80 | SI W_FILTRE_OPERATEUR = '<' ET WCOL_VALEUR < W_FILTRE_VAL | ||
| 81 | LST_ANIMAUX:LIGNE_VISIBLE = *VRAI | ||
| 82 | FIN | ||
| 83 | |||
| 84 | SI W_FILTRE_OPERATEUR = '~' ET WCOL_VALEUR CONTIENT W_FILTRE_VAL | ||
| 85 | LST_ANIMAUX:LIGNE_VISIBLE = *VRAI | ||
| 86 | FIN | ||
| 87 | FIN | ||
| 88 | |||
| 89 | * Mettre à jour la liste | ||
| 90 | MODIFIER_ELT LST_ANIMAUX:LISTE | ||
| 91 | FIN_LECTURE_LST | ||
| 92 | {{/code}} | ||
| 93 | |||
| 94 | |||
| 95 | |||
| 96 | **//Déclarations utiles://** | ||
| 97 | |||
| 98 | |||
| 99 | |||
| 100 | {{code language="none"}} | ||
| 101 | ALPHA(2) W_FILTRE_OPERATEUR | ||
| 102 | ALPHA(1) W_FILTRE_CASSE | ||
| 103 | ALPHA(3) W_FILTRE_LONG | ||
| 104 | ALPHA(200) W_FILTRE_VAL | ||
| 105 | ALPHA(9) WCOL_NOM | ||
| 106 | ALPHA(200) WCOL_VALEUR | ||
| 107 | |||
| 108 | {{/code}} | ||
| 109 | |||
| 110 | ((( | ||
| 111 | == Articles connexes == | ||
| 112 | ))) | ||
| 113 | |||
| 114 | Les articles connexes apparaissent ici en fonction des étiquettes que vous avez sélectionnées. Cliquez pour modifier la macro et ajouter ou modifier des étiquettes. | ||
| 115 | |||
| 116 | {{liveData sort="doc.date:desc" source="liveTable" properties="doc.title,doc.date,doc.author" description="Recently updated" limit="5" filters="tag=kb-how-to-article" sourceParameters="translationPrefix=platform.index."}}{{/liveData}} | ||
| 117 |