ORM_CSHX2

Le pont entre
le code et la base de
données

ORM_CSHX2 est la couche technique qui fait le lien entre les objets WLangage de l'application et les tables MySQL, MariaDB et PostgreSQL. Il évite d'écrire du SQL à la main pour les opérations courantes, tout en restant flexible pour les cas complexes.

MySQL · MariaDB · PostgreSQL WinDev · WLangage MongoDB
Pourquoi cet ORM existe

Le problème qu'il résout

Sans ORM, chaque accès à la base de données demande d'écrire manuellement les requêtes SQL, de gérer les erreurs, les transactions et les verrous. ORM_CSHX2 centralise tout ça.

Sans ORM_CSHX2
  • Écrire la requête SQL à la main pour chaque opération
  • Gérer les guillemets, les types, les valeurs nulles manuellement
  • Ouvrir et fermer les transactions partout dans le code
  • Implémenter les verrous de cohérence dans chaque fenêtre
  • Re-coder la logique de multilingue sur chaque table concernée
  • Dupliquer la gestion des erreurs SQL dans 50 endroits différents
Avec ORM_CSHX2
  • Un appel à mth_Enregistrer() pour INSERT ou UPDATE
  • Les valeurs sont typées et échappées automatiquement
  • La transaction est gérée en interne, invisible pour l'appelant
  • Les verrous applicatifs sont intégrés au chargement
  • Les traductions se sauvegardent avec l'objet, sans code supplémentaire
  • La gestion des erreurs est centralisée et uniforme
Référence API

L'API publique en un coup d'œil

ORM_CSHX2 expose une API publique organisée en catégories fonctionnelles. Le sommaire donne accès direct à toutes les procédures globales et méthodes de classe documentées.

Voir le sommaire complet
Chargement, persistance, transactions, verrouillage, recherche, agrégats, traductions, utilitaires SQL, configuration, administration BDD, diagnostic, cycle de vie.
Sommaire →
1 classe
33 procédures
13 catégories
3 providers SQL
3 modes MetaData
Architecture

Place dans l'application

ORM_CSHX2 est la fondation sur laquelle reposent toutes les classes métier. Les fenêtres WinDev n'interagissent qu'avec les classes — jamais directement avec SQL.

Classe métier
hérite de
ORM_CSHX2
MySQL / MariaDB
PostgreSQL
MongoDB

Les flèches représentent les appels — ORM_CSHX2 est la seule couche qui touche aux bases de données.

À retenir

Ce que ça change au quotidien

Développement plus rapide

Une nouvelle fenêtre de saisie se connecte à la base en quelques lignes. Plus besoin de coder les requêtes INSERT/UPDATE/SELECT pour chaque table.

🛡️
Moins de bugs silencieux

L'échappement SQL, la gestion des NULL, les transactions et les verrous sont testés une seule fois dans l'ORM — pas de risque de les oublier dans une fenêtre.

🔄
Multi-base sans effort

Le même code WLangage fonctionne sur MySQL, MariaDB et PostgreSQL. L'ORM adapte automatiquement la syntaxe SQL selon la base connectée.

📋
Traçabilité complète

Chaque modification est archivée dans MongoDB avec l'horodatage, l'utilisateur et les valeurs avant/après. L'historique est disponible sans rien coder de plus.

🚀
Import en masse optimisé

Les synchros quotidiennes qui traitent des milliers de lignes utilisent le mode batch : les INSERT sont groupés par lots configurables pour minimiser les allers-retours avec la base.

🏗️
Base toujours à jour

Ajouter une colonne dans WinDev suffit : au prochain démarrage, ORM_CSHX2 détecte la différence et crée la colonne automatiquement en production.

Guides & Ressources

Pour aller plus loin