Houlala, un mois et demi sans publier d’articles sur le blog… cela commence à faire beaucoup, mais on ne va pas se chercher d’excuses et on commence rapidement avec le descriptif du contenu de la dernière version taguée 9, la 9.24 sortie fin mars (2023) qui sera donc la version LTS de la branche 9 (version LTS, quesako ? lisez ou re-lisez cet article pour plus d’informations) car Mendix 10 is coming !!

Au programme de cette version : des avant-goûts de Mendix 10 que nous allons détailler.


Pour bénéficier de ces nouveautés, vous pouvez télécharger la dernière version de l’outil depuis le marketplace, puis l’installer. Il vous restera alors simplement à ouvrir l’application à mettre à jour avec, et Mx Studio Pro vous proposera alors de la convertir.


Au sommaire de ce billet :

Les améliorations Studio Pro

Applications depuis une feuille Excel

Start from spreadsheet” : ce modèle, pour démarrer la conception de son application, était populaire avec Mendix Studio (web)… Avec la fusion entre Studio et Studio Pro, on vous avait promis que les fonctionnalités Studio (web) allaient au fur et à mesure devenir disponibles dans Studio Pro, et ça devient donc le cas avec ce modèle d’applications qui va être en mesure d’avaler une feuille Excel statique que vous lui donnerez pour la transformer en une application Mendix personnalisable (Domain Model, Enumérations, Overview et NewEdit Pages, données d’initialisation automatiquement générés). L’application générée est tout de suite utilisable, mais vous pourrez y ajouter du workflow, des permissions, des dashboard, des fonctionnalités mobiles etc.

Nouveau volet de propriétés

Pour un avant-goût de Mendix 10, voici le nouveau volet des propriétés a été mis à jour avec plusieurs fonctionnalités pour améliorer l’expérience ! Nous prenons désormais en charge davantage de contrôles dans les propriétés afin que vous puissiez modifier encore plus de choses avec la nouvelle barre latérale. En outre, l’expérience globale a été rendue un peu plus agréable en déplaçant toutes les propriétés de style restantes dans l’onglet Styling (Apparence). Cela permet une approche plus holistique lors de la modélisation. Les sections réduites sont désormais mémorisées lorsque l’on passe d’un élément sélectionné à un autre.

Il ne vous reste plus qu’à l’activer dans le menu Edit > Preferences > New Features > Properties Pane.

Les améliorations côté UI

(Multi)-Sélection pour les widgets Data grid 2 et Gallery

La multi-sélection pour ces widgets était très demandée et elle est maintenant disponible, sous forme de cases à cocher ou par sélection d’éléments.

Il est également possible d’ajouter facilement dans l’en-tête des actions spécifiques à la multi-sélection.

Support des icônes personnalisés

Les icônes – qui ne les aime pas ou ne les utilise pas ? Par défaut, Mendix a toujours proposé des Glyphicons gratuits, et via des (S)CSS personnalisés, vous pouvez ajouter vos propres jeux d’icônes, mais ce n’était pas toujours très facile à utiliser. Nous sommes heureux de vous annoncer qu’avec la version 9.24, il est désormais possible d’importer des polices d’icônes personnalisées et de les utiliser de la même manière que les Glyphicons ! Vous pouvez maintenant créer une nouvelle collection d’icônes dans laquelle vous pouvez télécharger votre police personnalisée.

Vous disposez d’un contrôle total sur les noms de classe afin de faciliter l’utilisation de feuilles de style CSS personnalisées. Vous pouvez également ajouter des balises pour permettre aux utilisateurs de trouver facilement la bonne icône lors d’une recherche. Par exemple, la recherche de “pouce levé” ou “accepter” peut aboutir à la même icône.

En revanche, les fichiers de police d’icônes ne contiennent pas toutes les informations nécessaires, vous devrez donc configurer les noms et les balises vous-même. Bien qu’il s’agisse d’un travail ponctuel, nous souhaitons vous faciliter la tâche. Cependant, les jeux d’icônes sont livrés dans différents formats, c’est pourquoi nous avons ajouté un outil permettant d’importer les données relatives aux icônes. Si vous le mettez en forme, nous l’importons ! Par exemple, vous pouvez prendre le CSS, faire une recherche et un remplacement (avec une chaîne vide) pour l’obtenir dans le bon format.

