| 4D v18Command name | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  | 
    4D v18
 Command name 
         | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Command name ( Befehl {; Info {; Kapitel}} ) -> Funktionsergebnis | ||||||||
| Parameter | Typ | Beschreibung | ||||||
| Befehl | Lange Ganzzahl |   | Befehlsnummer | |||||
| Info | Lange Ganzzahl |   | Eigenschaft Thread-Sicherheit des Befehls | |||||
| Kapitel | Text |   | Kapitel zum Befehl | |||||
| Funktionsergebnis | String |   | Lokalisierter Befehlsname | |||||
Die Funktion Command name gibt den Namen des Befehls und optional seine Eigenschaften zu der in Befehl übergebenen Nummer zurück.
Hinweis: Die entsprechende Nummer zum Befehlsnamen erscheint im Explorer und in dieser Dokumentation jeweils in der rechten oberen Ecke unter Eigenschaften.
Hinweis zur Kompatibilität: Da der Befehlsname zwischen verschiedenen Versionen variieren kann (umbenannte Befehle), konnte über diese Funktion ein Befehl direkt mit seiner Nummer angegeben werden, insbesondere in nicht-tokenisierten Code-Teilen. Diese Vorgehensweise hat im Zuge der Evolution von 4D heutzutage an Bedeutung verloren, da 4D für nicht-tokenisierte Anweisungen (Formeln) eine Syntax mit Tokens anbietet. Damit lassen sich potentielle Probleme bei geänderten Befehlsnamen oder anderen Elementen, wie z.B. Tabellen, vermeiden und es ist trotzdem möglich, diese Namen in lesbarer Form einzugeben. Weitere Informationen dazu finden Sie im Abschnitt Tokens in Formeln verwenden. Außerdem wird ab 4D v15 standardmäßig in allen 4D Programmiersprachen die englische Version verwendet. Jedoch kann eine französische 4D Version über die Option "Verwende regionale Systemeinstellungen" auf der Seite Methoden der 4D Einstellungen weiterhin die französischen 4D Befehlsnamen verwenden.
Es gibt zwei optionale Parameter:
Command name setzt die Variable OK auf 1, wenn Befehl zu einer vorhandenen Befehlsnummer passt, andernfalls auf 0. Bei deaktivierten Befehlen gibt Command name einen leeren String zurück (siehe letztes Beispiel).
Mit folgendem Code können Sie alle gültigen 4D Befehle in ein Array laden:
 C_LONGINT($Lon_id)
 C_TEXT($Txt_command)
 ARRAY LONGINT($tLon_Command_IDs;0)
 ARRAY TEXT($tTxt_commands;0)
 
 Repeat
    $Lon_id:=$Lon_id+1
    $Txt_command:=Command name($Lon_id)
    If(OK=1) //Befehlsnummer existiert
       If(Length($Txt_command)>0) //Befehl ist nicht deaktiviert
          APPEND TO ARRAY($tTxt_commands;$Txt_command)
          APPEND TO ARRAY($tLon_Command_IDs;$Lon_id)
       End if
    End if
 Until(OK=0) //Ende der vorhandenen BefehleSie wollen in einem Formular eine DropDown-Liste mit den Grundbefehlen für Summen füllen. Die Objektmethode dafür lautet:
 Case of
    :(Form event code=On Before)
       ARRAY TEXT(asCommand;4)
       asCommand{1}:=Command name(1)
       asCommand{2}:=Command name(2)
       asCommand{3}:=Command name(4)
       asCommand{4}:=Command name(3)
  ` ...
 End caseIn der englischen/deutschen Version von 4D lautet die DropDown-Liste: Sum, Average, Min und Max. In der französischen Version (wenn die Option "Verwende regionale Systemeinstellungen" markiert ist) lautet sie: Somme, Moyenne, Min und Max.
Eine Methode erstellen, die wahr zurückgibt, wenn der Befehl mit der im Parameter übergebenen Nummer thread-safe ist, sonst falsch.
  //Projektmethode Is_Thread_Safe
  //Is_Thread_Safe(numCom) -> Boolean
 
 C_LONGINT($1;$threadsafe)
 C_TEXT($name)
 C_BOOLEAN($0)
 $name:=Command name($1;$threadsafe;$theme)
 If($threadsafe ?? 0) //wenn das erste Bit auf 1 gesetzt wird
    $0:=True
 Else
    $0:=False
 End ifDann können Sie z.B. für den Befehl "SAVE RECORD" (53) folgende Anweisung schreiben:
 $isSafe:=Is_Thread_Safe(53)
  // gibt wahr zurück
	Produkt: 4D
	Thema: Programmiersprache
	Nummer: 
        538
        
        
        
	
	Erstellt: 4D v6
	Geändert: 4D v15 R5
	4D Programmiersprache ( 4D v18)
	
	
	
 Fehler melden
Fehler melden