Mode Multi-Société
Le mode multi-société permet de faire cohabiter plusieurs sociétés au sein d'une seule application. Chaque utilisateur accède aux documents et aux autres utilisateurs en fonction de la ou des société(s) à laquelle il est rattaché.
Fonctionnalités
Il est important de distinguer deux niveaux distincts :
- Gestion de la base organisation : gestion des accès aux intervenants et liaisons des ressources (rôles, profils, services, groupes de diffusion, sociétés).
- Gestion des droits de documents et de workflow : droits de consultation et de visualisation des documents.
Gestion de la base organisation
Pour activer le mode multi-société, vous devez d'abord créer les ressources nécessaires, puis les lier entre elles. Cela permet :
- Le filtrage des utilisateurs par société
- Le filtrage des services par société
- Le filtrage des groupes de diffusion par société
Gestion des droits de documents et de workflow
Une fois la base organisation paramétrée, vous devez configurer les droits d'accès aux documents. Cela permet aux utilisateurs de créer et de visualiser les documents liés à leur(s) société(s).
Paramétrage
Étape 1 : Créer une ressource « Société »
Depuis l'application web
Vous devez d'abord permettre à l'administrateur de créer une société.
Côté Process Studio, pour rendre visible le bouton « Configurer la sécurité des ressources et relations » dans le profil d'un utilisateur, accédez à la fiche de cet utilisateur et cochez « Gère la sécurité ». Cette action coche automatiquement « Organisation ».

Puis, côté web :
- Connectez-vous avec un compte admin et accédez à Administration > Organisation > Autres ressources.
- Depuis Autres ressources, modifiez le profil Administrateur et cliquez sur « Configurer la sécurité des ressources et relations ».

- Dans l'onglet Ressources, accordez à la ressource Société les droits suivants : Lire, Modifier, Créer et Supprimer.

Le tableau des droits disponibles est le suivant :
| Champ | Description | Valeur |
|---|---|---|
| Ressources | Ressources configurables par l'administrateur (créées par défaut). | — |
| Ordre | Ordre d'apparition dans la liste de création. | Nombre entier (ordre croissant). |
| Sécurité | Droits d'intervention sur la ressource. | Non disponible : pas de création possible. Lire : visualisation seule. Lire et Modifier : visualisation et modification. Lire, Modifier, Créer et Supprimer : accès complet. |
| Attributs | Propriété(s) associée(s) à la ressource. | Séparés par « ; ». Affichés dans les propriétés étendues de la fiche utilisateur. |
Pensez à bien enregistrer la ligne du tableau avant de cliquer sur Valider.
À partir de cette étape, la création d'une société est disponible dans Autres ressources.

Remplir la fiche société
Pour créer une nouvelle société depuis l'application web, complétez les champs suivants :

| Champ | Description |
|---|---|
| Identifiant unique | Identifiant unique de la société. Il ne peut pas être identique à celui d'une autre ressource. |
| Nom | Nom d'affichage de la société. |
| Propriétés étendues | Propriété ou caractéristique associée à la société. |
Étape 2 : Relier les ressources aux sociétés créées
Depuis l'application web
Vous devez permettre à l'administrateur de créer les liaisons suivantes :
- Relier un groupe de diffusion à une société
- Relier un service à une société
- Relier un utilisateur à une société
- Accorder le droit d'administrer une société à un utilisateur
Être connecté avec un profil Administrateur.
- Accédez à Administration > Organisation > Autres ressources.
- Modifiez le profil Administrateur et cliquez sur « Configurer la sécurité des ressources et relations ».

- Dans l'onglet Relations, accordez les droits nécessaires à l'administrateur.

| Colonne | Description | Valeur |
|---|---|---|
| Relations | Champs de relation configurables depuis une fiche ressource. | Existants par défaut dans le standard. |
| Ordre | Ordre d'apparition des champs depuis une fiche ressource. | Nombre entier (ordre croissant). |
| Sécurité | Droits d'intervention sur les champs. | Non disponible : pas de gestion. Lire : visualisation seule. Lire et Modifier : visualisation et modification. |
- Les lignes contenant le mot « société » permettent à l'administrateur de créer des liaisons avec une ressource Société :
| Ligne | Description |
|---|---|
| Groupe de diffusion société | Relier des groupes de diffusion à une ou plusieurs société(s). |
| Peut administrer la société | Accorder le droit d'administrer une ou des société(s) à un utilisateur. |
| Service Societe | Relier des services à une ou plusieurs société(s). |
| User Societe | Relier des utilisateurs à une ou plusieurs société(s). |
Pensez à bien enregistrer la ligne du tableau avant de cliquer sur Valider.
- Les liaisons à une société sont maintenant accessibles depuis une fiche ressource.
Les relations fonctionnent dans les deux sens. Par exemple, si vous ajoutez la société « FIFA » dans le champ User Societe de la fiche d'un utilisateur, ce même utilisateur apparaîtra automatiquement dans la fiche de la société « FIFA ».


