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
Table du formulaire courant
|
Table du formulaire courant -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
Résultat | Pointeur |
![]() |
Pointeur vers la table à laquelle appartient le formulaire actuellement affiché | |||||
La fonction Table du formulaire courant retourne un pointeur vers la table à laquelle appartient le formulaire affiché à l'écran ou imprimé dans le process courant.
La fonction retourne Nil dans les cas suivants :
Si plusieurs fenêtres sont ouvertes simultanément dans le process courant (ce qui signifie que la dernière fenêtre ouverte est la fenêtre courante active), la fonction retourne un pointeur vers la table du formulaire affiché dans la fenêtre active.
Si le formulaire affiché est le formulaire détaillé d'une zone de sous-formulaire (c'est-à-dire que pendant la saisie de données, l'utilisateur a double-cliqué sur un enregistrement ou un sous-enregistrement dans une zone de sous-formulaire "double-cliquable"), la fonction retourne :
Dans votre application, vous utilisez la convention suivante : au moment de l'affichage d'un enregistrement, la variable vsEnrCourant, si elle est présente dans un formulaire, affiche "Nouvel enregistrement" si vous créez un nouvel enregistrement, ou par exemple "56 parmi 5200" si vous ouvrez le 56e enregistrement d'une sélection en comportant 5200. Pour cela, vous pouvez créer une fois la variable vsEnrCourant et lui associer la méthode objet décrite ci-dessous, puis la copier et la coller dans tous les formulaires que vous voulez :
//Méthode objet de la variable non saisissable vsEnrCourant
Au cas ou
:(Evenement formulaire code=Sur chargement)
C_ALPHA(31;vsEnrCourant)
C_POINTEUR($vpTableParente)
C_ENTIER LONG($vlNumEnr)
$vpTableParente:=Table du formulaire courant
$vlNumEnr:=Numero enregistrement($vpTableParente->)
Au cas ou
:($vlNumEnr=-3)
vsEnrCourant:="Nouvel enregistrement"
:($vlNumEnr=-1)
vsEnrCourant:="Pas d'enregistrement"
:($vlNumEnr>=0)
vsEnrCourant:=Chaine(Numero dans selection($vpTableParente->))+" parmi "+Chaine(Enregistrements trouves($vpTableParente->))
Fin de cas
Fin de cas
DIALOGUE
FORM FIXER ENTREE
FORM FIXER SORTIE
IMPRIMER SELECTION
Produit : 4D
Thème : Table
Numéro :
627
Nom intl. : Current form table
Modifié : 4D v11 SQL
4D - Langage ( 4D v20 R7)