Bonjour, Je me suis retrouvé dans une situation similaire il y a deux ans : plusieurs applications qui utilisaient des données en commun, provenant d'un PGI. En premier lieu, j'ai utilisé une analyse ( et donc une "base" HF ) par application. Gros avantage, la modification de l'analyse d'une application n'impliquait pas de recompiler l'ensemble de ces application. Inconvenient, les infos étaient dupliquées, et je devait maintenir autant de batch de communication avec le PGI que d'application.
Nous avons refondu tout celà, et je suis passé à une seule base de donnée ( MaxDB ), avec une connection ODBC. Dans la base de donnée, un utilisateur est créé pour chaque application, et il est propriétaire des tables de cette application. Par contre il est possible de mettre en commun certaines table entre plusieurs applications. Enfin, je n'ai aucune analyse déclarée dans les applications.
De cette façon, j'ai tout les avantages: 1. La modification du schéma d'une table n'implique pas la recompilation des applications qui l'utilisent, tant que les colonnes ne sont pas renommées/supprimées 2. Les informations communes entre les applications ne sont pas dupliquées 3. Une seule "interface" de communication avec notre PGI 4. Avec SqlStudio ( l'outil de MaxDB ), lorsque je travaille sur une application, je ne vois que les tables utilisées par cette application, même si elles "appartiennent" à une autre. 5. Je peux définir des contraintes d'intégrité référentielle entre des tables de différentes applications.
Voici un exemple concret: J'ai une application nommée Torpedo, qui possède toutes les données qui proviennent du PGI ( base article/fournisseur/client, prix d'achat/de revient/de vente, etc ), ainsi que quelques autres. J'ai une application d'homologation de produit, qui utilise ses propres tables pour les dossiers, ainsi que quelques tables de Torpedo ( Article, fournisseur ) J'ai également une application de balisage pour les magasin, qui utilise quelques tables de Torpedo ( les articles ), mais n'en possède aucune ( pour l'instant ) J'ai enfin une application de gestion des NPAI, qui possède quelques table, et qui utilise la base des clients de Torpedo.
Frédéric. |