Si vous accordez les droits d'administration d'une société à un utilisateur, vérifiez que cet utilisateur est bien rattaché à cette société.
Étape 3 : Activer le mode multi-sociétés
Depuis Process Studio
Dans le fichier de configuration de l'application, modifiez le paramètre ModeOrga de 0 à 1.
À partir de la v23 — fichier programs.ini :
ModeOrga=1
En v21 et inférieur — fichier web.config :
<!-- Mode de la Organisation 0: Normal 1:Multisociété 2: Saas mutualisée -->
<add key="ModeOrga" value="1" />
Après modification du fichier de configuration, recyclez les pools d'application associés aux sites web pour que le changement soit pris en compte.
Une fois le mode activé, les comportements suivants s'appliquent dans la fenêtre de sélection de ressources de l'annuaire (OpenDirectoryPicker) :
- Filtrage des utilisateurs par société : un utilisateur ne voit que les utilisateurs de sa propre société.
- Filtrage des services par société : un utilisateur ne voit que les services de sa société.
- Filtrage des groupes de diffusion par société : un utilisateur ne voit que les groupes de diffusion de sa société.
Par exemple, avec un champ OpenDirectoryPicker({0},'Roles:QMDOC_Vérification', true), vous ne pouvez sélectionner que des utilisateurs appartenant à la ou aux société(s) auxquelles vous appartenez.
Étape 4 : Paramétrer les droits de consultation et de visualisation
Depuis Process Studio
1. Ajouter un champ Aps_Societe
Dans chaque formulaire concerné, ajoutez un champ nommé Aps_Societe (respectez la casse).
Ce champ détermine l'appartenance du document à une ou plusieurs sociétés.
Ce champ doit être multi-évalué (pour les utilisateurs rattachés à plusieurs sociétés) et coché « champ technique ».
Ajoutez la valeur par défaut suivante :
returnValue = (new Avanteam.Application.Security.APSUser(
(string)apsSession["UserFullName"])
).Societe;
Ce code récupère automatiquement la ou les société(s) de l'utilisateur qui crée le document. Il s'exécute une seule fois, à l'initialisation du document.
2. Paramétrer les droits de workflow
Dans les intervenants de workflow, créez un nouvel acteur de type F-Aps_Societe :

| Champ | Description |
|---|---|
| Nom | Renseigné automatiquement à la sélection du champ. |
| Description | Description de l'acteur « F-Aps_Societe ». |
| Type d'acteur | Contenu du champ. |
| Champ | Aps_Societe |
Cet acteur récupère la société de l'utilisateur qui a créé le document :
- Appliqué dans les droits de lecture → tous les utilisateurs de la même société peuvent voir le document.
- Appliqué dans les droits d'intervention → tous les utilisateurs de la même société peuvent intervenir sur le document.
À savoir
- Les vues ne sont pas modifiées par rapport au mode monosociété.
- Basez-vous sur les droits réels du document pour assurer le bon fonctionnement du moteur de recherche plein texte.
- Créer un acteur de type F-Aps_Societe reste la solution la plus simple.
- Appliquez cet acteur au minimum dans les droits de lecture des documents ou des workflows.
- Le produit n'effectue pas de filtrage dans les vues : il affiche uniquement les droits de consultation tels qu'ils sont paramétrés sur les documents.
Le mode multi-société ne modifie pas les droits en tant que tels. C'est à l'administrateur ou au chef de projet de veiller à la bonne configuration des droits de consultation sur les documents.
Annexe
Clés web.config — v21 et versions inférieures
<!--Base Orga Web : permettre de lancer la mise à jour automatique des
relations avec la ressource société 0: Inactif 1: Actif-->
<add key="ModeOrga.UpdateRelationSociete" value="0" />
ModeOrga.UpdateRelationSociete — Ne pas modifier, cette clé est obsolète.
<!--Base Orga Web : permettre l'administration de domaine tout en étant
mono-société, 0:Normal 1:Multi Site -->
<add key="ModeOrgaExt" value="0" />
ModeOrgaExt — Ne pas modifier, cette clé est obsolète.
Clés programs.ini — à partir de la v23
ModeOrgaExt=0
ModeOrga.UpdateRelationSociete=0
ModeOrgaExt et ModeOrga.UpdateRelationSociete — Ne pas modifier, ces clés sont obsolètes.
Vérifier l'activation et créer une société depuis Process Studio
Vous pouvez vérifier que le paramétrage est activé et identifier la société rattachée à un utilisateur depuis ses Préférences > Droits d'accès.
Pour créer une ressource société depuis Process Studio Client :
- Ouvrez Organisation puis l'onglet Ressources.
- Depuis Autres ressources, cliquez sur le bouton Société.


| Champ | Description |
|---|---|
| Nom court | Identifiant unique de la société. Ne peut pas être identique à celui d'une autre ressource. |
| Nom complet | Nom d'affichage de la société. |
| Attributs | Propriétés étendues. Propriété ou caractéristique associée à la société. |