Liens entre Workspaces
Relier des Fields et afficher les objets associés sans coupler les apps.
Connecter après installation
Les Workspaces partagent le même Model de base. Une intégration associe des Fields et leurs objets; elle ne demande pas d’avoir prévu toutes les apps du catalogue lors de leur création. Vous pouvez installer Soumissions aujourd’hui et le relier à votre Workspace Clients déjà utilisé.
La configuration des intégrations est accessible à l’usager et à l’AI selon leurs droits. Une proposition de l’AI expose les mêmes paramètres et les mêmes effets qu’une configuration manuelle.
| Paramètre | Valeur dans l’exemple | Description |
|---|---|---|
| Workspace source | Soumissions | App qui porte la référence |
| Type de fiche source | Soumission | Objet contenant le Field lié |
| Field source | clientId | Valeur qui sélectionne un client |
| Workspace cible | Clients | App qui contient les fiches proposées |
| Type de fiche cible | Client | Type d’objet accepté |
| Identité cible | Identifiant stable du client | Évite de lier sur un nom modifiable |
| Libellé de sélection | Entreprise | Texte lisible dans la recherche |
| Présentation inverse | Soumissions du client | Groupe visible dans la fiche Client |
Relier des Spaces autonomes
Ouvrir Links dans les actions de collection d’un Space Data, Knowledge ou Content. Links s’ouvre dans une fenêtre en conservant le Space affiché. La fermeture demande confirmation si des modifications ne sont pas enregistrées. Save, dans le pied de la fenêtre, enregistre une configuration de Link complète. Le bouton reste désactivé si elle est incomplète ou inchangée. Le même formulaire est disponible dans une Data View sous Linked sources → Choose a linked source → Manage Links. Choisir l’emplacement cible, le Space ou l’application, son Field compatible, les libellés et les limites de relation. Une collection Knowledge ou Content autonome utilise Title, séparément des métadonnées propres à une Surface. La configuration ne relie pas automatiquement les éléments existants : ouvrir une fiche ou une Surface et sélectionner explicitement ses éléments liés. La Data View suit ces Links réels.
Convertir un Field existant
La conversion commence par un inventaire complet des fiches sources, y compris celles sans lien. Pour chaque fiche, choisissez explicitement sa cible ou l’absence de cible lorsqu’elle est autorisée. Une ancienne valeur scalaire ne sélectionne jamais automatiquement un objet. Le type et le caractère requis du Field restent ceux du Model ; aucune valeur vide ou valeur par défaut n’est fabriquée pour satisfaire une contrainte.
La preview montre les valeurs avant/après et les effets sur les liens. Confirmez ce même choix après vérification. Si le résultat de la confirmation est incertain, reprenez la même confirmation conservée plutôt que créer une autre opération. Une tête, une configuration ou des droits devenus incompatibles provoquent un refus, pas une nouvelle sélection silencieuse. Une interface ou un outil qui ne prend pas explicitement en charge cette conversion la laisse indisponible.
Configurer exige les droits de propriétaire requis sur les deux apps et leurs contenus. Le lien ne délègue aucun droit ; les permissions de lecture et de modification des références restent distinctes de cette autorité de configuration, pour l’usager comme pour l’AI.
Les modifications de libellés, de présentation ou la désactivation conservent les liens et leur identité. Elles ne changent pas les endpoints ni les cibles choisies. Un changement de cible relève d’une sélection explicite ; désactiver ne supprime pas les relations existantes.
Liens dans le Builder local
La section Links présente des cartes compactes avec les deux applications et leurs Fields configurés. Ouvrez une carte pour examiner son mapping, modifier les libellés, choisir une icône dans la bibliothèque ou ajuster les limites de relation. Les liens entrants sont consultables sur place; leur gestion appartient à l’application source. Désactiver conserve les relations existantes. La recherche et les compteurs portent sur les liens chargés; la continuation permet d’en charger d’autres. Ces réglages s’appliquent à la sauvegarde, indépendamment de la publication du Model.
Vous pouvez configurer un lien pendant l’édition d’un brouillon d’application. Les liens utilisent les Fields publiés des deux applications; publiez les nouveaux Fields ou leurs modifications avant de les sélectionner ici. Sauvegarder un lien ne publie pas le brouillon. Si un Model publié change, la configuration du lien doit être revue.
Sélectionner un objet lié
Un Field lié affiche un indicateur de lien et un contrôle de sélection. La recherche propose les fiches cibles auxquelles l’usager a accès. Choisir Atelier Nord enregistre la référence de ce client. Le lien ne copie pas ses coordonnées dans la soumission.
Si le nom du client change, le lien conserve son identité. Si les droits changent, l’interface n’expose pas de données devenues inaccessibles. La suppression et les changements structurels suivent la politique de relation déclarée.
Afficher les liens inverses
Dans la fiche Client, le panneau Soumissions utilise une Query liée au client courant. Affichez trois ou quatre éléments, puis Voir tout. La collection complète conserve le client comme contexte et permet recherche, tri et pagination. Chaque groupe de liens possède sa propre limite; le panneau ne s’allonge pas avec toute la base.
Vérifier la configuration
Créez une soumission, sélectionnez Atelier Nord et ouvrez le lien. Revenez à la fiche client et vérifiez la présence de la soumission. Testez avec un membre aux droits limités pour contrôler la sélection et la lecture des deux côtés. Les tags facilitent la classification; le lien identifié reste la relation métier.
Exemples appliqués : Sélectionner puis retrouver le client
Le sélecteur renseigne le lien de la soumission et la fiche Client présente les soumissions associées.
Configuration
Fragment à placer dans forms[].fields[]. Propriétés et valeurs admises.
{
"contract": "WorkspaceFormControl@2",
"repeatable": false,
"key": "client",
"label": "Client",
"input": "surface-reference",
"binding": {
"kind": "link",
"linkTypePath": "application/client",
"direction": "outgoing"
},
"required": true,
"ruleKeys": [],
"options": [],
"selector": {
"queryKey": "clients",
"multiple": false,
"minimum": 1,
"maximum": 1
}
}
Variante et raccordement
Fragment à placer dans presentation.recordProfiles[].detail.relatedGroups[]. Propriétés et valeurs admises.
{
"key": "quotes",
"label": "Soumissions",
"queryBindingKey": "client-quotes",
"maximumVisible": 4,
"openAllLabel": "Voir toutes les soumissions",
"rowIcon": null
}
Exemple de disposition UI
La disposition illustrative ci-dessous situe cette configuration dans l’app Clients/Soumissions. Chaque fragment s’insère à l’emplacement indiqué; ses références aux Fields, Queries et Actions correspondent aux déclarations du Model.
- Client sélectionné
- Recherche
- Soumissions
- Voir toutes les soumissions