Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
Form
|
Form -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
Résultat | Objet |
![]() |
Données associées au formulaire courant | |||||
La commande Form retourne l'objet associé au formulaire courant, s'il existe. 4D associe automatiquement un objet au formulaire courant dans les cas suivants :
Si le formulaire courant est affiché suite à un appel à la commande DIALOG, Form retourne soit un objet vide, soit l'objet formData passé en paramètre à cette commande, le cas échéant.
Si le formulaire courant est un sous-formulaire, l'objet retourné par Form dépend de la variable du conteneur parent :
Pour plus d'informations, veuillez vous reporter à la section Sous-formulaires en page.
Form retourne l'objet associé au formulaire table affiché à l'écran. Dans le contexte d'un formulaire d'entrée affiché depuis un formulaire de sortie (c'est-à-dire après un double-clic sur un enregistrement), l'objet retourné contient la propriété suivante :
Propriété | Type | Description |
parentForm | objet | Form objet du formulaire de sortie parent |
Dans un formulaire affichant l'enregistrement d'une personne, un bouton ouvre un dialogue permettant de vérifier ou de modifier les noms et âges de ses enfants :
Note : Le champ objet "enfants" est représenté uniquement dans cet exemple afin de faire apparaître sa structure.
Dans le formulaire de vérification, vous avez assigné des propriétés d'objet Form aux variables :
Voici le code du bouton "Check Children" :
C_LONGINT($win;$n;$i)
C_BOOLEAN($save)
ARRAY OBJECT($children;0)
OB GET ARRAY([Person]Children;"children";$children) //récupérer les enfants
$save:=False //initialisation du marqueur de sauvegarde
$n:=Size of array($children)
If($n>0)
$win:=Open form window("Edit_Children";Movable form dialog box)
SET WINDOW TITLE("Vérification des enfants pour "+[Person]Name)
For($i;1;$n) //pour chaque enfant
DIALOG("Edit_Children";$children{$i}) //afficher le dialogue prérempli
If(OK=1) //l'utilisateur a cliqué sur OK
$save:=True
End if
End for
If($save=True)
[Person]Children:=[Person]Children //Forcer la mise à jour du champ
End if
CLOSE WINDOW($win)
Else
ALERT("Pas d'enfant à vérifier.")
End if
Note : Cet exemple nécessite l'activation de la notation objet dans la base (voir Page Compatibilité).
Le formulaire affiche les informations pour chaque enfant :
Si des valeurs sont modifiées et que l'utilisateur clique sur le bouton OK, le champ est mis à jour (bien entendu, l'enregistrement parent devra être sauvegardé par la suite).
Produit : 4D
Thème : Formulaires
Numéro :
1466
Créé : 4D v16 R5
4D - Langage ( 4D v20 R7)