Aller au contenu
SurfaceDocs
ENCommencer
DocsConstruire vos apps

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.

  1. Client sélectionné
  2. Recherche
  3. Soumissions
  4. Voir toutes les soumissions
DISPOSITION ILLUSTRATIVEApp Clients / Soumissions
SurfaceClients / Atelier NordExemple
Liens entre WorkspacesSélectionner puis retrouver le client
Clients
Soumission S-1042
Client liéAtelier Nord
Sélectionner un client⌕ Rechercher par nom…Atelier Nord ✓
Recherchez un concept, un champ ou une action.Esc