Aussi – un petit teaser. Bientôt, Mendix sera livré avec un tout nouveau jeu d’icônes avec de superbes icônes que vous pourrez utiliser gratuitement !

Une sélection d’attributs plus performante

Lors de la configuration d’attributs pour la visibilité conditionnelle, pour la modification, pour les modèles de texte ou pour les sélecteurs de référence, vous ne pouviez auparavant choisir que le contexte actuel et non un contexte parent, à moins d’utiliser une expression. Bonne nouvelle ! Dans cette version, nous avons facilité les choses. Il est désormais possible de sélectionner un attribut à partir de n’importe quel widget de données environnant. De plus, les paramètres ou les snippets peuvent désormais être utilisés directement.

Les améliorations côté microflow

Option Range

Lorsque vous effectuez des opérations sur des listes dans les microflows, vous disposez désormais d’une option Range (Plage). Cette option vous permet de sélectionner un sous-ensemble d’une liste entre deux valeurs différentes et facilite grandement la modélisation lorsque vous recherchez un sous-ensemble spécifique dans votre liste.

Conversion de microflow en nanoflow et inversement

De temps en temps, vous commencez à mettre en œuvre votre logique dans un microflow et ce n’est que lorsque vous avez terminé que vous remarquez que cette logique pourrait en fait s’exécuter plus rapidement directement côté client sous la forme d’un nanoflow. Et puis souvent, c’est l’inverse qui se produit.

Il s’agit là d’un phénomène courant – et d’un bon signe – d’apprentissage et d’amélioration de votre application au fur et à mesure que vous avancez. Cependant, la transformation de votre microflow en nanoflow, et inversement, n’a pas été jusque là forcément une bonne expérience. Eh bien c’est du passé, cliquez à présent simplement avec le bouton droit de la souris sur l’arrière-plan de votre x-flow, et sélectionnez “Convert to…” et … Voilà !

Les améliorations Mobile Native

Mise à jour de React Native

Les applications Mendix embarquent les populaires bibliothèques open-source que sont React et React Native, avec la version 9.24, la bibliothèque React a été portée à la version 18.2.0 et React Native à 0.70.7. Cela apporte des améliorations en termes de stabilité mais également de performance.

En raison de quelques changements radicaux dans React Native, cela peut nécessiter des mises à jour de certaines actions javascript et de certains pluggable widgets. Cela a été fait pour tous les composants Mendix, mais si vous utilisez des composants tiers, assurez vous de les tester au préalable.

Nouveau mode de synchronisation : Never

Nous sommes surpris par la diversité des applications offline-first construites avec Mendix. Des cas d’utilisation de plus en plus complexes, tels que la prise en charge d’entretiens d’embauche ou le suivi de mesures chimiques, sont rendus plus fiables et plus pratiques grâce à cette approche. En regardant ces applications, nous avons remarqué un besoin commun qui était mal géré par nos capacités hors ligne : la capacité de stocker et de gérer des données sur l’appareil qui ne devraient jamais être synchronisées avec le runtime.

Avec cette version, nous introduisons un nouveau mode de synchronisation : Never (Jamais). Lorsque vous définissez la synchronisation sur Never pour une entité, ses objets ne seront pas synchronisés entre le runtime et la base de données hors ligne lors d’une synchronisation complète. Les objets peuvent toujours être synchronisés à l’aide de la synchronisation sur périphérique ou de la synchronisation sélective, mais c’est vous qui contrôlez quand et ce qui est synchronisé.

Les améliorations côté Intégrations

Documentation des authentifications dans le Catalog

Nouvelle fonctionnalité dans le Catalogue : la possibilité de documenter les détails d’authentification pour les API d’Odata. Grâce à cette nouvelle fonctionnalité, les propriétaires de sources de données et les administrateurs peuvent désormais facilement indiquer la méthode d’authentification requise, fournir une description pour informer les développeurs consommateurs sur la façon de l’utiliser et établir un lien vers tous les modules (privés) de la place de marché qui sont nécessaires pour faire fonctionner l’authentification.

Business Event bidirectionnels – publication et abonnement

Jusqu’à la version 9.24, la communication des événements était à sens unique : une application fournissant un service d’événements publiait des événements, tandis que d’autres applications utilisant le service d’événements pouvaient s’abonner à ces événements. C’était utile si vous aviez besoin d’applications pour répondre en temps réel aux événements d’autres applications, mais c’était aussi limité car les événements n’allaient que dans un sens.

Avec la version 9.24, il est désormais possible pour toute application utilisant un service d’événements de publier et de s’abonner à des événements provenant d’un service d’événements. En effet, cela signifie qu’une application peut définir de manière centralisée les événements utilisés pour un cas d’utilisation spécifique, et que toutes les autres applications utiliseront ces événements prédéfinis pour envoyer et recevoir.

Imaginons une application qui doit recevoir des événements d’audit d’autres applications. Cette application définirait un service d’événements, un événement AuditEvent et préciserait que toute application peut publier ces événements. Le service recevrait tous ces événements d’audit et les analyserait pour déterminer si des anomalies de privilèges peuvent être détectées. En cas d’anomalie détectée, le service publiera un événement que d’autres applications pourront utiliser pour prendre des mesures, par exemple pour lancer un flux de travail afin d’examiner l’anomalie.

La capture d’écran du service de formation ci-dessous illustre cet exemple. Dans la partie supérieure de la boîte de dialogue, vous pouvez définir les événements pertinents pour ce service et ce que les utilisateurs de ce service peuvent faire : s’abonner à l’événement, publier l’événement, ou les deux. Une fois le service défini, un document AsyncAPI peut être exporté pour être utilisé dans d’autres applications.

La deuxième partie de la boîte de dialogue définit la manière dont le service est mis en œuvre : les entités utilisées pour capturer les informations relatives aux événements et les gestionnaires de microflow définis pour recevoir les événements provenant d’autres applications.

Dans la première partie de la boîte de dialogue de définition du service, vous définissez vos événements. Pour chaque événement, vous pouvez définir ses attributs et, comme indiqué ci-dessous, la manière dont ces événements peuvent être utilisés, à la fois par l’application qui implémente le service et par les applications qui utilisent le service.

Les entités externes et OData supportent les énumérations

Lorsque vous publiez une ressource OData basée sur un attribut d’énumération, vous pouvez désormais la publier en tant qu’énumération. Cela signifie que tout formulaire utilisant cette ressource dans vos applications clientes l’affichera et la validera en tant qu’énumération.

Dans votre application cliente, vous pouvez importer la ressource OData en tant qu’entité externe, qui affichera un attribut d’énumération. Lorsque vous l’utilisez dans un formulaire, le widget de formulaire approprié est utilisé.

Intégrations AWS

Les Business Events Mendix offrent un moyen simple de construire des applications basées sur les événements avec une communication Mendix-Mendix. Nous introduisons maintenant un moyen d’envoyer et de recevoir des événements d’AWS vers Mendix et inversement en utilisant notre nouveau connecteur Amazon EventBridge. L’utilisation du connecteur réduira considérablement vos coûts de maintenance lorsque vous devez maintenir différentes intégrations avec différentes sources.

Le connecteur propose, entre autres, 3 fonctionnalités importantes :

  • Enregistrement de son application Mendix côté EventBridge
  • Action : création d’une configuration
  • Action : placement d’un événement

En plus de ce nouveau connecteur, nous allons également publier notre projet “Build Your Own AWS Connector”, qui vous permet de créer votre propre connecteur AWS avec le moins d’efforts possible, embarquant l’ensemble des choses nécessaires lors de la création d’un connecteur AWS. Donc si vous ne trouvez pas le connecteur requis pour votre besoin dans notre marketplace, vous pouvez maintenant utiliser ce modèle pour créer votre connecteur vous-même ! A ce jour, déjà 3 connecteurs communautaires ont été publiés et ont utilisé ce modèle. Il s’agit des connecteurs AppStream, EC2 et Location Service

Les composants supportés par nos partenaires

La marketplace Mendix est pleine de composants réutilisables de grande valeur qui vous permettent de construire des applications plus rapidement en les construisant à partir de fonctionnalités réutilisables existantes. Chaque composant réutilisé dans votre application vous permet de réduire le time-to-market et de réaliser des choses que vous n’auriez pas pu faire autrement. La communauté Mendix fournit actuellement plus de 1 000 composants réutilisables open-source, soutenus par la communauté, tels que des connecteurs, des services, des widgets, des modules et des modèles.

Afin d’augmenter le nombre de composants et de services réutilisables de grande valeur et de confiance, Mendix introduit un nouveau programme de partenariat formel pour la marketplace : le programme Mendix Component Partner. Ce programme crée une couche supplémentaire de support en plus du contenu open-source soutenu par la communauté. Nous permettons aux partenaires de proposer des composants de qualité supérieure dans des conditions qui garantissent un support complet aux clients :

  • Les partenaires sont libres de choisir l’une des licences open-source existantes ou d’opter pour une option commerciale et de présenter leur propre licence.
  • Les partenaires du programme s’engagent à fournir une assistance aux clients payants, dans le cadre d’un accord de niveau de service (SLA) (selon les termes spécifiés par le partenaire). Les clients peuvent s’appuyer sur cet accord de niveau de service pour obtenir une assistance de la part du partenaire en cas de problème. Les composants de la marketplace contiendront alors une référence au portail d’assistance ou à l’adresse électronique du partenaire.
  • Les clients peuvent profiter de ces nouveaux composants dans le cadre de conditions d’assistance formelles, ce qui atténue les problèmes de gouvernance.

Ces composants supportés par des partenaires sont faciles à trouver et à distinguer des composants open-source supportés par la communauté.

Comment trouver et utiliser ces composants ?

Ces composants peuvent être trouvés sur la page d’accueil de Marketplace sous le filtre “From our partners“. Les composants supportés par des partenaires ont un indicateur explicite, une couronne, qui permet de les distinguer visuellement du contenu soutenu par la communauté. La catégorie Support est alors positionnée à Partner et les partenaires peuvent choisir de faire figurer leur propre licence sur le descriptif.

Quels sont les composants déjà disponibles ?

Nous avons travaillé avec un 1er groupe de partenaires pour ajouter leurs composants dans l’écosystème Mendix. Qu’il s’agisse de widgets, de modules, de connecteurs ou de modèles complets, il existe d’excellents composants à réutiliser lors de la création de vos applications :

  • Bizzomate a créé un puissant widget Ultimate Scheduler en partenariat avec Bryntum. Mendix l’a inclus avec une licence d’essai.
  • Coherent a fourni un exemple de connecteur facile à utiliser montrant comment intégrer leur service Coherent Spark qui permet de transformer facilement des feuilles de calcul en services avec des API REST et d’y accéder dans votre application Mendix.
  • Un connecteur permettant d’exploiter Avola Decision comme moteur d’exécution de règles métier dans vos applications Mendix afin de simplifier la définition des décisions.
  • Le connecteur Blockbax, qui vous permet de développer des applications Mendix au-dessus de Blockbax pour tirer parti des données historiques et en temps réel de séries temporelles provenant de capteurs de machines.
  • Les appréciés modules de génération de documents et d’analyse de virus d’Appronto, qui sont restés trop longtemps des composants haut de gamme cachés à la vue de tous. Ils sont désormais visibles par tous.
  • Plusieurs modèles de TOCnDIX pour initier le développement d’applications pour des cas d’utilisation spécifiques :
  • Le module Database Scrambler de Bizzomate pour réutiliser en toute sécurité des données de production anonymisées dans des environnements de test/acceptation.
  • Le modèle de gestion des sinistres de Bonjoy pour compléter la suite Bonjoy Insurance.
  • Kinetech Cloud a publié un connecteur pour simplifier l’intégration avec le service de traitement des cartes de crédit de Fiserv, Fiserv cardpointe.
  • Le connecteur SmartUnifier d’Amorph System vous permet d’intégrer leur plateforme de connectivité et de DataOps pour l’intégration d’appareils, d’équipements, de périphériques et de capteurs fab, ainsi que de systèmes informatiques ERP, MES et basés sur le cloud.
  • Le connecteur Vantage d’ABBYY permet aux clients Mendix d’extraire des données de n’importe quel type de document, des factures et des contrats aux formulaires et aux emails, avec une précision et une vitesse inégalées.

Les nouveautés côté gestion cloud

  1. Une nouvelle Build API Mendix for Private Cloud, qui permet aux utilisateurs de construire, télécharger, supprimer et récupérer des packages de déploiement pour une application déployée dans un Cloud privé. Plus de détails dans la documentation.
  2. Amélioration des API de déploiement pour les Cloud privés : cela permet aux administrateurs de gérer les autorisations, les URLs opérationnelles, les plans de stockage et de bases de données, de gérer les cluster. Plus de détails dans la documentation.
  3. Les webhooks disponible en Beta pour le Cloud Public : ils permettent de notifier un système externes lorsqu’un événement de gestion Mendix est capturé afin d’aider à automatiser son processus CI/CD avec des outils comme GitLab, Jenkins, Azure etc. Pour le moment, les événements suivants sont disponibles : GiT Push et Package Upload,

Les améliorations Sécurité

  1. DNSSEC pour les domaines custo : le DNSSEC était déjà activé sur les domaines mendixcloud.com, mxapps.io & mendixcloud.net. Il est maintenant possible de le configurer pour les domaines personnalisés de vos applications gérées dans Mendix Cloud et Cloud Dedicated.
  2. HTTP security headers supplémentaires : avec Mendix Cloud, vous pouvez restreindre l’accès avec la vérification du certificat client afin de vous assurer que les utilisateurs ne peuvent accéder (à certaines parties) de votre application que s’ils fournissent un certificat client signé par une autorité de certification racine spécifique et/ou des autorités de certification (AC) intermédiaires. Ce mécanisme ne vérifie pas si le certificat client présenté par l’utilisateur est lié à ce dernier. Pour augmenter la sécurité, vous pouvez donc maintenant prendre une mesure supplémentaire en ajoutant de nouveaux en-têtes de requête HTTP avec des informations sur le certificat client : comme le numéro de série du certificat et/ou son empreinte.

Les nouveautés sur les Epics

Les Epics évoluent toujours activement avec :

  • La gestion des étiquettes (Label ou Tags) : vous pouvez maintenant les renommer, supprimer, choisir la couleur… depuis un menu de gestion accessible contextuellement.
  • Vous pouvez à présent créer des Stories directement et simplement depuis une Epic, plus besoin d’aller dans le détails d’une Epic.

Mais aussi

  • Git devient le seul gestionnaire de sources disponible pour les nouvelles applications débutées en 9.24. Si vous avez un besoin fort d’utilisation de SV, vous pouvez créer votre application en 9.23 puis ensuite la basculer en 9.24, mais gardez en tête qu’une mise à jour de votre application vers Mendix 10 nécessitera d’avoir migré vers du Git.
  • Côté Workflow nous avons modifié la façon dont est gérée une tâche en erreur lorsqu’il y a un problème d’assignation. Une fois en erreur, il est possible de choisir un utilisateur depuis la page d’administration du module Workflow Commons ; un retry s’apuiera sur cette information et non pas sur la ré-exécution de la configuration initialement paramétrée.
  • Les logs d’accès aux applications gérées sur le Cloud Mendix sont maintenant disponibles en self-service depuis le menu gauche Logs sur le portail developper, plus besoin d’ouvrir un ticket support pour les consulter.
  • Les performances d’accès aux différentes branches TeamServer ont également été améliorées.

Le mot de la fin

Vous retrouverez la release note de la version 9.24 dans la documentation Mendix, détaillant également un ensemble de petites améliorations et corrections. Et ici la liste de toutes les releases notes, vous n’avez plus qu’à choisir votre version 😉.

Retrouvez également le billet 🇬🇧 de cette release ou la liste de tous les billets 🇬🇧 concernant des releases.

Happy Mx-low-coding !

1 commentaire

  1. […] Avec le nouveau look rafraîchi de Studio Pro, nous rafraîchissons également vos applications avec un tout nouveau jeu d’icônes Atlas ! Ce nouveau jeu contient non seulement plus d’icônes, mais vous pouvez également choisir entre des versions remplies ou juste des contours. Et si cela ne suffit pas, vous pouvez toujours importer votre propre police d’icônes en créant une collection d’icônes, fonctionnalité introduite dans la version 9.24. […]

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.