|
|
|
|
- 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
Manipuler un champ Tableau croisé dynamique par programmation
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 l'événement "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
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_Type_Véhicule.Libellé = "Véhicule" COL_DateCommande_Année.Libellé = "Année" COL_DateCommande_Trimestre.Libellé = "Trimestre" COL_DateCommande_Mois.Libellé = "Mois"
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 : 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 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.
- 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.
- 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 :
PROCÉDURE 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 :
| | 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.
| 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). | Jauge | La propriété Jauge permet de connaître et de modifier le champ Jauge utilisé durant le calcul d'un champ Tableau croisé dynamique (fonctions TCDCalculeTout et TCDCalculeMiseAJour). | 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. | RetourALaLigneAuto | La propriété RetourALaLigneAuto permet de : - savoir si le retour à la ligne est automatiquement géré dans un champ de saisie multiligne, dans une colonne d'un champ Table (ou Table hiérarchique) ou dans un entête de ligne d'un champ Tableau croisé dynamique.
- indiquer le mode de gestion du retour à la ligne dans un champ de saisie multiligne, dans une colonne d'un champ Table (ou Table hiérarchique) ou dans un entête de ligne d'un champ Tableau croisé dynamique.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|