4D v16.3

Undefined

Home

 
4D v16.3
Undefined

Undefined 


 

Undefined ( Variablenname ) -> Funktionsergebnis 
Parameter Typ   Beschreibung
Variablenname  Variable, Feld in Zu testende Variable
Funktionsergebnis  Boolean in True = Variable ist derzeit undefiniert, False = Variable ist derzeit definiert

Die Funktion Undefined gibt den Wert True zurück, wenn Variablenname undefiniert ist und False, wenn Variablenname definiert ist. Eine Variable ist definiert, wenn sie über Kompilierungsdirektiven erstellt oder ein Wert zugewiesen ist. In allen anderen Fällen ist sie undefiniert.

Diese Funktion ist für kompilierte Datenbanken nicht sinnvoll. Sie gibt nämlich immer den Wert False an, da alle Variablen beim Programmstart definiert werden.

Folgender Code verwaltet die Prozesserstellung, wenn eine Menüzeile für ein spezifisches Plug-In Ihrer Anwendung ausgewählt wird. Existiert der Prozess bereits, bringen Sie ihn nach vorne; existiert er nicht, starten Sie ihn. Dafür richten Sie für jedes Plug-In der Anwendung eine Interprozessvariable ◊PID_... ein, die Sie in der Datenbankmethode On Startup initialisieren.

Beim Entwickeln der Datenbank fügen Sie neue Plug-Ins hinzu. Anstatt jedes Mal die Datenbankmethode On Startup zu ändern (Hinzufügen der Initialisierung der entsprechenden ◊PID_...) und die Datenbank zur Reinitialisierung erneut zu öffnen, können Sie das Hinzufügen eines neuen Plug-Ins mit der Funktion Undefined direkt verwalten:

 
  //Globale Prozedur M_ADD_CUSTOMERS
 
 If(Undefined(◊PID_ADD_CUSTOMERS))
  ` Kümmert sich um zukünftige Entwicklungsphasen
    C_LONGINT(◊PID_ADD_CUSTOMERS)
    ◊PID_ADD_CUSTOMERS:=0
 End if
 
 If(◊PID_ADD_CUSTOMERS=0)
    ◊PID_ADD_CUSTOMERS:=New process("P_ADD_CUSTOMERS";64*1024;"P_ADD_CUSTOMERS")
 Else
    SHOW PROCESS(◊PID_ADD_CUSTOMERS)
    BRING TO FRONT(◊PID_ADD_CUSTOMERS)
 End if
  // Hinweis: P_ADD_CUSTOMERS, die Hauptprozessmethode, setzt ◊PID_ADD_CUSTOMERS beim Beenden auf Null.



Siehe auch 

CLEAR VARIABLE

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Variablen
Nummer: 82

This command can be run in preemptive processes

 
GESCHICHTE 

Geändert: 4D v11 SQL

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)