Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com

Home

 
4D v20 R7
This

This 


 

This -> Funktionsergebnis 
Parameter Typ   Beschreibung
Funktionsergebnis  Objekt in Aktuelles Element oder Objekt

Der Befehl This gibt eine Referenz auf das zu bearbeitende Objekt zurück.

Der Befehl dient zur Verwendung in folgendem Kontext:

  • Listbox, die einer Collection oder Entity-Selection während dem Ereignis On Display Detail oder On Data Change zugeordnet ist.
    In diesem Kontext gibt der Befehl eine Referenz auf das Collection Element oder die Entity zurück, worauf die Listbox zum Anzeigen der aktuellen Zeile zugreift.
    Hinweis: Verwenden Sie eine Collection mit skalaren Werten in einer Listbox, erstellt 4D ein Objekt für jedes Element mit einer einzelnen Eigenschaft value. So ist der Wert des Elements durch den Ausdruck This.value verfügbar.
  • Ausführung eines Formularobjekts, das mit dem Befehl Formula oder Formula from string erstellt wurde.
    In diesem Kontext gibt der Befehl eine Referenz auf das aktuell von der Formel bearbeitete Objekt zurück.

In anderen Fällen gibt er Null zurück.

Sie können auf alle Eigenschaften des Collection-Elements oder der Entity über This.<propertyPath> zugreifen. Zum Beispiel: This.name oder This.employer.lastName sind gültige Pfade zu Eigenschaften eines Objekts, Elements oder einer Entity.

 

Wir nehmen eine Collection von Objekten, jeweils mit dieser Struktur:

{  
"ID": 1234
"name": "Xavier",  
"revenues": 47300,  
"employees": [  
             "Allan",  
             "Bob", 
             "Charlie"  
            ] 
},{  
"ID": 2563
"name": "Carla",  
"revenues": 55000,  
"isFemale": true
"employees": [  
             "Igor",  
             "Jane"  
            ] 
},...
 

In der Listbox bezieht sich jede Spalte auf eine der Eigenschaften des Objekts, entweder direkt (This.name), indirekt (This.employees.length) oder über einen Ausdruck (getPicture), in dem sie direkt verwendet werden kann. Die Listbox sieht folgendermaßen aus:

Die Projektmethode GetPicture wird automatisch während dem Ereignis On Display Detail ausgeführt.

  //GetPicture Methode
 C_PICTURE($0)
 If(This.isFemale)
    $0:=Form.genericFemaleImage
 Else
    $0:=Form.genericMaleImage
 End if

Nach Ausführen des Formulars erhalten Sie dieses Ergebnis:

Entities aus der folgenden Struktur in einer Listbox anzeigen:

Sie erstellen eine Listbox vom Typ "Collection or entity selection" mit folgender Definition:

Dabei gilt folgendes:

  • This.ID, This.Title und This.Date beziehen sich direkt auf die entsprechenden Attribute in der Dataclass ds.Event.
  • This.meetings ist ein verknüpftes Attribut (basierend auf dem Namen der One-to-Many Verknüpfung), das eine Entity-Selection der Dataclass ds.Meeting zurückgibt.
  • Form.eventList ist eine Entity-Selection, die der Listbox zugewiesen ist. Der Code zur Iinitialisierung lässt sich in das Formularereignis On Load setzen:
     Case of
        :(Form event code=On Load)
           Form.eventList:=ds.Event.all() //gibt eine Entity-Selection mit allen Entities zurück
     End case

Nach Ausführen des Formulars wird die Listbox automatisch mit der Entity-Selection gefüllt:

Eine Projektmethode als in ein Objekt eingebundene Formel verwenden:

 C_OBJECT($person)
 $person:=New object
 $person.firstName:="John"
 $person.lastName:="Smith"
 $person.greeting:=Formula(Greeting)
 $g:=$person.greeting("hello") //gibt "hello John Smith" zurück
 $g:=$person.greeting("hi") //gibt "hi John Smith" zurück

Mit der Projektmethode Greeting:

 C_TEXT($0;$1)
 $0:=$1+" "+This.firstName+" "+This.lastName



Siehe auch 

Self
Super

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Programmiersprache
Nummer: 1470

Dieser Befehl kann in preemptive Prozessen laufen

 
SEITENINHALT 
 
GESCHICHTE 

Erstellt: 4D v17
Geändert: 4D v17 R3

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v20 R7)