DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Développer une application ou un site / Champs, fenêtres et pages / Champs : Types disponibles / Champ Table
  • Présentation
  • Comment le faire ?
  • Mise en place
  • Position de la ligne de calculs
  • Personnalisation de la ligne de calculs
  • Suppression des lignes de calcul personnalisé
  • Exporter les résultats des calculs
  • Export via les FAA (Fonctionnalités Automatiques de vos Applications) du champ Table
  • Export via les fonctions WLangage
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Présentation
WINDEV permet d'insérer simplement des calculs automatiques dans les colonnes des champs Table et Table hiérarchique.
A partir de la version 22, il est également possible de réaliser des calculs personnalisés dans les colonnes des champs Table et Table hiérarchique. Ces calculs sont réalisés par programmation.
Comment le faire ?

Mise en place

Pour mettre en place un calcul personnalisé dans une colonne d'un champ Table (ou Table hiérarchique), utilisez la fonction <Table>.FormuleAjoute.
Cette fonction attend en paramètres :
  • le nom de la colonne prise en compte pour le calcul.
  • le libellé de la ligne affichant le calcul dans le champ Table. Si ce libellé n'existe pas, la ligne sera créée. Si ce libellé existe, le calcul sera affiché dans la colonne voulue.
  • le nom de trois procédures. Ces procédures permettent :
    • d'initialiser le calcul,
    • de réaliser un calcul pour chaque ligne du champ Table,
    • de réaliser le calcul final si nécessaire.
Exemple :
TABLE_MaTable.FormuleSupprimeTout()
nLigne est entier
nLigne = TABLE_MaTable.COL_Num.FormuleAjoute("Moyenne positive", ProcInit, ProcAjout, ProcFin)
// Changement de la couleur de fond de la ligne du calcul personnalisé
COL_Num[nLigne].CouleurFond = RougeClair
 
nCompteur est entier
PROCÉDURE INTERNE ProcInit()
nCompteur = 0
RENVOYER 0
FIN
 
PROCÉDURE INTERNE ProcAjout(Accumulateur, ValeurCol)
// Ignore les négatifs ou NULL
SI (ValeurCol <= 0) RENVOYER Accumulateur
nCompteur++
RENVOYER Accumulateur + ValeurCol
FIN
PROCÉDURE INTERNE ProcFin(Accumulateur)
SI nCompteur = 0 ALORS RENVOYER 0
// Calcul de la moyenne
RENVOYER  Accumulateur/nCompteur
FIN
Remarques :
  • Les lignes de calculs personnalisés sont automatiquement recalculées dès que le contenu du champ Table (ou Table hiérarchique) change.
    Conseil : La procédure d'itération est appelée pour chaque ligne : il est recommandé de ne pas faire de calculs trop lents (par exemple, éviter les accès à la base de données).
  • La propriété TotauxActif permet d'interdire ou de forcer les calculs de colonnes (automatiques ou personnalisés) effectués dans un champ Table.
  • Si la propriété AffichageActif est utilisée sur le champ Table et correspond à Faux, les calculs de colonnes ne sont pas mis à jour.
  • Pour récupérer la valeur du calcul personnalisé d'une colonne, il suffit d'utiliser la syntaxe suivante :
    <Champ Table>.<Nom de la colonne>[Numéro ligne]
    où <Numéro ligne> correspond à l'indice de ligne renvoyé par la fonction <Table>.FormuleAjoute.

Position de la ligne de calculs

Pour configurer la position des calculs de colonnes (automatiques ou personnalisés) :
  1. Affichez l'onglet "Général" du champ Table (pour cela, sélectionnez le nom du champ Table et cliquez sur l'onglet "Général").
  2. Indiquez la position des totaux. Pour afficher le ou les résultats :
    • dans une ou plusieurs lignes ajoutées directement après la dernière ligne du champ, cochez l'option "Dans la table, après la dernière ligne".
      Ces lignes sont visibles uniquement :
      • au bas du champ Table, si le champ ne possède pas d'ascenseur vertical.
      • quand l'ascenseur vertical est tout en bas, si le champ Table possède un ascenseur vertical.
    • sous le champ Table, cochez l'option "Sous la table".
      Ces lignes sont toujours visibles.
    • il est également possible de réaliser des calculs de colonnes sans les afficher (option "Sans affichage").
  3. Validez la fenêtre de description du champ Table.

