Bonjour,
J'ai un jeu de données contenant les mouvements articles de mon ERP.
Voici approximativement la structure de la table :
ID_MVT, ID_Ligne, No_Art, Date Mvt...
La clé de cette table est ID_MVT, ID_Ligne. (Auto-incrémentale).
Le lien avec cette "table" (un fichier dans les faits...) se fait via un connecteur ODBC.
La table contient à ce jour plusieurs millions d'enregistrements, nous filtrons donc uniquement les mouvements par rapport à une date de mouvement (2 années). C'est un peu hasardeux puisqu'il est possible qu'il y ait des enregistrements sur d'anciens mouvements que nous ne récupérons alors pas.
L'idée est de limiter le nombre de lignes que nous traitons à celles non encore intégrées dans l'entrepôt afin de gagner principalement en temps de traitement :
- J'ai créé une table dans l'entr SQL contenant les différents couples ID_MVT/MAX(ID_Ligne).
Si je joins la source ODBC avec cette nouvelle table, je peux via une simple jointure ne récupérer que les derniers enregistrements. (Lien sur ID_MVT et ne récupérer que les données pour lesquelles ID_Ligne > MAX(ID_Ligne).
J'aurais en quelque sorte besoin d'avoir une source de données multi-source.
Autant sur une/des bases de données SQL cela ne me pose pas de problème mais avec ce lien ODBC je ne sais plus trop vers où me tourner.
Il y a trop de mouvements pour se permettre de réaliser une boucle ForEach à partir d'une variable Object.
Je ne souhaite pas utiliser de composant de jointure dans mon package, je veux vraiment restreindre le nombre de lignes de données dans la source.
Auriez-vous des idées?
Merci![]()
Partager