4D v18

Feldreferenzen

Home

 
4D v18
Feldreferenzen

Feldreferenzen  


 

In 4D View Pro können Sie in Ihren Formeln Referenzen auf Felder der 4D Datenbank verwenden. Beim Anzeigen eines 4D View Pro Bereichs wird eine Feldreferenz durch den Feldwert im aktuellen Datensatz ersetzt. Zwischen dem Bereich und den 4D Daten bleibt ein dynamischer Link bestehen; d.h. ändert sich der Wert des Feldes, verwendet der 4D View Pro Bereich den neuen Wert.

Aus Sicherheitsgründen lassen sich in 4D View Pro Bereichen nur Felder und Tabellen aufrufen, die in der "virtuellen Struktur" der Datenbank deklariert sind (z.B. umbenannt mit den Befehlen SET TABLE TITLES und SET FIELD TITLES und dem Parameter *).

Damit sich ein 4D Feld in einer 4D View Pro Formel aufrufen lässt, muss es folgende Anforderungen erfüllen:

  • Es muss zur virtuellen Struktur der Datenbank gehören, d.h. beispielsweise über den Befehl SET TABLE TITLES bzw. SET FIELD TITLES mit dem Parameter * deklariert sein (siehe Beispiel),
  • Tabellen- und Feldname müssen die Regeln von ECMA einhalten (siehe ECMA Script standard),
  • 4D View Pro muss den Feldtyp unterstützen (siehe unten).

Ruft die Formel ein nicht-passendes Feld auf, wird in der 4D View Pro Zelle ein Fehler zurückgegeben.

4D View Pro unterstützt Referenzen auf Felder mit folgenden Typen:

TypWertetyp in 4D View Pro
Alpha, TextString
Ganzzahl, Lange Ganzzahl, Ganzzahl 64-bit, Zahl, FließkommaZahl
DatumJavaScript Datumstyp (Stunde, Minute, Sek = 0)
ZeitJavaScript Datumstyp (Basisdatum, z.B. 12/31/1899)
Booleanbool
BildUnterstützte Bildtypen: jpg, png, gif, bmp, svg; andere Typen werden in png konvertiert. Erstellt ein uri (data:image/png;base64,xxxx)und wird als Hintergrund für die 4D View Pro Zelle gesetzt, wo die Formel ausgeführt wird.

Um in einer Formel eine Referenz auf ein Feld einzufügen, geben Sie das Feld mit folgender Syntax ein:

TABLENAME_FIELDNAME()

Haben Sie z.B. das Feld "Name" der Tabelle "People" in der virtuellen Struktur deklariert, können Sie folgende Funktionen aufrufen:

=PEOPLE_NAME()
=LEN(PEOPLE_NAME())

Hinweise:

  • In 4D View Pro Formeln lassen sich nur Felder der Datenbank verwenden, die in der virtuellen Struktur deklariert sind (mit SET TABLE TITLES bzw. SET FIELD TITLES). Nicht deklarierte Felder erscheinen nicht in der type-ahead Liste und bei Aufrufen eines ungültigen Feldes wird in der Zelle der Fehler #NAME angezeigt.
  • Hat ein Feld den gleichen Namen wie eine zugelassene Methode, hat das Feld Vorrang vor der Methode. 

Den Namen einer Person über ein 4D Feld in einer Zelle des 4D View Pro Bereichs drucken:

  1. Eine Tabelle "Employee" mit einem Feld "L_Name" erstellen:
  2. Über folgenden Code eine virtuelle Struktur initialisieren:
     ARRAY TEXT($tableTitles;1)
     ARRAY LONGINT($tableNum;1)
     $tableTitles{1}:="Emp"
     $tableNum{1}:=2
     SET TABLE TITLES($tableTitles;$tableNum;*)
     
     ARRAY TEXT($fieldTitles;1)
     ARRAY LONGINT($fieldNum;1)
     $fieldTitles{1}:="Name"
     $fieldNum{1}:=2 //last name
     SET FIELD TITLES([Employee];$fieldTitles;$fieldNum;*)
  3. Den Inhalt einer Zelle im 4D View Pro Bereich bearbeiten und "=e" eingeben:
  4. EMP_NAME über die Tab-Taste auswählen und die schließende Klammer ) eingeben.
  5. Das Feld bestätigen, um den Namen des aktuellen Angestellten anzuzeigen:

    Hinweis: Die Tabelle [Employee] muss einen aktuellen Datensatz haben.

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Referenzen auf die Datenbank

 
SEITENINHALT 
 
GESCHICHTE 

Erstellt: 4D v17 R2

 
ARTIKELVERWENDUNG

4D View Pro Handbuch ( 4D v18)