Historique des mises à jour
Version 2.3.7 du 28 janvier 2026
Corrections d'anomalies
La recherche de code plantait avec certains noms de champs
La recherche de code plantait lorsqu'un champ de table portait le même nom qu'une méthode native Array.prototype de JavaScript, comme filter, map, find, first, etc. C'est désormais corrigé.
La liste des dépendances n'était pas mise à jour
Dans l'onglet Fields & fx, la liste des champs dépendants n'était pas mise à jour lorsque le schéma de la base était modifié. L'affichage se rafraîchit désormais correctement.
Optimisation du calcul des liens de dépendance
Un verrou a été ajouté pour éviter les boucles infinies lors du calcul des liens de dépendance pendant le clonage du schéma.
Version 2.3.6 du 12 janvier 2026
Corrections d'anomalies
callNinoxFunction ne fonctionnait pas correctement avec les fonctions asynchrones
La fonction callNinoxFunction ne fonctionnait pas correctement lorsque la fonction Ninox appelée effectuait des opérations asynchrones.
Opérations concernées :
- Impression (
print,printRecord, etc.) - Appels au serveur (
http,do as server,do as transaction, etc.) - Toute fonction Ninox asynchrone
Vous pouvez désormais passer une fonction de rappel en dernier argument pour récupérer le résultat une fois l'opération terminée.
Améliorations
Meilleure gestion des erreurs pour callNinoxFunction
callNinoxFunction renvoie désormais systématiquement un objet {error, result} en cas d'erreur :
- Élément HTML introuvable
- Base de données indisponible
- Fonction absente des fonctions globales
Version 2.3.5 du 10 janvier 2026
Corrections d'anomalies
Curseur de la poignée de séparation des fenêtres
Le curseur de la poignée de séparation entre les fenêtres Ninext et Ninox affiche désormais un curseur de redimensionnement plus explicite (col-resize ou row-resize) au lieu du curseur par défaut.
Ouverture des formules de page corrigée
Une anomalie empêchait d'ouvrir les formules de page depuis les onglets « Fields & fx » et « Recherche de code ». Le clic sur le lien d'ouverture de l'éditeur restait sans effet pour les pages (les tables, elles, fonctionnaient normalement). C'est désormais résolu.
Affichage correct après openTable/openRecord au démarrage
Lorsque les fonctions openTable() ou openRecord() étaient appelées juste après le démarrage de Ninox dans le déclencheur AfterOpen, l'affichage pouvait être erroné. Cette situation est désormais traitée correctement.
Libellé racine pour les pages
Dans la liste hiérarchique, le libellé racine affichait toujours « Tables », même lors de la navigation dans les pages. Le libellé s'adapte désormais au contexte (Tables ou Pages).
Version 2.3.4 du 5 janvier 2026
Améliorations
Nouvel onglet Soutenir Ninext
Un nouvel onglet Soutenir Ninext est désormais disponible dans la fenêtre Ninext : il permet de soutenir le développement du projet.

Version 2.3.3 du 4 janvier 2026
Corrections d'anomalies
Les noms de fonctions du script Ninox n'étaient pas visibles en mode sombre dans l'Aperçu du schéma
Les noms de fonctions du script Ninox étaient invisibles à cause d'un réglage de couleurs incorrect. C'est désormais corrigé.
Icône Ninext invisible dans la barre d'outils de Ninox
Dans certains cas, selon la couleur d'équipe configurée dans Ninox, l'icône Ninext n'était pas visible dans la barre d'outils du mode administrateur. L'affichage est désormais ajusté pour garantir une visibilité optimale.
Version 2.3.2 du 30 décembre 2025
Corrections d'anomalies
Le glisser-déposer ne fonctionnait pas sur tablettes et smartphones dans SchemaOverview.
Le glisser-déposer fonctionne désormais sur les appareils tactiles (tablettes et smartphones) dans la vue du schéma de la base.
Le glisser-déposer de champs ignore désormais les clics et appuis sur les éléments interactifs (boutons, pièces jointes, pièces jointes fantômes) pour éviter les réordonnancements involontaires.
Le glisser-déposer de réordonnancement des champs ne se déclenche plus par accident lorsque l'utilisateur interagit avec des éléments cliquables comme des boutons ou des zones de pièces jointes.
Version 2.3.1 du 29 décembre 2025
Corrections d'anomalies
des modules n'étaient pas chargés si certains modules n'étaient pas demandés dans la configuration.
Les ressources CSS partagées sont désormais correctement chargées, quels que soient les modules activés dans la configuration de Ninext.
Dans viewEvent, une erreur invisible survenait si $(lst).touch n'existait pas.
Le gestionnaire viewEvent vérifie désormais l'existence de la propriété touch avant d'y accéder, ce qui évite les erreurs d'exécution.
Lorsqu'un champ de données et un champ d'interface (bouton, titre, etc.) d'une même table portent le même identifiant, Ninext s'affiche mal.
Ninext distingue désormais correctement les champs de données des éléments d'interface, même lorsqu'ils partagent des identifiants identiques dans une même table.
Lorsqu'un champ a un libellé vide, Ninext s'affiche mal.
Les champs au libellé vide sont désormais traités correctement, ce qui évite les problèmes d'affichage dans l'interface.
Lorsque Ninext est chargé hors du mode administrateur, une barre de défilement horizontale apparaît en bas de la fenêtre Ninox.
La barre de défilement horizontale indésirable a été supprimée lors de l'exécution de Ninext hors du mode administrateur.
Ninext 2.3.0 du 23 décembre 2025
Cette version 2.3.0 marque une étape importante dans l'évolution de Ninext, avec un effort particulier sur le confort d'utilisation, la lisibilité et les performances, notamment sur les grandes bases et les projets complexes.
Améliorations de l'interface
Nouvelle liste de sélection intelligente
La version 2.3.0 introduit une nouvelle liste de sélection hiérarchique, conçue pour faciliter la navigation dans les tables, les champs et les fonctions, même dans les plus grandes bases.

