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
  • Etat initial du champ Table
  • Détail des options d'affichage
  • Mode de sélection d'une ligne
  • Mode de sélection d'une cellule (Table par programmation)
  • Options d'affichage
  • Ascenseurs dans un champ Table
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
Le champ Table permet aussi bien d'afficher et/ou de saisir des informations. Ces informations peuvent provenir d'une source de données, d'une variable WLangage ou être mémorisées.
WEBDEV propose 3 modes de fonctionnement des champs Table :
  • Table en mode "Serveur".
  • Table en mode "Serveur + AJAX".
  • Table en mode "Navigateur".
Cette page d'aide présente les principales caractéristiques pouvant être définies pour un champ Table présent dans une page :
Il est également possible de définir la source des données affichée dans le champ. Pour plus de détails, consultez Contenu d'un champ Table.
Etat initial du champ Table
L'état initial du champ Table peut être :
Etat initial
Cet état initial est défini lors de la création du champ. Il peut être modifié à tout moment dans l'onglet "UI" des caractéristiques du champ Table.
Les différentes possibilités sont les suivantes :
  • Visible : Si cette option est cochée, le champ Table sera visible. Si cette option est décochée, le champ Table sera invisible. Cette option peut être modifiée en programmation grâce à la propriété Visible.
  • Pour les champs Table en mode navigateur ou Ajax, les options suivantes sont également disponibles :
    • En saisie : L'utilisateur pourra saisir dans les différentes colonnes du champ si ces colonnes sont en saisie.
    • Grisé : Le champ Table et ses colonnes seront grisés. L'utilisateur ne pourra pas saisir d'informations dans le champ.
    • Sélection (sans saisie) : L'utilisateur ne pourra pas saisir dans les colonnes du champ. Il sera possible de sélectionner une ligne du champ :
      • soit en cliquant sur cette ligne.
      • soit en utilisant la fonction TableSelectPlus.
      La ligne sera sélectionnée grâce au bandeau de sélection.
      Remarque : La valeur du champ Table correspond à la ligne sélectionnée. A chaque sélection, le code de sélection de ligne est exécuté.
    • Ni saisie, ni sélection : L'utilisateur ne pourra pas saisir dans les colonnes du champ. Il sera possible de sélectionner une ligne du champ uniquement par programmation grâce à la fonction TableSelectPlus. Cette ligne sera sélectionnée grâce au bandeau de sélection. L'utilisateur ne pourra pas modifier la position du bandeau de sélection.
      Remarque : La valeur du champ Table correspond à la ligne sélectionnée.
      Conseil : Cette option est conseillée lorsqu'il est nécessaire de mettre en valeur une ligne grâce au bandeau de sélection.
Détail des options d'affichage

Mode de sélection d'une ligne

Les modes de sélection d'une ligne déterminent comment une ligne du champ Table pourra être sélectionnée, aussi bien par l'utilisateur que par programmation. Ce mode de sélection est défini lors de la création du champ. Il peut être modifié à tout moment dans l'onglet "UI" de la fenêtre de description du champ Table.
Les modes de sélection disponibles sont les suivants :
Mode de sélection
  • Sans sélection : Le bandeau de sélection ne sera pas affiché, cependant la ligne sélectionnée aura le focus (elle sera entourée de pointillés). Il sera possible de sélectionner une ligne par un clic sur cette ligne ou par programmation.
  • Sélection simple : La ligne sélectionnée apparaîtra sous le bandeau de sélection. Il sera possible de sélectionner une ligne par un clic sur cette ligne ou par programmation.
  • Sélection multiple : Il est possible de sélectionner simultanément plusieurs lignes :
    • grâce à la touche Maj si les lignes se suivent et à la touche Ctrl si les lignes ne se suivent pas.
    • par programmation.
    Dans ce cas, il y aura autant de bandeaux de sélection que de lignes sélectionnées.
Remarques :
  • Si vous tentez de réaliser une sélection multiple par programmation alors que le mode de sélection du champ est "Sélection simple", une erreur du WLangage sera affichée.
  • Champs Table en mode "Serveur" : la sélection multiple est disponible uniquement pour les champs Table fichier.
