S’informer et apprendre en ligne

OWL, LMS, iLES.

Accueil > Vie des sites > 4e Dimension > Champ de type « sous-table » et sous-formulaire

Développement 4D

Champ de type « sous-table » et sous-formulaire

Comment utiliser un sous-formulaire pour remplacer un champ « sous-table »

mercredi 25 mars 2015, par bernard.vuilleumier

Les champs de type « sous-table » et les instructions associées sont obsolètes et doivent être remplacés par des tables et des sous-formulaires. Lors de la conversion d’une base, 4D crée des tables pour les champs « sous-tables ». Les champs des tables ainsi créées peuvent être utilisés dans un sous-formulaire. Mode d’emploi.

Conversion d’une base comportant des sous-tables

Lors de la conversion d’une base comportant des champs de type « sous-table », 4D crée des tables pour ceux-ci. Dans l’exemple suivant, la table FACTURES comportait un champ « lignes » de type « sous-table ». Après conversion, la structure se présente ainsi :

Table « LIGNES » créée lors de la conversion

Avant conversion, les lignes d’une facture étaient enregistrées dans la sous-table « lignes » qui était un champ de la table FACTURES. La conversion permettra d’enregistrer les lignes d’une facture dans la table LIGNES. Pour identifier à quelle facture appartient une ligne de cette table, il faut, lors de l’enregistrement d’un facture, associer un identifiant à chacune de ses lignes.

Sous-formulaire de la page de saisie des factures

Les lignes de la facture apparaissent dans un sous-formulaire placé dans la page de saisie des factures.

Sous-formulaire utilisant un formulaire saisissable en liste

Ce sous-formulaire a pour source la table LIGNES et utilise un formulaire saisissable en liste de cette table.

Code associé au formulaire saisissable en liste et au sous-formulaire

Le formulaire saisissable en liste comporte une méthode qui permet d’associer chaque ligne à la facture en cours de saisie. L’identifiant de la facture est affecté à l’identifiant de la ligne.

Méthode associée au formulaire saisissable en liste

L’identifiant de la facture est créé par une méthode associée au sous-formulaire. Cette méthode est exécutée lors du chargement.

Si (Nouvel enregistrement([FACTURES]))
[FACTURES]ID_Fact:=Numerotation automatique([FACTURES])
Fin de si

Un message, un commentaire ?

modération a priori

Ce forum est modéré a priori : votre contribution n’apparaîtra qu’après avoir été validée par un administrateur du site.

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.