- Recherche combinée table / champ
Deux filtres indépendants permettent de chercher simultanément par nom de table et par nom de champ. Ninext affiche instantanément les correspondances, sans avoir à parcourir chaque table à la main.

- Affichage hiérarchique clair
Les tables se déplient ou se replient pour montrer leurs champs. Un compteur indique en permanence le nombre total de champs par table, ainsi que le nombre de résultats correspondant aux filtres actifs.
- Identification précise des champs
Chaque champ affiche désormais son identifiant technique entre crochets, ce qui facilite :
- l'identification des champs homonymes,
- la récupération rapide d'un identifiant,
- le travail sur des bases complexes ou partagées.
- Copie rapide d'une référence
Un bouton de copie apparaît au survol d'un champ : il permet de copier immédiatement sa référence complète (par exemple MyTable.MyField) dans le presse-papiers.
- Navigation avancée au clavier
La liste se parcourt intégralement au clavier :
- flèches haut / bas pour se déplacer,
- flèches gauche / droite pour replier ou déplier,
- Entrée pour sélectionner,
- Tab pour passer d'un filtre à l'autre,
- Échap pour fermer la liste.
Organisation de la section des scripts

L'affichage des scripts de champ a été repensé pour gagner en lisibilité et en efficacité.
- Titre explicite « Field Scripts »
Les scripts de champ sont clairement identifiés par un titre en italique, accompagné d'un bouton pour replier ou déplier la section.
- Section « Dependencies » dédiée
Les dépendances ont désormais leur propre section, avec :
- un titre distinct,
- un bouton de repli,
- un compteur indiquant le nombre de dépendances (par exemple *Dependencies (5)*).
- Interface plus compacte
Les marges et séparateurs superflus ont été supprimés, ce qui permet d'afficher plus d'informations à l'écran sans surcharge visuelle.
Aperçu du schéma : visualisez votre base de données

Grande nouveauté de Ninext 2.3.0 : un onglet dédié permet désormais de visualiser toute votre base de données sous la forme d'un schéma graphique.
- Vue d'ensemble des tables et des champs
Toutes vos tables sont affichées avec leurs champs, ce qui donne une lecture immédiate de la structure générale de la base.
- Visualisation des relations
Les liens et les références entre tables sont représentés graphiquement, ce qui facilite la compréhension des dépendances et de l'architecture d'ensemble.
- Organisation libre du schéma
Les tables se déplacent par glisser-déposer, pour organiser le schéma selon votre logique ou votre contexte de travail. Réagencez l'ordre des liens pour démêler les nœuds.

Utilisez la touche Commande (ou Alt) pour sélectionner plusieurs tables, puis les déplacer.

Changez le côté d'accroche des liens pour améliorer la lisibilité du diagramme.

- Zoom et navigation
Les outils de zoom permettent d'afficher plus ou moins de détails, selon que vous cherchez une vue d'ensemble ou une lecture précise.
- Copie d'écran
Le résultat affiché peut être copié dans le presse-papiers ou téléchargé au format png.

Pourquoi c'est utile :
- comprendre rapidement la structure d'une base complexe,
- documenter une application,
- repérer les tables orphelines ou les relations manquantes,
- présenter l'architecture d'une base à des tiers.
Accessible depuis l'onglet Aperçu du schéma de la fenêtre Ninext.
Aide contextuelle dans l'éditeur de code