Cas de la sélection multiple : La récupération des éléments sélectionnés se fera en parcourant les lignes sélectionnées dans le champ. La fonction TableSelectOccurrence permet de connaître le nombre de lignes sélectionnées dans le champ Table :
// Trace le contenu des lignes sélectionnées
i est un entier
NbSelectionne est un entier = TableSelectOccurrence(TABLE_Produit)
POUR i = 1 À NbSelectionne
Trace("Ligne sélectionnée : " + i)
FIN

Mode de sélection d'une cellule (Table par programmation)

Les modes de sélection d'une cellule déterminent comment une cellule du champ Table pourra être sélectionnée. Ce mode de sélection est défini lors de la création du champ. Il peut être modifié à tout moment dans l'onglet "UI" de la fenêtre de description du champ Table.
Les modes de sélection disponibles sont les suivants :
Mode de sélection
  • Sans sélection : La sélection d'une cellule n'est pas possible.
  • Sélection simple : Il est possible de sélectionner uniquement une cellule dans le champ.
  • Sélection multiple : Il est possible de sélectionner simultanément plusieurs cellules grâce à la touche Maj si les cellules se suivent et à la touche Ctrl si les cellules ne se suivent pas.
Remarque : La sélection des cellules est disponible uniquement pour les champs Table AJAX et les champs Table navigateur.
Cas de la sélection multiple : La récupération des éléments sélectionnés se fera en parcourant les cellules sélectionnées dans le champ. La fonction TableSelect permet de connaître l'indice de la colonne et de la ligne sélectionnée dans le champ Table :
tabNumColVersNomCol est un tableau associatif de chaînes
tabNumColVersNomCol [1] = "COL_Texte"
tabNumColVersNomCol [2] = "COL_Num"
tabNumColVersNomCol [3] = "COL_Date"
tabNumColVersNomCol [4] = "COL_Heure"
tabNumColVersNomCol [5] = "COL_Liste"
tabNumColVersNomCol [6] = "COL_Interr"
tabNumColVersNomCol [7] = "COL_Image"
tabNumColVersNomCol [8] = "COL_Cont"
 
nCol est un entier
nLig est un entier
nInd est un entier = 1
BOUCLE
nCol = TableSelect(TABLE_SélectionMultiple, nInd, tsColonneCellule)
nLig = TableSelect(TABLE_SélectionMultiple, nInd, tsLigneCellule)
SI nLig <= 0 ALORS
SORTIR
FIN
Trace("[%tabNumColVersNomCol[nCol]%][[%nLig%]]")
nInd++
FIN

Options d'affichage

Les options d'affichage (onglet "Général") permettent de définir :
  • le mode d'affichage du champ Table (titre des colonnes affiché).
  • le mode de sélection d'une ligne du champ Table (présence d'un sélecteur ou / et d'un bandeau de sélection).
  • la présence d'un menu contextuel.
Selon le mode de fonctionnement du champ (Serveur, Serveur + AJAX ou Navigateur), certaines options peuvent ne pas être disponibles.
Options d'affichage
Les options disponibles sont les suivantes :
  • Avec titres de colonnes : le libellé défini pour les colonnes est utilisé en titre de colonne.
    Remarque : La hauteur du titre des colonnes peut être indiquée dans l'onglet "UI" de la description du champ Table. Il est également possible de modifier cette hauteur directement sous l'éditeur, à l'aide de la souris. Si une image de fond est associée au titre de la colonne, l'image est automatiquement générée à la taille indiquée.
  • Si l'option "Avec titres de colonnes" est sélectionné, le bouton "Editer les sur-entêtes de colonnes" permet de définir des titres supplémentaires affichés au-dessus du titre d'une ou plusieurs colonnes. Pour définir un sur-entête de colonnes :
    1. Affichez l'onglet "Détail" de la fenêtre de description du champ Table (option "Description" du menu contextuel).
    2. Cliquez sur le bouton "Editer les sur-entêtes de colonnes".
    3. Dans la fenêtre qui s'ouvre, les différentes colonnes de la table sont affichées.
      Sur-entête de colonnes

      Dans cette fenêtre, il est possible de :
      • 1 : Ajouter des sur-entêtes (bouton "+") ou supprimer des sur-entêtes (bouton "-").
      • 2 : Redimensionner et fusionner les différentes cellules des sur-entêtes en survolant les séparateurs.
      • 3 : Renommer les cellules des sur-entêtes en cliquant dessus.
    4. Validez.
      Remarque : Si les sur-entêtes de colonnes sont activés, la modification du libellé des colonnes via la fenêtre de description de la colonne n'est pas prise en compte : le libellé doit être modifié dans la fenêtre d'édition des sur-entêtes de colonnes.
  • Colonne de sélection de la ligne courante : un sélecteur est présent devant chaque ligne du champ Table. Ce sélecteur permet de visualiser et/ou de sélectionner la ligne en cours.
    Cette option est disponible uniquement pour les champs Table en mode "Serveur".
  • Bandeau de sélection : un bandeau de sélection permet de visualiser et / ou de sélectionner la ligne en cours.
    Cette option est disponible uniquement pour les champs Table en mode "Serveur".
  • Avec menu contextuel d'export : un menu contextuel associé au champ (icône Icône menu contextuel) est affiché. Ce menu contextuel permettra à l'internaute d'exporter le contenu du champ Table vers un fichier Excel, Word ou XML (avec feuille de styles). Ce fichier sera téléchargé sur le poste de l'internaute.
    L'icône représentant le menu contextuel peut être personnalisée : il suffit d'indiquer le chemin de l'image voulue dans l'onglet "Style" de la description du champ Table (élément "Autre"). L'image utilisée doit être une image de 16 pixels x 15 pixels.
    Cette option est disponible uniquement pour les champs Table en mode Serveur et les champs Table en mode "Serveur + AJAX".
