Version 11 (Geändert)
Undefined (Variablenname) Boolean
Parameter | Typ | Beschreibung | |
Variablenname | Variable | Zu testende Variable | |
Funktionsergebnis | Boolean | True = Variable ist derzeit undefiniert | |
False = Variable ist derzeit definiert |
Beschreibung
Die Funktion Undefined gibt den Wert Wahr zurück, wenn Variablenname undefiniert ist und Falsch, wenn Variablenname definiert ist. Eine Variable ist definiert, wenn sie über Kompilierungsdirektive erstellt oder ein Wert zugewiesen ist. In allen anderen Fälle ist sie undefiniert.
Diese Funktion ist für kompilierte Datenbanken nicht sinnvoll. Sie gibt nämlich immer den Wert Falsch an, da alle Variablen beim Programmstart definiert werden.
Beispiel
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, verwalten Sie das Hinzufügen eines neuen Plug-Ins mit der Funktion Undefined "on the fly":
` Globale Prozedur M_ADD_CUSTOMERS If (Undefined(<>PID_ADD_CUSTOMERS)) ` Kümmert sich um zunkü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 Hauptprozeßmethode, setzt <>PID_ADD_CUSTOMERS beim Beenden auf Null.
Referenz