4D v18

Références de champ

Accueil

 
4D v18
Références de champ

Références de champ  


 

4D View Pro vous permet d'utiliser des références aux champs de la base 4D depuis vos formules. Lors de l'affichage de la zone 4D View Pro, une référence de champ est remplacée par la valeur du champ dans l'enregistrement courant. Un lien dynamique est conservé entre la zone et les données 4D : si la valeur du champ est modifiée, la zone 4D View Pro utilise la nouvelle valeur.

Pour des raisons de sécurité, seuls les tables et les champs qui ont été inclus dans "structure virtuelle" de la base de données (i.e. renommés via les commandes FIXER TITRES TABLES, FIXER TITRES CHAMPS et le paramètre *) peuvent être appelés dans les zones 4D View Pro.

Pour pouvoir être appelé dans une formule 4D View Pro, un champ 4D doit satisfaire aux conditions suivantes :

  • le champ appartient à la structure virtuelle de la base de données, i.e. qu'il doit avoir été déclaré à l'aide des commandes FIXER TITRES TABLES et/ou FIXER TITRES CHAMPS avec le paramètre * (voir exemple),
  • les noms de la table et du champ doivent être conformes à JavaScript Identifier Grammar (voir ECMA Script standard).
  • le type du champ doit être pris en charge par 4D View Pro (voir ci-dessous).

Une erreur est retournée dans la cellule 4D View Pro si la formule appelle un champ non compatible.

4D View Pro prend en charge les références aux champs de types suivants :

TypeType de valeur dans 4D View Pro
Alpha, Textechaîne
Entier, Entier long, Entier 64 bits, Réel, Floatnumérique
DateDate type JavaScript (heure, minute, sec = 0)
TimeDate type JavaScript (date en date base, i.e. 12/31/1899)
Booléenbool
Imagetypes d'images pris en charge : jpg, png, gif, bmp, svg ; les autres types sont convertis en png. Crée un uri (data:image/png;base64,xxxx) défini en image de fond pour la cellule 4D View Pro où la formule est exécutée

Pour insérer une référence de champ dans une formule, entrez le champ avec la syntaxe suivante :

NOMTABLE_NOMCHAMP()

Par exemple, si vous déclarez le champ "Name" de la table "People" dans la structure virtuelle, vous pouvez appeler les fonctions suivantes :

=PEOPLE_NAME()
=LEN(PEOPLE_NAME())

Notes :

  • Seuls les champs déclarés dans la structure virtuelle de la base (à l'aide de FIXER TITRES TABLES et/ou FIXER TITRES CHAMPS) peuvent être utilisés dans les formules 4D View Pro. Les champs non déclarés ne sont pas présents dans la liste de suggestions et l'appel d'un champ invalide provoquera l'erreur #NAME affichée dans la cellule.
  • Si un champ a le même nom qu'une méthode autorisée, il est prioritaire par rapport à la méthode.

Exemple  

Nous voulons afficher le nom d'une personne dans la cellule d'une zone 4D View Pro via un champ 4D :

  1. Créer une table "Employee" avec un champ "L_Name" :
  2. Exécutez le code suivant pour initialiser la structure virtuelle :
     TABLEAU TEXTE($tableTitles;1)
     TABLEAU ENTIER LONG($tableNum;1)
     $tableTitles{1}:="Emp"
     $tableNum{1}:=2
     FIXER TITRES TABLES($tableTitles;$tableNum;*)
     
     TABLEAU TEXTE($fieldTitles;1)
     TABLEAU ENTIER LONG($fieldNum;1)
     $fieldTitles{1}:="Name"
     $fieldNum{1}:=2 //nom propre
     FIXER TITRES CHAMPS([Employee];$fieldTitles;$fieldNum;*)
  3. Passez en édition dans une cellule de la zone 4D View Pro et saisisez "=e":
  4. Sélectionnez EMP_NAME (utilisez la touche Tabulation) et saisissez la parenthèse ) fermante.
  5. Valisez le champ pour afficher le nom de l'employé courant :

    Note : La table [Employee] doit avoir un enregistrement courant.

 
PROPRIÉTÉS 

Produit : 4D
Thème : Références de la base 4D
Nom intl. : Field references

 
PAGE CONTENTS 
 
HISTORIQUE 

Créé : 4D v17 R2

 
UTILISATION DE L'ARTICLE

4D View Pro ( 4D v18)