Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
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 Is a list 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 Befehle
Sie 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 case
In 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 if
Dann 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 v20 R7)