> 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-bonnes-pratiques/maintenance-et-evolution.md).

# Maintenance et évolution

## ➗ Formules

#### Utiliser la formule [LET](/ksaar-documentation/les-elements/les-formules.md#let)

La formule LET permet d’améliorer la lisibilité de vos formules en vous offrant la possibilité de renommer les variables utilisées.\
Elle facilite ainsi la compréhension, la maintenance et la modification des formules complexes, en les découpant en étapes claires et logiques.\
C’est un excellent moyen de structurer vos formules de manière plus lisible et plus robuste.

#### Insérer des commentaires

N’hésitez pas à **insérer des commentaires** dans vos formules afin d’expliquer chaque étape ou logique mise en place. Cela permet une compréhension plus simple pour de la collaboration ou lorsque vous voudrez y apporter des modifications.

**Exemple :**&#x20;

On souhaite récupérer des informations sur la rentrée scolaire des enfants :&#x20;

```c
LET( 
    nbJour, WEEKDAY({dateH_debut_planningEnfant}), 
    jour = IF(nbJour == 1, 7, nbJour - 1), 
    
    comment, "WEEKDAY renvoie la version anglaise avec dimanche en 1ere valeur,",
    comment, "donc je reformate avec lundi == 1",
    
    date, FORMAT_DATE({dateH_debut_planningEnfant}, "DD_MM_YY"), 
    etab, {sys_fml_lnk_etablissement_planningEnfant → txt_idBdd_etablissement}, 
    jour & "_" & date & "_" & etab
)
```

## 💬 Ajouter des commentaires

Lorsque vous ajoutez des lignes ou des colonnes avec des conditions d’affichage, n’hésitez pas à ajouter des commentaires explicatifs. Cela permet d’identifier rapidement les zones conditionnées dans une page et de comprendre clairement les critères d’affichage appliqués.

Pour cela, vous pouvez ajouter une ligne au dessus avec un arrière-plan coloré et en la masquant sur tous les appareils. Laissez alors un commentaire de la forme :

* `[MAKER] Ligne -> qcu_ticketRedige_demande égal à "Oui"`
* `[MAKER] Colonne 3 -> lnkM_ticket_demande non null`

<div align="left"><figure><img src="/files/AoEXBA0H7ZE4ziDNiuKx" alt=""><figcaption><p>Masquer une ligne pour laisser un commentaire</p></figcaption></figure></div>

## 🌳 Multi-environnement

Avec le [multi-environnement](/ksaar-documentation/le-multi-environnement/le-multi-environnement.md), il est fortement recommandé de créer régulièrement de nouvelles versions de développement avant d’effectuer des modifications. Cela vous permettra de :

* Revenir facilement en arrière si un changement ne vous convient pas
* Tester vos implémentations dans un environnement isolé, sans impacter la version en production
* Sécuriser vos déploiements en validant étape par étape

#### &#x20;Bonnes pratiques&#x20;

* Renommez chaque version de manière claire (ex. : v1.2 - Ajout du module de relance)
* Ajoutez une description explicite pour tracer les évolutions et faciliter la reprise par un collaborateur ou vous-même

## &#x20;📈 Éléments de données

#### Privilégier une configuration par usage

Réutiliser une même configuration de tableau à plusieurs endroits tout en gérant des droits spécifiques pour chaque emplacement peut entraîner des risques lors des modifications.

En effet, modifier les paramètres d’un tableau dans un endroit peut impacter involontairement les autres usages.

Il est donc recommandé de créer des configurations dédiées, adaptées à chaque contexte d’utilisation, tout en maintenant une [syntaxe](/ksaar-documentation/les-bonnes-pratiques/syntaxe/syntaxe-des-autres-elements.md#elements-de-donnees) cohérente afin de préserver une organisation claire et facilement maintenable.

## 🗝️ Clé API

#### **Créer une clé API par connexion externe**

Pour chaque système tiers, utilisez une clé dédiée afin de faciliter la gestion, la révocation ou la mise à jour des accès sans impacter les autres intégrations.

Pensez à bien [renommer vos clés API](/ksaar-documentation/les-bonnes-pratiques/syntaxe/syntaxe-des-autres-elements.md#cle-api) afin de pouvoir les retrouver facilement.


---

# 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-bonnes-pratiques/maintenance-et-evolution.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.
