> For the complete documentation index, see [llms.txt](https://ksaar.gitbook.io/ksaar-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ksaar.gitbook.io/ksaar-documentation/les-elements/les-calculs/calculs-de-liaison.md).

# Calculs de liaison

Les calculs de liaison permettent d'effectuer des calculs sur des enregistrements liés.

### 🔗 Créer un calcul de liaison

La création d'un calcul de liaison peut se faire depuis une page d'un workflow ou d'un suivi. Pour cela, cliquez sur le pictogramme se situant en bas à gauche, puis sur + et sélectionnez **Calcul de liaison**.

<div data-full-width="true"><figure><img src="/files/TCmgJQPKjQJ4P8ul83aQ" alt="" width="549"><figcaption></figcaption></figure></div>

Il est aussi possible de créer un calcul de liaison depuis la vue table ou dans une matrice en ajoutant un calcul de colonnes.

### ⚙️ Paramétrer un calcul de liaison

Pour le paramétrage d'un calcul de liaison, choisissez :&#x20;

* son identifiant unique
* la table contenant les enregistrements sur lesquels le calcul sera appliqué
* le champ [Liaison Simple](/ksaar-documentation/les-elements/elements-liaisons.md#liaison-simple) que lie la table sélectionnée à la table actuelle
* le calcul à effectuer : vous avez alors la possibilité d'effectuer des calculs sur les champs Nombre et les champs Calcul de la table sélectionnée.

<figure><img src="/files/VsJdhHqF2uENGBdTmuF4" alt="" width="563"><figcaption><p>Exemple de paramétrage d'un calcul de liaison</p></figcaption></figure>

#### 🚧 Compter un nombre d'enregistrements liés en utilisant un calcul de liaison

Dans cet exemple, nous allons voir comment compter le nombre de clients par agence en utilisant un Calcul de liaison. Chaque client sera lié à une agence spécifique.

Pour cela :&#x20;

1️⃣ Créez les tables **Client** et **Agence** et complétez ces tables en ajoutant des champs qui définissent les clients et les agences (ex : "prénom client", "nom client", "adresse mail client" pour la table Client et "nom agence", "adresse agence", ... pour la table Agence).

2️⃣ Dans la table **Client**, ajoutez un champ **Liaison Simple** d'identifiant unique "Agence liée" et lié le à la table **Agence**. Ce champ sera utilisé pour lier chaque client à une agence spécifique.

<figure><img src="/files/waXphLDYRNvcYMWonYYu" alt="" width="279"><figcaption><p>Paramétrage du champ Liaison Simple "Agence liée"</p></figcaption></figure>

3️⃣ Dans la table **Client**, créez un **Calcul** d'identifiant unique "1 client" et définissez sa valeur comme étant toujours égale à 1. Cette valeur constante sera utilisée pour compter le nombre de clients par agence.

<figure><img src="/files/4XlwYw8QaSdP4Orlqio4" alt="" width="563"><figcaption><p>Paramétrage du champ Calcul "1 client"</p></figcaption></figure>

4️⃣ Dans la table **Agence**, ajoutez un **Calcul de liaison** d'identifiant unique "Nombre de clients par agence". Dans son paramétrage, sélectionnez la table **Client** puis choisissez le champ Liaison Simple "Agence liée" de la table Client. Dans la formule du calcul, utilisez la fonction **SUM** pour additionner les valeurs du champ de calcul "1 client" de la table Client.

<figure><img src="/files/VsJdhHqF2uENGBdTmuF4" alt="" width="563"><figcaption><p>Paramétrage du calcul de liaison "Nombre de clients par Agence"</p></figcaption></figure>

Ce calcul de liaison renverra le nombre total de clients par agence.

#### 🚧 Calculer une moyenne en utilisant un calcul de liaison

On souhaite maintenant effectuer la moyenne du nombre de clients par agence pour chaque entreprise. Une entreprise peut avoir plusieurs agences, et chaque agence peut avoir plusieurs clients.

Pour cela :&#x20;

1️⃣ Créez une table **Entreprise** et ajoutez-y les champs nécessaires pour définir une entreprise, tels que "Nom de l'entreprise" et "Adresse du siège social".

2️⃣ Dans la table **Agence**, ajoutez un champ **Liaison Simple** d'identifiant unique "Entreprise liée" et lié le à la table **Entreprise** pour établir la liaison avec l'entreprise correspondante.

<figure><img src="/files/waXphLDYRNvcYMWonYYu" alt="" width="279"><figcaption><p>Paramétrage du champ Liaison Simple "Entreprise liée"</p></figcaption></figure>

3️⃣ Dans la table **Entreprise**, créez un **Calcul de liaison** d'identifiant unique "Moyenne de clients par agence - Entreprise". Dans son paramétrage, sélectionnez la table **Agence** puis choisissez le champ Liaison Simple "Entreprise liée". Dans la formule du calcul, utilisez la fonction **MOYENNE** puis sélectionnez le champ de calcul de liaison "Nombre de clients par agence" de la table Agence.

<figure><img src="/files/WPycOHq5XgYSqq69r4DZ" alt="" width="563"><figcaption><p>Paramétrage du calcul de liaison "Moyenne de clients par agence - Entreprise"</p></figcaption></figure>

Ce calcul de liaison renverra la moyenne du nombre de clients par agence dans chaque entreprise.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ksaar.gitbook.io/ksaar-documentation/les-elements/les-calculs/calculs-de-liaison.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