Personnalisation de la ligne de calculs

Il est possible de personnaliser (libellé, couleur, police, hauteur, ...) :
  • la ligne ajoutée en utilisant la syntaxe suivante :
    <Champ Table>[Numéro ligne].<Propriété> = <Nouvelle valeur>
  • la cellule contenant le résultat en utilisant la syntaxe suivante :
    <Champ Table>.<Nom de la colonne>[Numéro ligne].<Propriété> = <Nouvelle valeur>

    Attention : la première colonne contient le libellé du calcul s'il existe.
où :
  • <Numéro ligne> correspond à l'indice de ligne renvoyé par la fonction <Table>.FormuleAjoute.
  • <Propriété> peut correspondre à une des propriétés suivantes :
    CouleurPermet de connaître et de modifier la couleur du texte affiché dans une cellule de calcul.
    CouleurFondPermet de connaître et de modifier la couleur de fond d'une cellule de calcul.
    EtatPermet de connaître et de modifier l'état d'affichage de la ligne contenant la cellule de calcul.
    HauteurPermet de connaître et de modifier la hauteur d'une cellule de calcul.
    LargeurPermet de connaître et de modifier la largeur d'une cellule de calcul.
    LibelléPermet de connaître et de modifier le libellé de la ligne contenant une cellule de calcul.
    NomPermet de connaître le nom d'une cellule de calcul.
    NotePermet de connaître et de modifier les notes associées à une cellule de calcul.
    PolicePermet de connaître et de modifier la police utilisée dans une cellule de calcul.
    PoliceBarréePermet de connaître et de modifier l'attribut "Barré" pour une cellule de calcul.
    PoliceCondenséePermet de savoir si les caractères des éléments de la colonne sont condensés ou non, et de condenser ou non les caractères des éléments de la colonne.
    PoliceEtenduePermet de savoir si les caractères des éléments de la colonne sont étendus ou non et d'étendre ou non les caractères des éléments de la colonne.
    PoliceGrasPermet de connaître et de modifier l'attribut "Gras" pour les éléments de la colonne.
    PoliceItaliquePermet de connaître et de modifier l'attribut "Italique" pour les éléments de la colonne.
    PoliceLargePermet de savoir si les caractères des éléments de la colonne sont élargis ou non, et d'élargir ou non les caractères des éléments de la colonne.
    PoliceNomPermet de connaître et de modifier la police utilisée pour les éléments de la colonne.
    PoliceSoulignéePermet de connaître et de modifier l'attribut "Souligné" pour les éléments de la colonne.
    PoliceTaillePermet de connaître et de modifier la taille de la police utilisée pour les éléments de la colonne.
    VisiblePermet de savoir si une colonne est visible et de rendre visible / invisible une colonne.

Suppression des lignes de calcul personnalisé

Pour supprimer les lignes de calcul personnalisé, utilisez la fonction <Table>.FormuleSupprimeTout.
Exporter les résultats des calculs

Export via les FAA (Fonctionnalités Automatiques de vos Applications) du champ Table

Le menu contextuel des champs Table et Table hiérarchique propose par défaut des options permettant d'exporter le contenu du champ.
Lors de cet export, les résultats des calculs personnalisés sont exportés.
Remarque : Seule la valeur est exportée, pas le libellé.

Export via les fonctions WLangage

Diverses fonctions WLangage permettent d'exporter le contenu d'un champ Table dans un format spécifique (Word, Excel, XML, ...). Lors de cet export, par défaut les lignes correspondant à un calcul sont également exportées.
Pour ne pas exporter les lignes de calculs, il suffit de spécifier la constante taSansTotaux dans les fonctions suivantes :
<Table>.VersExcelCrée un fichier Excel avec les données d'un champ Table ou Table hiérarchique.
<Table>.VersPressePapierCopie le contenu d'un champ Table ou Table hiérarchique dans le presse-papiers.
<Table>.VersTexteCrée une chaîne de caractères avec les données d'un champ Table ou Table hiérarchique.
<Table>.VersWordCrée un fichier Word (.RTF) avec les données d'un champ Table ou Table hiérarchique.
<Table>.VersXMLCrée un fichier XML avec les données d'un champ Table ou Table hiérarchique.
Version minimum requise
  • Version 23
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale