Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
LISTBOX INSERT COLUMN FORMULA
|
LISTBOX INSERT COLUMN FORMULA ( {* ;} Objekt ; SpaltePosition ; SpalteName ; Formel ; Datentyp ; KopfName ; KopfVar {; FußName ; FußVar} ) | ||||||||
Parameter | Typ | Beschreibung | ||||||
* | Operator |
![]() |
Mit * ist Objekt ein Objektname (String), ohne * ist Objekt eine Variable |
|||||
Objekt | Formularobjekt |
![]() |
Objektname (mit *) oder Variable (ohne *) | |||||
SpaltePosition | Lange Ganzzahl |
![]() |
Position der einzufügenden Spalte | |||||
SpalteName | String |
![]() |
Name des Objekts Spalte | |||||
Formel | String |
![]() |
Der Spalte zugeordnete 4D Formel | |||||
Datentyp | Lange Ganzzahl |
![]() |
Typ des Formelergebnisses | |||||
KopfName | String |
![]() |
Objektname des Spaltenkopfteils | |||||
KopfVar | Variable Ganzzahl, Nil pointer |
![]() |
Variable des Spaltenkopfteils | |||||
FußName | String |
![]() |
Objektname des Spaltenfußteils | |||||
FußVar | Variable, Nil pointer |
![]() |
Variable des Spaltenfußteils | |||||
Der Befehl LISTBOX INSERT COLUMN FORMULA fügt eine Spalte in die Listbox ein, definiert durch die Parameter Objekt und *.
Der Befehl arbeitet ähnlich wie der Befehl LISTBOX INSERT COLUMN. Der Unterschied ist, dass Sie damit auch eine Formel als Inhalt einer Spalte eingeben können. Eine Formel als Inhalt ist nur möglich, wenn die Eigenschaft „Datenquelle“ der Listbox auf aktuelle Auswahl oder temporäre Auswahl bzw. Collection oder Entity-Selection gesetzt ist.
Weitere Informationen dazu finden Sie im Abschnitt Einführung in Listboxen.
Mit dem optionalen Parameter * ist der Parameter Objekt ein Objektname (String). Ohne * ist Objekt eine Variable. In diesem Fall übergeben Sie keinen String, sondern eine Variablenreferenz. Weitere Informationen zu Objektnamen finden Sie im Abschnitt Objekteigenschaften.
Die neue Spalte wird direkt vor der Spalte eingefügt, definiert durch den Parameter SpaltePosition. Ist die Nummer von SpaltePosition größer als die Gesamtanzahl der Spalten, wird sie an die letzte Spalte angefügt.
In SpalteName übergeben Sie den Objektnamen der eingefügten Spalte.
Der Parameter Formel kann einen beliebigen gültigen Ausdruck enthalten, z.B.:
Bei Aufruf des Befehls wird die Formel durchlaufen und dann ausgeführt.
Hinweis: Um Formeln unabhängig von der Anwendungssprache zu definieren, verwenden Sie die Funktion Command name (wenn Sie 4D Befehle aufrufen).
Mit dem Parameter Datentyp können Sie den Typ der Daten bestimmen, die nach Ausführen der Formel zurückgegeben wird. Sie müssen eine der folgenden Konstanten unter dem Thema Feld und Variablentypen übergeben:
Konstante | Typ | Wert |
Is Boolean | Lange Ganzzahl | 6 |
Is date | Lange Ganzzahl | 4 |
Is picture | Lange Ganzzahl | 3 |
Is real | Lange Ganzzahl | 1 |
Is text | Lange Ganzzahl | 2 |
Is time | Lange Ganzzahl | 11 |
Entspricht das Ergebnis der Formel keinem der erwarteten Datentypen, wird ein Fehler erzeugt.
In den Parametern KopfName und KopfVar übergeben Sie den Objektnamen und die Variable des eingefügten Kopfteils der Spalte.
In den Parametern FußName und FußVar können Sie auch den Objektnamen und die Variable für den Fußteil der eingefügten Spalte übergeben. Lassen Sie den Parameter FußVar weg, verwendet 4D eine dynamische Variable.
Hinweis: Objektnamen müssen in einem Formular einmalig sein. Sie müssen sicherstellen, dass die in SpalteName, KopfName und FußName übergebenen Namen nicht anderweitig verwendet werden. Ansonsten wird die Spalte nicht erstellt und ein Fehler erzeugt.
Ab 4D v14 R3 können Sie mit diesem Befehl Spalten dynamisch in Listboxen einfügen, wenn das Formular ausgeführt wird. 4D verwaltet automatisch die Definition der erforderlichen Variablen (Spalten, Fußteil und Kopfteil).
Dazu akzeptiert LISTBOX INSERT COLUMN FORMULA einen Zeiger Nil (->[]) als Wert für die Parameter KopfVariable und FußVariable. In diesem Fall erstellt 4D beim Ausführen des Befehls die erforderlichen Variablen dynamisch. Weitere Informationen dazu finden Sie im Abschnitt .
Beachten Sie, dass Variablen für Kopf- und Fußteil immer mit den spezifischen Typ Lange Ganzzahl bzw. Text erstellt werden.Wir wollen rechts vor der Listbox eine neue Spalte hinzufügen mit einer Formel, die das Alter der Angestellten berechnet:
vAge:="Current date-[Employees]BirthDate)\365"
$last:=LISTBOX Get number of columns(*;"ListBox1")+1
LISTBOX INSERT COLUMN FORMULA(*;"ListBox1";$last;"ColFormula";vAge;Is real;"Age";HeaderVar)
In einer Listbox vom Typ Collection eine Spalte hinzufügen:
//Collection erstellen
C_COLLECTION(emps)
emps:=New collection(New object("Employee";"John Doe";"JobTitle";"CEO");New object("Employee";"Mary Smith";"JobTitle";"CTO");New object("Employee";"Jane Turner";"JobTitle";"CFO"))
Der Spalteninhalt wird für jedes Element der Collection bewertet und mit dem Ausdruck This.Employee der Datenquelle referenziert:
Ausführung:
Um eine Spalte mit den Job-Bezeichnungen hinzuzufügen, schreiben Sie:
LISTBOX INSERT COLUMN FORMULA(*;"EmpLB";2;"2nd Column";"This.JobTitle";Is text;"JTHeader";header2)
OBJECT SET TITLE(header2;"Title")
Die Spalte wird in der Listbox hinzugefügt:
Produkt: 4D
Thema: Listbox
Nummer:
970
Erstellt: 4D v11 SQL
Umbenannt: 4D v12 (INSERT LISTBOX COLUMN FORMULA)
Geändert: 4D v13
Geändert: 4D v14 R3
Geändert: 4D v17
4D Programmiersprache ( 4D v20 R7)