4D v15.4

EXECUTE FORMULA

Home

 
4D v15.4
EXECUTE FORMULA

EXECUTE FORMULA 


 

EXECUTE FORMULA ( Anweisung ) 
Parameter Typ   Beschreibung
Anweisung  String in Auszuführender Code

Der Befehl EXECUTE FORMULA nimmt Anweisung, überprüft, ob die Syntax korrekt ist und führt sie dann aus. Ist Anweisung ein leerer String, hat EXECUTE FORMULA keine Auswirkung.

Als Faustregel gilt: Anweisung wird korrekt ausgeführt, wenn sie als einzeilige Methode ausführbar ist.
In einer kompilierten Datenbank ist die Codezeile nicht kompiliert, d.h. Anweisung wird ausgeführt, jedoch nicht vom Compiler in Kompilierzeit geprüft.
Da der Befehl die Ausführungsgeschwindigkeit verlangsamt, sollten Sie ihn möglichst nicht verwenden. Eine Case of-Schleife ist in jedem Fall schneller.
Da 4D in mehreren Programmiersprachen, wie Englisch und Französisch lieferbar ist und sich die Bezeichnung eines Befehls ändern kann, sollte der Befehl vermieden werden. Er ist grundsätzlich nur zu Testzwecken sinnvoll, z.B. um in einer kompilierten Datenbank testweise Methoden aufzurufen oder Variablen zu verändern.

Anweisung kann folgendes enthalten:

  • Den Aufruf einer Projektmethode
  • Den Aufruf eines 4D Befehls
  • Eine Zuweisung

Anweisung kann Prozessvariablen und Interprozessvariablen enthalten, jedoch keine Elemente für Befehlsfolgen, wie If, Case of, Else, da nur einzeiliger Code möglich ist.

Um sicherzustellen, dass Anweisung unabhängig von der 4D Programmiersprache oder Version korrekt bewertet wird, empfehlen wir die Syntax mit Tokens bei Elementen zu verwenden, deren Name sich zwischen verschiedenen Versionen ändern kann (Befehle, Tabellen, Felder, Konstanten). Um beispielsweise den Befehl Current time einzufügen, geben Sie 'Current time:C178' ein. Weitere Informationen dazu finden Sie im Abschnitt Tokens in Formeln verwenden.

In einer Listbox eine dynamische Spalte hinzufügen und Typ setzen:

  //Spalte hinzufügen
 C_POINTER($Ptr_nil)
 $Txt_column:="column"
 $Txt_header:="header"
 LISTBOX INSERT COLUMN(*;"listbox";MAXLONG;$Txt_column;$Ptr_nil;$Txt_header;$Ptr_nil)
 
  //Spaltentyp setzen, hier ARRAY OBJECT
  //ARRAY OBJECT((OBJECT Get pointer(Object named;$Txt_column))->;0)
 EXECUTE FORMULA("ARRAY OBJECT:C1221((OBJECT Get pointer:C1124(3;\""+$Txt_column+"\"))->;0)")

Sie wollen Formeln ausführen, die Aufrufe von 4D Befehlen und Tabellen enthalten. Da diese u.U. umbenannt werden, können Sie für die korrekte Ausführung in zukünftigen Versionen sorgen, wenn Sie die Syntax mit Tokens verwenden:

 EXECUTE FORMULA("Year of:C25 ([Products:5]Creation_Date:2])+$add")



Siehe auch 

Command name
EDIT FORMULA
EXECUTE METHOD
Tokens in Formeln verwenden

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Formel
Nummer: 63

 
GESCHICHTE 

Geändert: 4D v11 SQL

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v15)
4D Programmiersprache ( 4D v15.4)
4D Programmiersprache ( 4D v15.3)