Champs avancés
Neuf types de champs spécialisés couvrent les valeurs calculées, les identifiants générés, les contrôles interactifs et les données structurées. Cette page documente également barcode (un champ de la catégorie média). Tous partagent les propriétés de base des champs.
| Type | Stocke / fait |
|---|---|
formula |
Une valeur calculée à partir d'une expression de formule. |
count |
Un comptage d'enregistrements liés. |
autonumber |
Un nombre auto-incrémenté avec préfixe et remplissage par zéros. |
button |
Un bouton interactif déclenchant une URL ou une automatisation. |
json |
Données JSON structurées. |
array |
Un tableau de valeurs typées. |
color |
Une valeur de couleur hexadécimale. |
code |
Code source avec coloration syntaxique. |
geolocation |
Coordonnées latitude/longitude. |
barcode |
Une valeur de code-barres (catégorie média — voir ci-dessous). |
formula
Calcule une valeur à partir d'une expression de formule référençant d'autres champs.
| Propriété | Description |
|---|---|
formula |
Requis. Expression à calculer. Prend en charge les références de champs, les opérateurs et les fonctions. |
resultType |
Type de données attendu du résultat (par ex. string, number, boolean, date). |
format |
Format d'affichage du résultat (par ex. currency, percentage, decimal, date). |
- { id: 1, name: total_price, type: formula, formula: 'price * quantity', resultType: number }
count
Compte le nombre d'enregistrements liés via un champ de relation dans la même table. Un rollup simplifié.
| Propriété | Description |
|---|---|
relationshipField |
Requis. Nom du champ de relation dont les enregistrements liés doivent être comptés. |
filters |
Expression de filtre optionnelle — ne compte que les enregistrements liés correspondants. |
- {
id: 2,
name: completed_task_count,
type: count,
relationshipField: tasks,
filters: { field: status, operator: equals, value: completed },
}
autonumber
Un nombre auto-incrémenté avec un préfixe optionnel et un remplissage par zéros.
| Propriété | Description |
|---|---|
prefix |
Texte optionnel ajouté avant le nombre (par ex. INV-, ORD-). |
startFrom |
Nombre de départ (entier ≥ 1). |
digits |
Nombre minimal de chiffres avec remplissage par zéros. Entier de 1 à 10. |
- { id: 3, name: invoice_number, type: autonumber, prefix: 'INV-', startFrom: 1000, digits: 5 }
button
Un bouton interactif rendu sur les enregistrements qui déclenche une action.
| Propriété | Description |
|---|---|
label |
Requis. Texte du bouton. |
action |
Requis. Type d'action à déclencher (par ex. url, automation). |
url |
URL à ouvrir (lorsque action vaut url). |
automation |
Nom de l'automatisation à exécuter (lorsque action vaut automation). |
- {
id: 4,
name: approve,
type: button,
label: Approve,
action: automation,
automation: approve_request,
}
Corrigé par rapport aux docs antérieures. Le champ button utilise label, action, url et automation — et non buttonLabel / buttonAction / buttonUrl.
json
Stocke des données JSON structurées avec une validation de schéma optionnelle.
| Propriété | Description |
|---|---|
schema |
Objet JSON Schema optionnel pour valider le contenu. |
- { id: 5, name: metadata, type: json, required: false }
array
Stocke un tableau de valeurs avec des contraintes de type et de longueur optionnelles.
| Propriété | Description |
|---|---|
itemType |
Type de données des éléments du tableau (par ex. string). |
maxItems |
Nombre maximal d'éléments (entier ≥ 1). |
- { id: 6, name: tags, type: array, itemType: string, maxItems: 10 }
color
Stocke une valeur de couleur au format hexadécimal. Rendu avec un sélecteur de couleur.
| Propriété | Description |
|---|---|
default |
Couleur par défaut en hexadécimal sur 6 chiffres (par ex. #3B82F6). |
- { id: 7, name: brand_color, type: color, required: true, default: '#3B82F6' }
code
Stocke du code source en texte brut avec coloration syntaxique (CodeMirror 6).
| Propriété | Description |
|---|---|
language |
Requis. Langage pour la coloration (par ex. javascript, typescript, yaml, json, python, sql, html, css, markdown). |
lineNumbers |
Booléen. Afficher les numéros de ligne. |
readOnly |
Booléen. Rendre l'éditeur en lecture seule. |
minLines |
Nombre minimal de lignes visibles (entier ≥ 1). |
maxLines |
Nombre maximal de lignes visibles avant défilement (entier ≥ 1). |
tabSize |
Taille de tabulation en espaces. Entier de 1 à 8 (par défaut 2). |
- { id: 8, name: snippet, type: code, language: typescript, lineNumbers: true, tabSize: 2 }
geolocation
Stocke des coordonnées géographiques (latitude et longitude) pour les fonctionnalités basées sur la localisation. Ne prend aucune propriété spécifique au type au-delà des propriétés de base des champs.
- { id: 9, name: office_location, type: geolocation, required: true }
barcode
Stocke une valeur de code-barres pour l'identification de produit et l'inventaire. (Classé dans la catégorie média, documenté ici avec les autres champs de valeur spécialisés.)
| Propriété | Description |
|---|---|
format |
Format de code-barres (par ex. EAN-13, CODE128). |
- { id: 10, name: product_barcode, type: barcode, required: true, format: EAN-13 }
Les champs calculés se mettent à jour automatiquement. formula, count et rollup (voir Champs relationnels) sont dérivés — ils se recalculent lorsque leurs entrées changent et ne sont pas directement éditables.