PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Présentation
  • Comment le faire ?
  • Filtrer les entêtes de lignes ou de colonnes
  • Utiliser une procédure de filtre
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Filtrer des entêtes et le contenu d'un Tableau croisé dynamique
Présentation
Par défaut, le contenu d'un tableau croisé dynamique est calculé à partir de toutes les données présentes dans les fichiers pris en compte par le champ Tableau croisé dynamique.
Pour filtrer les données affichées dans le champ Tableau croisé dynamique, il est possible :
Ces éléments doivent être définis AVANT le calcul du contenu du champ Tableau croisé dynamique.
Comment le faire ?

Filtrer les entêtes de lignes ou de colonnes

Pour filtrer les valeurs affichées par les entêtes de lignes ou de colonnes, il suffit d'utiliser les propriétés ..BorneMin et ..BorneMax.
Par exemple, un champ Tableau croisé dynamique affiche les ventes de produits par pays et par année. Pour filtrer les pays et afficher uniquement les pays commençant par une lettre comprise entre A et F, le code correspondant est :
COL_Pays..BorneMin = "A"
COL_Pays..BorneMax = "F"
TCDCalculeTout(TCD_Ventes)
Pour le même exemple, pour n'afficher que les ventes entre 2010 et 2012, le code correspondant est :
COL_DateCommande_Année..BorneMin = "2010"
COL_DateCommande_Année..BorneMax = "2012"

TCDCalculeTout(TCD_Ventes)

Utiliser une procédure de filtre

Une procédure de filtre peut être définie lors de la description des entêtes de lignes ou de colonnes. Cette procédure permet notamment d’accélérer la vitesse de calcul du tableau croisé dynamique en réduisant la volumétrie à traiter.
Pour définir une procédure de filtre :
  1. Affichez la fenêtre de description de l'entête de ligne ou de colonne à filtrer.
  2. Dans le détail de l'entête, cliquez sur "Aucun" à côté de "Filtre".
  3. Une fenêtre s'affiche, permettant de sélectionner la procédure de filtre :
    • Si cette procédure existe déjà dans votre projet, sélectionnez la procédure voulue.
    • Si cette procédure n'existe pas, cliquez sur le bouton "Créer une procédure". Dans ce cas :
      • Une fenêtre s'affiche, permettant de donner le nom de la procédure locale à créer. Validez.
      • Une fenêtre s'affiche, permettant de sélectionner la ou les rubrique(s) dont la valeur sera automatiquement affectée au(x) paramètre(s) de la procédure :
        1. Cliquez sur "Ajouter un paramètre".
        2. Sélectionnez l'élément à traiter dans la procédure. Cet élément provient de la source des valeurs de l'entête.
        3. Répétez si nécessaire ces manipulations pour ajouter de nouveaux paramètres.
        4. Cliquez si nécessaire sur le bouton "Compléter la procédure" pour saisir le code de la procédure directement sous l'éditeur de code. L'éditeur de code s'affiche
      • Validez la fenêtre de description du champ.
Contenu de la procédure de filtre
La procédure de filtre permet de filtrer l'entête de colonne selon le ou les paramètres spécifiés.
Pour que l'enregistrement en cours soit pris en compte dans le tableau croisé dynamique, la procédure doit utiliser la ligne de code suivante :
RENVOYER Vrai
Pour que l'enregistrement en cours ne soit pas pris en compte dans le tableau croisé dynamique, la procédure doit utiliser la ligne de code suivante :
RENVOYER Faux
Exemple : Sélection de certains pays dans un tableau croisé dynamique représentant les ventes par pays et par année :
PROCEDURE Selection_Pays(pParam_Pays)

SI Majuscule(pParam_Pays) DANS ("FRANCE", "ITALIE", "ALLEMAGNE", "ESPAGNE", ...
"GRECE", "PORTUGAL", "SUISSE", "BELGIQUE") ALORS
RENVOYER Vrai
SINON
RENVOYER Faux
FIN
Remarque : Il est également possible d'associer une procédure de filtre à un entête de ligne ou de colonne grâce à la propriété ..ProcédureFiltre.
Version minimum requise
  • Version 18
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire