PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Présentation
  • Manipuler le champ Tableau croisé dynamique par programmation
  • Colorer les valeurs
  • Ajouter un titre de colonne ou de ligne
  • Rendre une valeur invisible
  • Connaître et modifier le masque utilisé pour l'affichage des valeurs
  • Modifier les axes affichés
  • Modifier la source de données
  • Progression du calcul
  • Propriétés spécifiques à la gestion des champs Tableau croisé dynamique
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
Manipuler un champ Tableau croisé dynamique par programmation
Présentation
Un champ Tableau croisé dynamique peut être manipulé par programmation.
Pour manipuler un champ Tableau croisé dynamique par programmation, WINDEV propose les fonctions TCD.
Cette page d'aide détaille comment manipuler un champ Tableau croisé dynamique par programmation.
Manipuler le champ Tableau croisé dynamique par programmation

Colorer les valeurs

Depuis le menu contextuel de champ Tableau croisé dynamique, l'utilisateur final peut colorer facilement une valeur pour la mettre en évidence. Pour plus de détails, consultez Fonctionnalités automatiques des champs Tableau Croisé Dynamique.
Par programmation, il est possible d'accéder aux valeurs pour modifier leur style (couleur de texte ou de fond, ...). Il suffit de modifier les propriétés des valeurs dans le traitement "Affichage d'une cellule".
Par exemple :
// Si le CA est inférieur à 500, affiche la valeur en rouge
SI VAL_CA <= 500 ALORS
VAL_CA..CouleurFond = RougePastel
FIN
Versions 20 et supérieures
Remarque : Il est possible de personnaliser le style de chaque élément de la cellule : couleur, police, couleur de fond, ... à l'aide de nombreuses propriétés. Pour plus de détails, consultez Propriétés associées aux valeurs d'un champ Tableau croisé dynamique.
Nouveauté 20
Remarque : Il est possible de personnaliser le style de chaque élément de la cellule : couleur, police, couleur de fond, ... à l'aide de nombreuses propriétés. Pour plus de détails, consultez Propriétés associées aux valeurs d'un champ Tableau croisé dynamique.
Remarque : Il est possible de personnaliser le style de chaque élément de la cellule : couleur, police, couleur de fond, ... à l'aide de nombreuses propriétés. Pour plus de détails, consultez Propriétés associées aux valeurs d'un champ Tableau croisé dynamique.
Versions 19 et supérieures

Ajouter un titre de colonne ou de ligne

Par défaut, les lignes ou les colonnes d'un champ Tableau croisé dynamique n'ont pas de titre. Il est possible d'en ajouter un avec la propriété ..Libellé utilisée sur le nom de l'entête.
Par exemple :
  • Tableau croisé dynamique n'affichant pas de titre :
  • Tableau croisé dynamique avec un titre :
Le code utilisé est le suivant :
// Initialisation de TCD_Stats
COL_Continent..Libellé = "Continent"
COL_Pays..Libellé = "Pays"
COL_TypeVéhicule..Libellé = "Véhicule"
COL_DateCommande_Année..Libellé = "Année"
COL_DateCommande_Trimestre..Libellé = "Trimestre"
COL_DateCommande_Mois..Libellé = "Mois"
Nouveauté 19

Ajouter un titre de colonne ou de ligne

Par défaut, les lignes ou les colonnes d'un champ Tableau croisé dynamique n'ont pas de titre. Il est possible d'en ajouter un avec la propriété ..Libellé utilisée sur le nom de l'entête.
Par exemple :
  • Tableau croisé dynamique n'affichant pas de titre :
  • Tableau croisé dynamique avec un titre :
Le code utilisé est le suivant :
// Initialisation de TCD_Stats
COL_Continent..Libellé = "Continent"
COL_Pays..Libellé = "Pays"
COL_TypeVéhicule..Libellé = "Véhicule"
COL_DateCommande_Année..Libellé = "Année"
COL_DateCommande_Trimestre..Libellé = "Trimestre"
COL_DateCommande_Mois..Libellé = "Mois"

Ajouter un titre de colonne ou de ligne

Par défaut, les lignes ou les colonnes d'un champ Tableau croisé dynamique n'ont pas de titre. Il est possible d'en ajouter un avec la propriété ..Libellé utilisée sur le nom de l'entête.
Par exemple :
  • Tableau croisé dynamique n'affichant pas de titre :
  • Tableau croisé dynamique avec un titre :
Le code utilisé est le suivant :
// Initialisation de TCD_Stats
COL_Continent..Libellé = "Continent"
COL_Pays..Libellé = "Pays"
COL_TypeVéhicule..Libellé = "Véhicule"
COL_DateCommande_Année..Libellé = "Année"
COL_DateCommande_Trimestre..Libellé = "Trimestre"
COL_DateCommande_Mois..Libellé = "Mois"
Versions 19 et supérieures

Rendre une valeur invisible

