4D v14.3Indefinie |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
Indefinie
|
Indefinie ( variable ) -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
variable | Variable |
![]() |
Variable à tester | |||||
Résultat | Booléen |
![]() |
Vrai = Variable actuellement indéfinie Faux = Variable actuellement définie | |||||
Indefinie retourne Vrai si variable n'a pas été définie, et Faux si variable a été définie. Une variable est définie si elle a été créée via une directive de compilation ou si une valeur lui a été assignée. Elle est indéfinie dans les autres cas.
Si la base de données a été compilée, la fonction Indefinie retourne Faux pour toutes les variables.
Votre application gère un process lorsqu'une commande de menu d'un module particulier de la base est sélectionnée : si le process est déjà créé, vous le passez au premier plan ; s'il n'est pas créé, vous le démarrez. Pour cela, pour chaque module de votre application, vous gérez une variable interprocess ◊PID_... initialisée dans la Méthode base Sur ouverture.
Au cours du développement de la base, vous ajoutez de nouveaux modules. Au lieu de devoir à chaque fois modifier la Méthode base Sur ouverture (pour ajouter l'initialisation de la variable ◊PID_... correspondante) puis quitter et réouvrir la base pour tout réinitialiser, vous utilisez la fonction Indefinie pour gérer "à la volée" l'ajout d'un nouveau module :
// Méthode projet M_AJOUT_CLIENTS
Si(Indefinie(◊PID_AJOUT_CLIENTS)) // Prise en compte des étapes de développement intermédiaires
C_ENTIER LONG(◊PID_AJOUT_CLIENTS)
◊PID_AJOUT_CLIENTS:=0
Fin de si
Si(◊PID_AJOUT_CLIENTS=0)
◊PID_AJOUT_CLIENTS:=Nouveau process("P_AJOUT_CLIENTS";64*1024;"P_AJOUT_CLIENTS")
Sinon
MONTRER PROCESS(◊PID_AJOUT_CLIENTS)
PASSER AU PREMIER PLAN(◊PID_AJOUT_CLIENTS)
Fin de si
// Note: P_AJOUT_CLIENTS, la méthode de gestion des process,
// fixe ◊PID_ADD_CUSTOMERS à zéro lorsqu'elle est terminée.
Produit : 4D
Thème : Variables
Numéro :
82
Nom intl. : Undefined
Modifié : 4D v11 SQL
4D - Langage ( 4D v11 SQL Release 6)
4D - Langage ( 4D v12.4)
4D - Langage ( 4D v14 R2)
4D - Langage ( 4D v14 R3)
4D - Langage ( 4D v13.5)
4D - Langage ( 4D v14.3)
4D - Langage ( 4D v14 R4)