01 — Plateforme

Architecture & état du connecteur Sage

Architecture lecture seule, entités synchronisées, qualité des données.

Lecture seule
Simulation (mock Sage 100 / X3)Lecture seule — Sage reste le référentiel ErpReadAdapter · 0 méthode d'écriture
Entités synchronisées
0
8 toutes les 2 h
Lignes synchronisées
0
projection Sage complète
Dernière synchro complète
30 sept. · 02:10
mercredi 30 septembre 2026
Fréquence
Nuit + 2 h
référentiels la nuit, documents en continu
Anomalies de qualité
0
score 77 / 100 · 1 entité à surveiller
Latence moyenne
0 ms
par requête SELECT

Architecture du connecteur

Flux de données en lecture seule, de Sage aux cockpits

SOURCE ERPACCÈSSTOCKAGEINTELLIGENCERESTITUTIONSELECTDELTAKPISIGNAUXRENDURÉFÉRENTIELSAGESage 100 · SQL ServerSage X3 · API RESTGestion co. + ComptaCADENASCONNECTEUR ROIZEMX · lecture seuleSELECT / GET onlydb_datareaderATLANTIC AIDATA HUBEntrepôt analytiqueETL incrémentalNuit + 2 hINTELLIGENCEAI CORERegistre 72 KPIMoteur déterministeRègles & seuilsATLANTIC AI14 AGENTSVentes · Stocks · MargeRisques · Copilote…Détection & reco.RESTITUTIONCOCKPITSDirection · MétiersDaily BriefLecture seuleAtlantic Foods · données & restitutionCouche IA · Atlantic AI (IZEMX)Flux de données (lecture)

Entités synchronisées

Projection des tables Sage dans l'entrepôt analytique

Entités synchronisées depuis Sage
Mouvements de stockF_DOCLIGNE (mouvements)105 40530 sept. 2026 · 02:10Nuit Synchronisé4 100 ms
Lignes de documentsF_DOCLIGNE99 57530 sept. 2026 · 16:00Toutes les 2 h Synchronisé2 850 ms
Bons de livraisonF_DOCENTETE (DO_Type = 3)15 66830 sept. 2026 · 16:00Toutes les 2 h Synchronisé690 ms
Factures & avoirsF_DOCENTETE (DO_Type = 6/7)8 73730 sept. 2026 · 16:00Toutes les 2 h Synchronisé760 ms
Commandes clientsF_DOCENTETE (DO_Type = 1)8 23130 sept. 2026 · 16:00Toutes les 2 h Synchronisé940 ms
Règlements & lettrageF_REGLECH · F_DOCREGL7 16830 sept. 2026 · 16:00Toutes les 2 h Synchronisé520 ms
Lots & datesF_LOTSERIE2 52230 sept. 2026 · 16:00Toutes les 2 h Synchronisé380 ms
Taux de changeF_DEVISE · Bank Al-Maghrib1 09630 sept. 2026 · 02:10Quotidien Synchronisé30 ms
Balance âgéeF_ECRITUREC (341xxx)1 06330 sept. 2026 · 16:00Toutes les 2 h Synchronisé260 ms
RetoursF_DOCENTETE (DO_Type = 5)67930 sept. 2026 · 02:10Nuit Synchronisé95 ms
Objectifs commerciauxFichier Excel (SharePoint)66630 sept. 2026 · 07:30Hebdomadaire Synchronisé60 ms
Commandes fournisseursF_DOCENTETE (DO_Type = 11)59630 sept. 2026 · 02:10Nuit Synchronisé180 ms
Réceptions & frais d'approcheF_DOCENTETE (DO_Type = 13) · F_DOCFRAIS56330 sept. 2026 · 02:10Nuit À surveiller320 ms
Tarifs & accordsF_TARIF · F_ARTCLIENT32130 sept. 2026 · 02:10Nuit Synchronisé160 ms
ArticlesF_ARTICLE · F_FAMILLE11830 sept. 2026 · 02:10Nuit Synchronisé210 ms
Stocks par dépôtF_ARTSTOCK · F_DEPOT11830 sept. 2026 · 16:00Toutes les 2 h Synchronisé140 ms
ClientsF_COMPTET (CT_Type = 0)9030 sept. 2026 · 02:10Nuit Synchronisé85 ms
Grand livreF_ECRITUREC9030 sept. 2026 · 02:10Nuit Synchronisé1 200 ms
FournisseursF_COMPTET (CT_Type = 1)2630 sept. 2026 · 02:10Nuit Synchronisé42 ms
Promotions enseignesFichier Excel (SharePoint)2330 sept. 2026 · 07:30Hebdomadaire Synchronisé45 ms
1–20 sur 20
1 / 1

Source : journal de synchronisation du connecteur · tables F_* indiquées par entité

Volumétrie par entité

12 entités les plus volumineuses, lignes synchronisées

Source : journal de synchronisation du connecteur

Latence par entité

Durée de la dernière requête SELECT, en millisecondes

Seuils : orange au-delà de 1 000 ms, rouge au-delà de 2 500 ms

7 anomalies · score 77 / 100

Qualité des données Sage

Contrôles exécutés à chaque synchronisation. Les anomalies critiques dégradent la fiabilité des analyses canal / dates limites ; elles sont à corriger dans Sage, jamais depuis Atlantic AI.

  • Critique2 × 6 pts
  • Avertissement3 × 3 pts
  • Information2 × 1 pts

Score = 100 − Σ pondérations · 55 lignes concernées au total

  • LOT-NO-DATECritique

    Lots sans date limite

    F_LOTSERIE12 lignes
  • CLI-NO-CANALCritique

    Clients sans canal GMS / CHR (champ statistique vide)

    F_COMPTET4 lignes
  • REC-NO-FRAISAvertissement

    Réceptions sans frais d'approche rattachés

    F_DOCFRAIS9 lignes
  • ART-NO-BRANDAvertissement

    Articles sans marque renseignée (famille vide)

    F_ARTICLE7 lignes
  • DUP-CLIAvertissement

    Doublons clients probables (même ICE / adresse)

    F_COMPTET3 lignes
  • DOC-NO-REPInformation

    Commandes sans commercial affecté

    F_DOCENTETE18 lignes
  • ITEM-NO-PCBInformation

    Articles sans PCB / conditionnement

    F_ARTICLE2 lignes
Garantie technique

Garantie lecture seule

Six verrous indépendants, du type TypeScript au compte SQL

  1. 01Interface ErpReadAdapter sans méthode d'écriture

    Le contrat ne déclare que des lectures (get*) : ni create, ni update, ni delete.

    src/lib/erp/adapter.ts
  2. 02Type AssertReadOnly<T>

    Garde de type : toute implémentation exposant un nom create*/update*/delete*/post*/put*/patch*/remove*/save* est rejetée à la compilation.

    src/lib/erp/adapter.ts
  3. 03Client SQL select() refusant tout verbe non-SELECT

    La chaîne marquée SelectStatement n'est constructible que par select(), qui rejette tout ce qui ne commence pas par SELECT ou WITH.

    src/lib/erp/sage100/ReadOnlyDb.ts
  4. 04Client HTTP GET-only

    Le client Sage X3 ne possède qu'une méthode get() ; aucun POST/PUT/PATCH/DELETE n'existe sur le type.

    src/lib/erp/sagex3/SageX3ApiAdapter.ts
  5. 05Compte SQL db_datareader

    Le connecteur Sage 100 s'authentifie avec un compte doté uniquement du rôle db_datareader (ou de droits SELECT sur des vues dédiées).

    src/lib/erp/sage100/ReadOnlyDb.ts
  6. 06Aucun formulaire d'écriture dans l'UI

    Les cockpits ne contiennent ni saisie, ni validation, ni bouton d'action vers Sage ; les statuts de signaux restent locaux (démo).

    src/app/**/page.tsx · src/components/cockpits/*