L'éditeur de formules de Ninox dispose désormais d'une aide contextuelle intégrée, qui s'affiche automatiquement pendant la saisie du code.
- Assistance à la saisie des fonctions
Dès que vous commencez à taper un nom de fonction (par exemple concat), une infobulle apparaît.
- Informations affichées
L'infobulle donne :
- la syntaxe de la fonction,
- une description de son comportement,
- la liste des paramètres attendus,
- des exemples d'utilisation.
- Couverture étendue
L'aide est disponible pour :
- les fonctions Ninox (texte, dates, mathématiques, etc.),
- les fonctions globales.
- Aide interactive activée ou non
Cette aide s'affiche automatiquement dans l'éditeur de formules si l'option Aide interactive est cochée.
Performances et navigation
- Chargement optimisé des dépendances
Les sous-éléments des listes de dépendances ne sont désormais engendrés qu'à l'ouverture, ce qui réduit nettement les temps de calcul et d'affichage.
- Pagination automatique
Lorsque les listes dépassent 100 éléments (par exemple dans la Recherche de code), un système de pagination charge les résultats par blocs de 100.
Préférences utilisateur mémorisées
Un nouveau système de stockage centralisé retient vos préférences d'affichage :
- sections repliées ou dépliées,
- filtres actifs,
- dernières sélections et recherches.
Ces réglages sont automatiquement rétablis à chaque nouvelle session, sans aucune action de votre part.
Version 2.2.2 du 23 septembre 2025
Corrections d'anomalies
Une anomalie empêchait la prévisualisation des fichiers PDF joints à un enregistrement.
Version 2.2.1 du 28 août 2025
Améliorations
Dans la version précédente, nous avions amélioré l'identification des types de champs et des types de résultats renvoyés par les formules, pour plus de clarté et de compréhension dans l'usage des scripts.
Avec cette nouvelle version, notre objectif est de rendre la navigation dans les scripts et les tables plus simple et plus rapide pour les développeurs.
Jusqu'ici, remonter à l'origine d'une chaîne de calcul obligeait souvent à ouvrir plusieurs scripts et formulaires. Plus la base est grande, plus ces chaînes de dépendances s'allongent, au point qu'il faut parfois relire chaque formule de la chaîne pour comprendre pleinement le résultat final.
Il nous a paru essentiel de réduire le temps passé à cette investigation, pour que vous restiez concentré sur l'essentiel : la logique de vos scripts.
Nous espérons que ces améliorations rendront votre travail plus fluide et plus productif.
Le bouton rouge affiche le champ dans son formulaire et l'y présélectionne
Cliquez sur le bouton
pour afficher le champ et le présélectionner dans le formulaire

Cliquez sur le bouton

pour modifier le script


Le chemin du champ permet d'ouvrir l'éditeur de champ, l'éditeur de formule et les autres fenêtres intermédiaires


Ajustement de la largeur des listes déroulantes aux tables et champs dont les noms sont les plus longs.
Dans l'Inspecteur de champs, la largeur de la liste était celle de la liste déroulante et les noms de champs étaient tronqués. Désormais, la largeur de la liste s'adapte à la largeur maximale des noms de champs.
Ajout d'un bouton « Voir plus » pour charger les résultats par pages de 100 éléments
Dans la recherche de code, certaines recherches produisent de très nombreuses lignes de résultats, ce qui rend l'affichage de la liste très long. Nous avons donc introduit une pagination de 100 résultats par page. Un bouton permet d'afficher les 100 résultats suivants.

Les sous-éléments des listes de dépendances sont engendrés lorsque l'utilisateur clique sur la flèche pour les afficher. Cela réduit le temps d'affichage des résultats de recherche.
Pour limiter le temps de construction de la liste des champs, les sous-éléments ne sont construits qu'au moment de leur affichage. Chaque sous-élément de plus de 100 lignes est paginé :

Corrections d'anomalies
Le logo Fx ne s'affiche pas correctement pour les fonctions globales
La liste des champs ne s'affiche pas si l'un des noms de champs (libellé) est vide.
Merci à Fabio d'avoir signalé cette anomalie.
L'anomalie vient d'un champ sans nom :

Dans ce cas, la liste des champs ne s'affiche pas.
La coloration du code ne fonctionne pas lorsque le champ inspecté contient une formule
Dans certains cas, les fonctions onUpdate d'un déclencheur « Show only if » empêchent la modification des données de l'enregistrement courant.
Merci à Ralf d'avoir signalé cette anomalie
La fonction Événement de bouton, qui affiche des badges sur le bouton, est instable et empêche la mise à jour des données ou laisse le témoin d'activité tourner indéfiniment.
