4D v16.3

Undefined

Accueil

 
4D v16.3
Undefined

Undefined 


 

Undefined ( variable ) -> Résultat 
Paramètre Type   Description
variable  Variable, Champ in Variable à tester
Résultat  Booléen in Vrai = Variable actuellement indéfinie Faux = Variable actuellement définie

Undefined 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 Undefined retourne Faux pour toutes les variables.

Exemple  

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 On Startup database method.

Au cours du développement de la base, vous ajoutez de nouveaux modules. Au lieu de devoir à chaque fois modifier la On Startup database method (pour ajouter l'initialisation de la variable <>PID_... correspondante) puis quitter et réouvrir la base pour tout réinitialiser, vous utilisez la fonction Undefined pour gérer "à la volée" l'ajout d'un nouveau module :

  // Méthode projet M_AJOUT_CLIENTS
 
 If(Undefined(<>PID_AJOUT_CLIENTS)) // Prise en compte des étapes de développement intermédiaires
    C_LONGINT(<>PID_AJOUT_CLIENTS)
    <>PID_AJOUT_CLIENTS:=0
 End if
 
 If(<>PID_AJOUT_CLIENTS=0)
    <>PID_AJOUT_CLIENTS:=New process("P_AJOUT_CLIENTS";64*1024;"P_AJOUT_CLIENTS")
 Else
    SHOW PROCESS(<>PID_AJOUT_CLIENTS)
    BRING TO FRONT(<>PID_AJOUT_CLIENTS)
 End if
  // Note: P_AJOUT_CLIENTS, la méthode de gestion des process,
  // fixe <>PID_ADD_CUSTOMERS à zéro lorsqu'elle est terminée.



Voir aussi  

CLEAR VARIABLE

 
PROPRIÉTÉS 

Produit : 4D
Thème : Variables
Numéro : 82

Commande(s) éligible(s) à l'exécution dans un process préemptif

 
HISTORIQUE 

Modifié : 4D v11 SQL

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)