|
|
|
|
|
- Présentation
- Sélection, ajout et modification d'une ligne dans un champ Table fichier
- Suppression d'une ligne dans un champ Table fichier
- Gestion des colonnes calculées
- Récupération du contenu d'une ligne, d'une colonne ou d'une cellule
- Important
- Valeur d'une cellule de la ligne en cours
- Valeur d'une cellule pour une ligne spécifique
- Contenu de la ligne en cours
- Contenu de la ligne X
- Contenu des lignes sélectionnées dans le cas d'une multisélection
Programmation des champs Table fichier (syntaxe préfixée)
Voici les principaux points de la programmation des champs Table fichier. Le WLangage met à votre disposition de nombreuses fonctions permettant de gérer par programmation les champs Table fichier. Sélection, ajout et modification d'une ligne dans un champ Table fichier La sélection d'une ligne s'effectue avec la fonction <Table>.SelectPlus. Si aucune rubrique mémorisée n'est définie pour le champ Table fichier, il est également possible d'utiliser la syntaxe :
<Champ Table> = <Numéro de la ligne à sélectionner> L'ajout et la modification d'une ligne dans le champ Table fichier (et d'un enregistrement dans le fichier de données) se décompose en deux phases : - Ajout ou modification de l'enregistrement dans le fichier de données (par une fenêtre ou une page de type fiche par exemple).
- Réaffichage du champ Table fichier :
- réactualisation de la page.
Suppression d'une ligne dans un champ Table fichier Pour supprimer une ligne dans le champ Table fichier, utilisez la fonction <Table>.Supprime. La fonction <Table>.Supprime supprime l'enregistrement correspondant dans le fichier de données.
Important : Pour supprimer un enregistrement dans le fichier de données, il ne faut pas utiliser la fonction <Source>.Supprime sous peine de perte de données dans le fichier de données. Gestion des colonnes calculées La formule de calcul d'une colonne calculée doit être décrite dans l'événement "Affichage d'une ligne" du champ Table. Exemple de code dans l'événement "Affichage d'une ligne" du champ Table : // COL_MsgAlerte : une colonne calculée // La colonne COL_MsgAlerte affiche "Alerte" si COL_Stock<200 SI COL_Stock < 200 ALORS COL_MsgAlerte = "Alerte" SINON COL_MsgAlerte = "" FIN
Par définition, une colonne calculée n'est pas reliée à une rubrique : la valeur affectée par le code d'affichage d'une ligne n'est pas mémorisée après un défilement des lignes du champ Table via l'ascenseur vertical. Par exemple, l'instruction "POUR TOUTE LIGNE" ne permettra pas d'affecter ou de récupérer la valeur d'une colonne calculée de toutes les lignes du champ Table fichier. Si le champ Table est un champ Table fichier "Chargé en mémoire" (option "Chargé en mémoire" cochée dans l'onglet "Contenu" de la fenêtre de description du champ), les colonnes calculées seront mémorisées lors de l'exécution du champ Table. Récupération du contenu d'une ligne, d'une colonne ou d'une cellule Important Le contenu d'une ligne d'un champ Table fichier peut être récupéré : - soit en récupérant la ligne entière.
- soit cellule par cellule.
Valeur d'une cellule de la ligne en cours La cellule est identifiée par le nom de la colonne. La syntaxe à utiliser est la suivante :
<Valeur> = <Nom de la colonne> Exemple : // COL_QTE est une colonne du champ Table SI COL_QTE < 10 ALORS Info("Quantité insuffisante") FIN
Valeur d'une cellule pour une ligne spécifique La cellule est identifiée par le nom de la colonne. La syntaxe à utiliser est la suivante : <Valeur> = <Nom de la colonne>[<Indice de la ligne>] Exemple : // Totalise le Prix présent dans la colonne COL_PHT // pour toutes les lignes de commande affichées PrixTotal = 0 POUR Indice = 1 À TABLE_COMMANDE.Occurrence PrixTotal = PrixTotal + COL_PHT[Indice] FIN
Contenu de la ligne en cours La syntaxe à utiliser est la suivante : Il est également possible d'utiliser la syntaxe : <Valeur> = <Champ Table>[<Champ Table>] Contenu de la ligne X La syntaxe à utiliser est la suivante : <Valeur> = <Champ Table>[<Indice de la ligne>] Remarque : L'indice de la ligne peut être donné par la fonction <Table>.Select.
LigneEnCours = TABLE_CLIENT
NomCli = COL_NOM[TABLE_CLIENT.Select()]
Contenu des lignes sélectionnées dans le cas d'une multisélection La syntaxe à utiliser est la suivante :
<Valeur> = <Champ Table>[<Indice de la ligne>] Remarque : Pour connaître les indices des lignes sélectionnées, il faut utiliser les fonctions <Table>.SelectOccurrence et <Table>.Select.
i est un entier
NbSelectionne est un entier = TABLE_Produit.SelectOccurrence()
POUR i = 1 À NbSelectionne
Trace("Ligne sélectionnée : " + ...
TABLE_Produit[TABLE_Produit.Select(i)])
FIN
Note : Les champs Table fichier multisélections ne sont pas disponibles : - Si le champ Table contient des ascenseurs proportionnels.
- Si le champ Table est de type "Compatible 5.5".
- Dans les champs Table affichés par les combos.
Remarque : La propriété Multisélection permet de connaître le mode de sélection d'un champ Table.
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|