DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Champs, pages et fenêtres / Fonctions Table
  • Conditions d'utilisation
  • Mise à jour du fichier de données lié au champ Table ou Table hiérarchique
  • Saisie en cascade et mise à jour du fichier de données lié
  • Ré-affichage de la ligne enregistrée
  • Blocage du fichier de données et mise à jour
  • Doublons et intégrité référentielle
  • Utilisez la fonction <Table>.Enregistre pour économiser vos lignes de code
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
Modifie ou ajoute l'enregistrement associé à la ligne en cours dans le champ Table fichier ou Table hiérarchique fichier. L'enregistrement est mis à jour :
  • dans le fichier de données lié au champ.
  • WINDEV dans la variable lié au champ.
Exemple
// Enregistrement des données de la ligne en cours
// pour le champ Table "TABLE_Produit"
TABLE_Produit.Enregistre()
// Enregistrement des données de la ligne 5 
// avec modification d'une colonne par programmation
TABLE_Produit = 5
TABLE_Produit[5].COL_Lib = "nouvelle valeur"
TABLE_Produit.Enregistre()
// Evénement Sortie d'une ligne
SI TABLE_Client.Modifié = Faux ALORS
RETOUR
FIN
pclPresentationFiche est un PFicheClient dynamique
SI TABLE_Client.Nouveau ALORS
pclPresentationFiche<-gclPresentation.Nouveau()
SINON
pclPresentationFiche<-gclPresentation.Modifier()
FIN
TABLE_Client.Enregistre(pclPresentationFiche)
Syntaxe

Enregistrer dans un fichier de données Masquer les détails

<Champ Table>.Enregistre()
<Champ Table> : Nom de champ
Nom du champ Table fichier à manipuler.
WINDEV

Enregistrer dans un objet (syntaxe disponible notamment pour le MVP) Masquer les détails

<Champ Table>.Enregistre(<Nom de l'objet>)
<Champ Table> : Nom de champ
Nom du champ Table sur variable à manipuler.
<Nom de l'objet> : Chaîne de caractères
Nom de l'objet à manipuler. Le contenu de la ligne en cours du champ Table sera enregistré dans les membres de l'objet associé.
Remarques

Conditions d'utilisation

La fonction <Table>.Enregistre peut être utilisée indifféremment sur :
  • un champ Table fichier ou un champ Table hiérarchique fichier.
  • un champ monosélection ou multisélection. Dans le cas d'un champ multisélection, seul le dernier enregistrement sélectionné est modifié (l'enregistrement correspondant à la dernière ligne en cours).
  • WINDEV un champ Table sur variable (syntaxe 2).

Mise à jour du fichier de données lié au champ Table ou Table hiérarchique

La fonction <Table>.Enregistre enregistre la ligne en cours du champ dans le fichier de données lié au champ. Les rubriques sont automatiquement affectées avec les valeurs des colonnes associées dans la ligne en cours.
Lors d'une modification, la fonction <Table>.Enregistre remplace les anciennes valeurs par les nouvelles. Les rubriques ne figurant pas dans le champ ne sont pas modifiées.
Attention :
  • La fonction <Table>.Enregistre ne gère que le fichier de données associé au champ. Si certaines colonnes sont reliées à des rubriques d'autres fichiers de données, ces fichiers de données ne sont pas gérés automatiquement.
  • Les colonnes "image" ne sont pas enregistrées par la fonction <Table>.Enregistre. Pour modifier le contenu du mémo associé à l'image (cas rare), utilisez la fonction <Source>.AttacheMémo.
  • Dans les colonnes de type Interrupteur, l'appel à la fonction <Table>.Enregistre est implicite et non désactivable. La modification de la valeur de l'interrupteur sera donc dans tous les cas reportée dans le fichier de données.

Saisie en cascade et mise à jour du fichier de données lié

  • Si la saisie en cascade est activée, le fichier de données lié au champ Table ou Table hiérarchique est automatiquement modifié lorsque l'utilisateur passe à la ligne suivante (utilisation des fonctions <Table>.Ajoute, <Table>.AjouteLigne, <Table>.Insère, <Table>.InsèreLigne, <Table>.Modifie et <Table>.ModifieLigne). La fonction <Table>.Enregistre est inutile.
  • Si la saisie en cascade n'est pas activée, le fichier de données lié au champ Table ou Table hiérarchique n'est pas modifié. Pour écrire la ligne ajoutée ou modifiée dans le fichier de données lié, il est nécessaire d'utiliser la fonction <Table>.Enregistre après la fonction d'ajout ou de modification.
Remarques :
Java La saisie en cascade n'est pas disponible sur les champs Table fichier à accès direct. Cette option est disponible sur les champs Table fichier chargés en mémoire.

Ré-affichage de la ligne enregistrée

Après l'utilisation de la fonction <Table>.Enregistre, la ligne enregistrée peut "disparaître". Cette "disparition" est due à la valeur de la clé de parcours de l'enregistrement ajouté ou modifié.
Pour éviter ce problème, ré-affichez le champ Table ou Table hiérarchique avec la fonction <Table>.Affiche.

Blocage du fichier de données et mise à jour

Si le fichier de données est bloqué dans le traitement en cours, la fonction <Table>.Enregistre enregistre la ligne en cours et débloque le fichier de données.

Doublons et intégrité référentielle

Utilisez la fonction <Table>.Enregistre pour économiser vos lignes de code

La fonction <Table>.Enregistre économise plusieurs lignes de code. Cette seule ligne remplace l'affectation des variables des rubriques une par une.
Par exemple, le code suivant :
Client.Nom = ColonneNom
Client.Prénom = ColonnePrénom
Client.Adresse = ColonneAdresse
Client.CP = ColonneCP
Client.Ville = ColonneVille
HAjoute(Client)
est remplacé par la ligne suivante :
TABLE_Client.Enregistre()
Composante : wd300obj.dll
Version minimum requise
  • Version 23
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 16/06/2023

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