Bonjour, dans une base de donnée Oracle j'ai une table de Stock (crée par mon éditeur ERP) qui se compose des champas suivants :
sto_date = Date de création du stock
sto_codart = Code Article
sto_lot = N° de lot
sto_tot_pds = Poids Total
sto_dis_pds = POids Disponible.
Noter que : 1 ligne est crée pour chaque mouvement d'article (entrée, consommation)
Voici pour un article en particulier un rendu de la table avec cette requête :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 select sto_date,sto_codart,sto_lot,sum(sto_tot_pds) POIDS_TOT,sum(sto_dis_pds) POIDS_DISPO from gcstock_ent where sto_codart = '736305VPFSF' --and sto_dis_pds > 0 group by sto_codart,sto_lot,sto_date order by sto_lot;
Entourer en vert on voit bien un exemple de mouvement sur le lot 1509. Une entrée de 136 Kg le 22/04/2021
et une consommation de la totalité du lot (soit 136Kg) le 03/06/2021 = Stock à 0.
Pour certains autres lot comme le 5320 on ne voit qu'une ligne d'entrée et pas de consommation.
je souhaite modifier la requête ci-dessus pour n'afficher que la date maximum du lot pour ainsi ne voir que le "vrai" stock de cet article. J'ai tenté un exemple avec un lot :
Mais cela ne me retourne pas le résultat escompté :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 select max(sto_date) DATE0,sto_lot,sto_tot_pds,sto_dis_pds from gcstock_ent where sto_lot = 1509 and sto_depot = '708' group by sto_lot,sto_tot_pds,sto_dis_pds;
Voici ce que je veux : en rouge les lignes qui ne doivent plus apparaitrent
Merci d'avance de votre aide
Partager