Exemple : Champ Table Serveur avec titre des colonnes, gestion d'un bandeau de sélection, un sélecteur et un menu contextuel :
Champ Table
Ascenseurs dans un champ Table
La gestion des ascenseurs dépend du mode de fonctionnement du champ Table : Serveur, Serveur + AJAX ou Navigateur.
Dans le cas d'un champ Table en mode "Serveur", le champ Table ne comporte pas d'ascenseurs. Par contre, il est possible de définir un nombre maximum de lignes par page (onglet "Général" de la fenêtre de description du champ Table). Dans ce cas, un champ Réglette est automatiquement créé et associé au champ Table. Les différents boutons de la réglette permettent à l'utilisateur d'afficher le contenu du champ Table.
Dans le cas d'un champ Table en mode "Serveur + AJAX", le champ Table affiché dans la page ressemblera à un champ Table Windows. Des ascenseurs seront affichés. Ils permettront à l'utilisateur de visualiser la totalité des éléments présents dans le champ. Le paramétrage des ascenseurs est réalisé dans l'onglet "Général" de la fenêtre de description du champ Table.
Les options possibles sont les suivantes :
  • Définir le mode de gestion des ascenseurs horizontal et vertical.
  • Champ Table sans ascenseur vertical : Tout le contenu du champ table sera affiché dans la page, sans limitation du nombre de lignes.
  • Champ Table avec ascenseur vertical :
    • Si l'option "Mettre tout son contenu en cache navigateur" est cochée, le contenu du champ Table est totalement chargé dans le cache du navigateur. Dans ce cas, le chargement de la page peut être plus long, mais aucun retour au serveur n'est effectué lors de la manipulation de l'ascenseur. Cette option est notamment conseillée pour les champs Table Ajax utilisées dans des pages AWP. Dans ce cas, l'ascenseur vertical est automatiquement géré.
    • Si l'option "Mettre tout son contenu en cache navigateur" n'est pas cochée, le fonctionnement par défaut des versions précédentes est retrouvé. Seul un nombre limité de lignes autour de la zone affichée dans le champ Table est mis en cache.
Dans le cas d'un champ Table en mode "Navigateur", le champ Table affiché dans la page ressemblera à un champ Table Windows. Le paramétrage des ascenseurs est réalisé dans l'onglet "Général" de la fenêtre de description du champ Table.
Les options possibles sont les suivantes :
  • Définir le mode de gestion des ascenseurs horizontal et vertical.
  • Champ Table sans ascenseur vertical : Tout le contenu du champ Table sera affiché dans la page, sans limitation du nombre de lignes.
  • Champ Table avec ascenseur vertical : Un ascenseur vertical permet de faire défiler les lignes non affichées dans le champ Table.
Version minimum requise
  • Version 9
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 20/06/2022

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