Par défaut, toutes les valeurs d'un tableau croisé dynamique sont affichées. Dans certains cas, il peut être intéressant de calculer des valeurs mais de ne pas les afficher. Les valeurs existent dans le champ Tableau croisé dynamique et peuvent être par exemple utilisées pour réaliser un calcul, remplir un graphe, ...
Pour rendre une valeur invisible, il suffit d'utiliser la propriété ..Visible.
Exemple : Un tableau croisé dynamique affiche dans chaque cellule le chiffre d'affaires et la quantité vendue. Un graphe est construit à partir de la quantité vendue et cette quantité ne doit pas être affichée dans le champ Tableau croisé dynamique. Il suffit d'utiliser la ligne de code suivante dans le code d'initialisation du champ Tableau croisé dynamique :
VAL_Qté..Visible = Faux
Nouveauté 19

Rendre une valeur invisible

Par défaut, toutes les valeurs d'un tableau croisé dynamique sont affichées. Dans certains cas, il peut être intéressant de calculer des valeurs mais de ne pas les afficher. Les valeurs existent dans le champ Tableau croisé dynamique et peuvent être par exemple utilisées pour réaliser un calcul, remplir un graphe, ...
Pour rendre une valeur invisible, il suffit d'utiliser la propriété ..Visible.
Exemple : Un tableau croisé dynamique affiche dans chaque cellule le chiffre d'affaires et la quantité vendue. Un graphe est construit à partir de la quantité vendue et cette quantité ne doit pas être affichée dans le champ Tableau croisé dynamique. Il suffit d'utiliser la ligne de code suivante dans le code d'initialisation du champ Tableau croisé dynamique :
VAL_Qté..Visible = Faux

Rendre une valeur invisible

Par défaut, toutes les valeurs d'un tableau croisé dynamique sont affichées. Dans certains cas, il peut être intéressant de calculer des valeurs mais de ne pas les afficher. Les valeurs existent dans le champ Tableau croisé dynamique et peuvent être par exemple utilisées pour réaliser un calcul, remplir un graphe, ...
Pour rendre une valeur invisible, il suffit d'utiliser la propriété ..Visible.
Exemple : Un tableau croisé dynamique affiche dans chaque cellule le chiffre d'affaires et la quantité vendue. Un graphe est construit à partir de la quantité vendue et cette quantité ne doit pas être affichée dans le champ Tableau croisé dynamique. Il suffit d'utiliser la ligne de code suivante dans le code d'initialisation du champ Tableau croisé dynamique :
VAL_Qté..Visible = Faux
Versions 19 et supérieures

Connaître et modifier le masque utilisé pour l'affichage des valeurs

Pour connaître et modifier le type affiché pour une valeur d'un champ Tableau croisé dynamique, utilisez la propriété ..TypeSaisie. Il est possible d'utiliser les syntaxes suivantes :
{{"Nom Valeur"}}..TypeSaisie = typSaisieDurée
ou bien :
NomValeur..TypeSaisie = typSaisieDurée
Nouveauté 19

Connaître et modifier le masque utilisé pour l'affichage des valeurs

Pour connaître et modifier le type affiché pour une valeur d'un champ Tableau croisé dynamique, utilisez la propriété ..TypeSaisie. Il est possible d'utiliser les syntaxes suivantes :
{{"Nom Valeur"}}..TypeSaisie = typSaisieDurée
ou bien :
NomValeur..TypeSaisie = typSaisieDurée

Connaître et modifier le masque utilisé pour l'affichage des valeurs

Pour connaître et modifier le type affiché pour une valeur d'un champ Tableau croisé dynamique, utilisez la propriété ..TypeSaisie. Il est possible d'utiliser les syntaxes suivantes :
{{"Nom Valeur"}}..TypeSaisie = typSaisieDurée
ou bien :
NomValeur..TypeSaisie = typSaisieDurée
Versions 19 et supérieures

Modifier les axes affichés

Il est possible de modifier les axes affichés ou d'inverser les lignes et les colonnes grâce à la fonction TCDAxeXY.
Exemple :
// Modifie les lignes et les colonnes affichées
TCDAxeXY(TCD_Stats, "COL_Année" + RC + "COL_Trimestre", "COL_TypeVéhicule" + RC + "COL_Modèle")
Nouveauté 19

Modifier les axes affichés

Il est possible de modifier les axes affichés ou d'inverser les lignes et les colonnes grâce à la fonction TCDAxeXY.
Exemple :
// Modifie les lignes et les colonnes affichées
TCDAxeXY(TCD_Stats, "COL_Année" + RC + "COL_Trimestre", "COL_TypeVéhicule" + RC + "COL_Modèle")

Modifier les axes affichés

Il est possible de modifier les axes affichés ou d'inverser les lignes et les colonnes grâce à la fonction TCDAxeXY.
Exemple :
// Modifie les lignes et les colonnes affichées
TCDAxeXY(TCD_Stats, "COL_Année" + RC + "COL_Trimestre", "COL_TypeVéhicule" + RC + "COL_Modèle")

Modifier la source de données

