/
Nouveau moteur d'accès SQL (V10.3)

Nouveau moteur d'accès SQL (V10.3)

Les couches d'accès aux données de l'ERP se font historiquement via des modules compilés xxPMFICSQL.dhop.

Ce module xxPMFICSQL.dhop avait pour but de rendre accessible facilement les opérations SQL (insert, update, reader, select, delete,…) pour chaque recordSql en y intégrant des couches plus basses “d'action” comme les appels d'ouvertures pour la surcharge, l'inter-compagnie, le positionnement des champs CEx, le positionnement des champs USERCR, USERCRDH, USERMO, USERMODH.

Toutes les fonctions/procédures de ces modules nécessitaient d'écrire le code diva qui faisait ces actions.
La nouveauté de la version X.3 réside dans le fait que l'ensemble des “actions” a été mutualisé dans un nouveau module A5PMFICSQL000.dhop. Tous les modules xxPMFICSQL continuent d'être utilisés comme avant.

Les modules xxPMFICSQL ne contiennent plus que les fonctions SEEK_xx et POSITIONNER_CE_xx (et quelques fonctions annexes existantes), et un mécanisme d'alias permet d'exposer toutes les autres fonctions du moteur mutualisé.

De plus, la déclaration des record SQL est également mise en commun dans ce xxTCFICSQL.dhsp, permettant de d'utiliser l'intellisense en trouvant l'entité à manipuler sans se soucier du record qui le contient.
Exemple:
Le define de déclaration record sql permet de simplifier l'écriture du code diva en utilisant directement le define:

Le define de l'instruction SQL est la même qu'avant, mais passe directement au moteur.
Cela implique principalement :

  • Le nom du record sql impose le nom de la déclaration et des fonctions d'accès

  • Le nom de la table impose le nom de la fonction de positionnement des CE

NOTE:

  • Certains renommages de record sql ont été nécessaires pour respecter les règles du moteur SQL, notamment MORSMOBI.dhsq en MORSPCE.dhsq et A5RSMOBI.dhsq en MORSMOBI.dhsq

  • Le RCPMTREFICSQL.dhop a été fusionné avec le RCPMFICSQL.dhop

  • Il existe certaines particularités qui conservent des fonctions dans le xxPMFICSQL, notamment en Affaire pour les actions sur l'arbre intervalaire ou en Comptabilité pour traiter les champs UserCrOri.