4D v16.3

METHOD GET CODE

Home

 
4D v16.3
METHOD GET CODE

METHOD GET CODE 


 

METHOD GET CODE ( Pfad ; Code {; Option} {; *} )  
Parameter Typ   Beschreibung
Pfad  Text, Array Text in Text oder Text Array mit einem oder mehreren Methodenpfaden
Code  Text, Array Text in Code der angegebenen Methode(n)
Option  Lange Ganzzahl in 0 oder weggelassen = einfacher Export (ohne Token), 1 = Export mit Token
Operator in Mit Stern: Befehl gilt für Host Datenbanken, wenn er von einer Komponente ausgeführt wird. (außerhalb dieses Kontexts wird der Parameter ignoriert.)

Der Befehl METHOD GET CODE gibt im Parameter Code den Inhalt der Methode(n) zurück, die im Parameter Pfad angegeben sind. Dieser Befehl kann den Code aller Methodentypen zurückgeben: Datenbank-, Projekt-, Formular-, Objektmethoden und Trigger.

Sie können zwei Syntaxarten verwenden, die eine basiert auf Text Arrays, die andere auf Textvariablen:

 C_TEXT(tVpath// Textvariablen
 C_TEXT(tVcode)
 METHOD GET CODE(tVpath;tVcode) // Code einer einzelnen Methode

 ARRAY TEXT(arrPaths;0) // Text Arrays
 ARRAY TEXT(arrCodes;0)
 METHOD GET CODE(arrPaths;arrCodes) // Code mehrerer Methoden

Sie können die beiden Syntaxarten nicht miteinander mischen.

Übergeben Sie einen ungültigen Pfadnamen, bleibt der Parameter Code leer und ein Fehler wird generiert.
Für Text von Code, der mit diesem Befehl erzeugt wird, gilt folgendes:

  • Befehlsnamen werden in allen 4D Versionen in Englisch geschrieben, außer mit einer französischen 4D Version, wenn die Einstellung "Verwende regionale Systemeinstellungen" markiert ist (siehe Seite Methoden).
    Mit dem Parameter Option kann der Code Tokens enthalten, was ihn unabhängig von der 4D Programmiersprache und Version macht (siehe unten)
  • Zur besseren Lesbarkeit von Code wird der Text mit Tabs eingerückt, basierend auf den Programmierstrukturen wie im Methodeneditor.
  • Beim Import von Code mit Metadaten wird im Kopfteil eine Zeile hinzugefügt, z.B.:
      // %attributes = {"lang":"fr","invisible":true,"folder":"Web3"}

    Diese Zeile wird nicht mitimportiert, nur die angegebenen Attribute werden berücksichtigt (Nicht spezifizierte Attribute werden auf ihren Standardwert zurückgesetzt). Das Attribut "lang" setzt die Exportsprache und verhindert den Import in ein Programm in einer anderen Sprache. In diesem Fall wird ein Fehler erzeugt. Das Attribut "folder" enthält den Namen des Eltern-Ordners der Methode. Es erscheint nicht, wenn es für die Methode keinen Eltern-Ordner gibt.
    Es lassen sich zusätzliche Attribute definieren. Weitere Informationen dazu finden Sie unter dem Befehl METHOD SET ATTRIBUTES.

Mit dem Parameter Option können Sie festlegen, wie Code-Elemente in Methoden exportiert werden:

  • Übergeben Sie 0 oder lassen den Parameter Option weg, wird der Code der Methode ohne Token exportiert, d.h. so wie er im Methodeneditor erscheint.
  • Übergeben Sie 1 oder die Konstante Code with tokens, wird der Code der Methode mit Token exportiert, d.h. tokenisierte Elemente erscheinen mit ihrer internen Referenz im exportierten Inhalt in Code. So wird z.B. der Ausdruck "String(a)" als "String:C10(a)" exportiert, wobei "C10" die interne Referenz der Funktion String ist.

Folgende Elemente der Programmiersprache lassen sich als Token darstellen:

  • 4D Befehle und Konstanten
  • Tabellen- und Feldnamen
  • 4D Plug-In Befehle

Mit Tokens exportierter Code ist unabhängig von nachfolgend umbenannten Elementen der Programmiersprache. Mit Hilfe von Tokens wird Code in Textform immer korrekt von 4D interpretiert, sei es über den Befehl METHOD SET CODE oder auch per Copy/Paste. Weitere Informationen dazu finden Sie im Abschnitt Tokens in Formeln verwenden.

Wird der Befehl in einer Komponente ausgeführt, gilt er standardmäßig für die Komponentenmethoden. Übergeben Sie den Parameter *, greift er auf die Methoden der Host Datenbank zu.

Siehe Beispiel unter dem Befehl METHOD SET CODE.

Dieses Beispiel zeigt die Auswirkung des Parameters Option.

Die folgende Methode "simple_init" exportieren:

 Case of
    :(Form event=On Load)
       ALL RECORDS([Customer])
 End case

Mit folgendem Code:

 C_TEXT($code)
 C_TEXT($contents)
 $code:=METHOD Get path(Path project method;"simple_init")
 METHOD GET CODE($code;$contents;0) //keine Tokens
 TEXT TO DOCUMENT("simple_init.txt";$contents)

erhalten Sie als Ergebnis:

  //%attributes = {"lang":"en"} comment added and reserved by 4D
Case of
    : (Form event=On Load)
        ALL RECORDS([Customer])
End case

Mit folgendem Code:

 C_TEXT($code)
 C_TEXT($contents)
 $code:=METHOD Get path(Path project method;"simple_init")
 METHOD GET CODE($code;$contents;Code with tokens//Tokens verwenden
 TEXT TO DOCUMENT("simple_init.txt";$contents)

erhalten Sie als Ergebnis:

  //%attributes = {"lang":"en"} comment added and reserved by 4D
Case of
    : (Form event:C388=On Load:K2:1)
        ALL RECORDS:C47([Customer:1])
End case



Siehe auch 

METHOD SET CODE
Tokens in Formeln verwenden

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Zugriff Designobjekte
Nummer: 1190

 
GESCHICHTE 

Erstellt: 4D v13
Geändert: 4D v14
Geändert: 4D v15
Geändert: 4D v15 R4

 
ARTIKELVERWENDUNG

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