Il est possible de modifier la source de données d'un champ Tableau croisé dynamique grâce à la propriété ..FichierParcouru.
Exemple :
// Modifie les lignes et les colonnes affichées
TCD_Stats..FichierParcouru = Stat2015
Attention :
  • Si le champ Tableau croisé dynamique est basé sur un fichier de données, le nouveau fichier de données source doit avoir la même structure que le fichier utilisé lors de la création du champ.
  • Versions 20 et supérieures
    Si le champ Tableau croisé dynamique est basé sur un tableau de structures :
    • le nouveau tableau de structures source doit avoir la même structure que la variable utilisée lors de la création du champ.
    • le nom de la nouvelle structure doit être précédé par ":". Par exemple :
      TCD_Stats..FichierParcouru = ":MaNouvelleStructure"
    Nouveauté 20
    Si le champ Tableau croisé dynamique est basé sur un tableau de structures :
    • le nouveau tableau de structures source doit avoir la même structure que la variable utilisée lors de la création du champ.
    • le nom de la nouvelle structure doit être précédé par ":". Par exemple :
      TCD_Stats..FichierParcouru = ":MaNouvelleStructure"
    Si le champ Tableau croisé dynamique est basé sur un tableau de structures :
    • le nouveau tableau de structures source doit avoir la même structure que la variable utilisée lors de la création du champ.
    • le nom de la nouvelle structure doit être précédé par ":". Par exemple :
      TCD_Stats..FichierParcouru = ":MaNouvelleStructure"

Progression du calcul

  • Pendant le calcul du champ Tableau croisé dynamique, une jauge de progression est affichée.
  • Versions 20 et supérieures
    L'utilisateur a la possibilité d'annuler le calcul via un bouton "Annuler".
    Pour savoir si le calcul a été effectué jusqu'au bout, utilisez la variable ErreurDétectée.
    Exemple :
    PROCEDURE Chargement_TCD()

    TCDCalculeTout(TCD_Statistiques)
    SI ErreurDétectée = Vrai ALORS
    SELON Dialogue("Voulez-vous annuler le traitement en cours ?")
    // Annuler
    CAS 1
    Ferme()
    // Continuer
    CAS 0
    Chargement_TCD()
    FIN
    FIN
    Nouveauté 20
    L'utilisateur a la possibilité d'annuler le calcul via un bouton "Annuler".
    Pour savoir si le calcul a été effectué jusqu'au bout, utilisez la variable ErreurDétectée.
    Exemple :
    PROCEDURE Chargement_TCD()

    TCDCalculeTout(TCD_Statistiques)
    SI ErreurDétectée = Vrai ALORS
    SELON Dialogue("Voulez-vous annuler le traitement en cours ?")
    // Annuler
    CAS 1
    Ferme()
    // Continuer
    CAS 0
    Chargement_TCD()
    FIN
    FIN
    L'utilisateur a la possibilité d'annuler le calcul via un bouton "Annuler".
    Pour savoir si le calcul a été effectué jusqu'au bout, utilisez la variable ErreurDétectée.
    Exemple :
    PROCEDURE Chargement_TCD()

    TCDCalculeTout(TCD_Statistiques)
    SI ErreurDétectée = Vrai ALORS
    SELON Dialogue("Voulez-vous annuler le traitement en cours ?")
    // Annuler
    CAS 1
    Ferme()
    // Continuer
    CAS 0
    Chargement_TCD()
    FIN
    FIN

Propriétés spécifiques à la gestion des champs Tableau croisé dynamique

Les propriétés spécifiques à la gestion des champs Tableau croisé dynamique sont les suivantes :
Versions 18 et supérieures
AfficheOrphelin
Nouveauté 18
AfficheOrphelin
AfficheOrphelin
La propriété ..AfficheOrphelin permet de :
  • Savoir si une ligne ou une colonne d'un champ Tableau croisé dynamique est affichée lorsqu'elle n'a pas de parent.
  • Modifier le mode d'affichage d'une ligne ou d'une colonne d'un champ Tableau croisé dynamique lorsqu'elle n'a pas de parent.
Versions 18 et supérieures
Cumul
Nouveauté 18
Cumul
Cumul
La propriété ..Cumul permet de savoir si la valeur d'une colonne ou d'une ligne d'un champ Tableau croisé dynamique correspond à un total (total de fin de ligne ou de fin de colonne).
Versions 18 et supérieures
Jauge
Nouveauté 18
Jauge
Jauge
La propriété ..Jauge permet de connaître et de modifier le champ Jauge utilisé durant le calcul d'un tableau croisé dynamique (fonctions TCDCalculeTout et TCDCalculeMiseAJour).
Versions 18 et supérieures
ProcédureFiltre
Nouveauté 18
ProcédureFiltre
ProcédureFiltre
La propriété ..ProcédureFiltre permet de connaître et de modifier la procédure à appeler pour filtrer sur un entête de ligne ou de colonne durant le calcul d’un tableau croisé dynamique.
Pour connaître la liste complète des propriétés du WLangage pouvant être utilisées avec un champ de type Tableau croisé dynamique, consultez Propriétés associées au champ Tableau croisé dynamique.
Version minimum requise
  • Version 18
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire