
IA — Vecteur 4D
Donnez du sens à vos données, directement
Commencez à créer des expériences plus smart et plus réactives en stockant des vecteurs prêts pour l'IA directement dans le nouvel objet 4D.Vector. Il ne s'agit pas seulement de chiffres, mais ce sont des représentations compressées de sens, conçues pour être comparées. Et cela fait toute la différence.
Au lieu de rechercher des mots exacts, répondez à ce que les utilisateurs veulent réellement dire. Appliquez la politique RH appropriée lorsque quelqu'un tape « départ d'un employé ». Affichez le bon contrat fournisseur à partir d'une requête vague telle que « service d'impression ». Détectez-les quasi-doublons dans des listes de produits incohérentes, même lorsque la formulation diffère considérablement.
Tout cela est possible grâce au nouvel objet 4D.Vector qui apporte à votre application des opérations intégrées telles que la similarité cosinus, le produit scalaire et la distance euclidienne. Celles-ci vous permettent de classer, filtrer et regrouper les enregistrements par similarité conceptuelle, et pas seulement par correspondance de chaînes.
Et comme cette classe est à la fois économe en mémoire et compatible avec les autres classes, elle s'intègre directement dans votre schéma. Ajoutez-la aux champs typés, effectuez des comparaisons locales rapides et éliminez complètement la couche intermédiaire.

4D AI KIT
Générer des vecteurs à partir du langage naturel en un seul appel de méthode
Commencez par les mots que vos utilisateurs saisissent déjà (requêtes, descriptions, notes, journaux de logs) et transformez-les en quelque chose que votre application peut analyser. Avec un seul appel de méthode, OpenAIEmbeddingsAPI.create(), générez des vecteurs sémantiques à partir de texte brut.
Ce ne sont pas des chaînes. C'est du sens, encodé. Stockez-les dans les champs 4D.Vector et utilisez-les immédiatement : classez les résultats par intention, faites correspondre les éléments associés, classez le contexte, le tout à partir de votre code 4D.
Aucune configuration supplémentaire n'est requise. Aucune API nécessaire. Il suffit de se connecter à n'importe quel service d'IA compatible basé sur le cloud, tel qu'OpenAI— ou localement utiliser des modèles IA comme Ollama — et commencer à utiliser la même infrastructure IA qui alimente les produits phares d'aujourd'hui.

ORDA
Ajoutez la prise en compte du cycle de vie à votre modèle de données
Réagissez aux changements avant qu'ils n'atteignent la base de données. Grâce au nouvel événement onTouch() et à la prise en charge des constructeurs d'entités, votre logique métier peut désormais s'exécuter dès qu'une entité est créée, chargée ou modifiée en mémoire.
Cela signifie que vous pouvez initialiser des valeurs dès qu'une entité est instanciée, appliquer des règles de validation personnalisées lorsque les données sont consultées et ajuster automatiquement les champs associés en temps réel. Vous n'attendez pas les mesures de protection, vous agissez dès l'interaction.
Utilisez-le pour remplir automatiquement des champs, appliquer des horodatages, vérifier les autorisations ou déclencher une logique dépendante au moment précis où les données entrent ou sont modifiées dans le système.
Et comme ces hooks de cycle de vie s'exécutent par défaut côté serveur (avec une prise en charge côté client en option), vous bénéficiez d'un contrôle centralisé sur un comportement à la fois évolutif et sécurisé

BASE DE DONNEES
Lier les classes aux champs d'objet et générer des UUID évolutifs
Ne vous contentez pas de stocker des données dans votre structure — utilisez-la pour appliquer votre logique. Attribuez une classe directement à un champ objet dans l'éditeur de structure, et 4D conserve sa forme à la fois lors de l'exécution et lors de la compilation.
Cela vous permet de bénéficier de la saisie semi-automatique au niveau des propriétés, de la vérification syntaxique et de la validation des données directement à partir de votre schéma.
Ajoutez la prise en charge des UUID en version 7 et vous obtiendrez des identifiants pouvant être triés chronologiquement, horodatés et prêts à être utilisés dans des systèmes distribués. Une fois ces deux éléments en place, votre modèle de données devient prévisible, évolutif et autonome.

INTERFACE UTILISATEUR
Créez des formulaires qui répondent à une logique, et non à des valeurs codées en dur
Libérez-vous des contraintes rigides. Avec OBJECT SET DATA SOURCE FORMULA, tout objet de formulaire peut désormais être lié à une formule — en fonction du contexte, d'un calcul ou d'une condition.
Associez cela à des expressions de liste déroulante telles que l'expression des éléments sélectionnés tels que lk selected items expression, et vous obtenez des interfaces qui réagissent en temps réel, sans déclencheurs manuels ni liens fixes
Le résultat ? Des interfaces utilisateur plus propres et plus dynamiques qui répondent à la logique, et non à des hypothèses codées en dur.

Gestion RESEAU
Gérez les communications en temps réel avec un contrôle total sur les protocoles
Envoyez et recevez des paquets sans connexion à l'aide de la nouvelle classe 4D.UDPSocket. Surveillez les événements à l'aide de onData, suivez les erreurs avec onError et contrôlez l'activité via 4DTCPUDPLog.txt. UDP est désormais entièrement intégré, piloté par les événements et idéal pour la signalisation des périphériques, la messagerie en temps réel ou les protocoles internes à faible surcharge.
Et grâce à la nouvelle propriété .connectionTimeout dans TCPConnection, vous pouvez définir des limites précises pour le temps de réponse. Mettez fin aux requêtes lentes, maintenez la réactivité de l'interface utilisateur et gérez les connexions peu fiables en toute confiance.
Ensemble, ces outils vous offrent un contrôle précis sur les protocoles sans état et basés sur la connexion — permettant ainsi une communication rapide et résiliente à tous les niveaux de votre application.

GESTIONNAIRE DE DEPENDANCES
Résoudre et charger automatiquement les chaines de composants
Ajoutez des composants et laissez 4D gérer automatiquement leurs dépendances. Le gestionnaire de composants mis à jour effectue désormais une recherche récursive, chargeant tous les sous-composants requis dans le bon ordre et bloquant les références circulaires avant qu'elles ne commencent à poser problème.
Assurez la compatibilité des versions, résolvez l'ordre de chargement et affichez tous les liens de l'arborescence des dépendances —déclarés ou hérités— grâce à l'interface mise à jour.
Conservez une architecture modulaire, des builds prévisibles et un code axé sur le comportement plutôt que sur la configuration.

4D NETKIT
Gérez les calendriers Microsoft 365 et Google depuis votre application
Créez, modifiez ou supprimez des événements de calendrier avec une prise en charge complète des participants, des récurrences, des notifications et des liens de réunion à l'aide des classes mises à jour cs.NetKit.Office365.calendar et cs.NetKit.Google.calendar.
Tout passe par l'authentification OAuth2 et vous offre un contrôle précis du cycle de vie des événements depuis votre application — sans nécessiter de middleware

SECURITE
Empêchez toute logique indésirable d'entrer dans votre application
Empêchez les comportements injectés sans interrompre votre flux de travail. Lorsque vous collez une formule provenant d'une source externe, 4D insère désormais soit la source brute (si elle n'est pas évaluée), soit le résultat évalué, mais jamais les deux.
Cela permet de se prémunir contre l'introduction clandestine de logique cachée dans des champs tels que 4D Write Pro ou les entrées multi-styles.
La protection est discrète, mais son impact est évident : une expérience d'édition plus fiable et plus sécurisée.