bonjour,
jJe vous explique mon problème, j'ai deux tables: T1 et T2
Dans T1, il y a différents champs: emplacement, article, lot, quantité, numéro BonLivraison, ligneBonLivraison.
Dans T2, il y a emplacement, article, lot, quantité, numéroBonlivraison,lignebonlivraison.
T1 correspond a des ordres de rangement des article qu'il contient.
T2 correspond au rangements effectués. J'ai besoin de récuperer pour un :
numéroBonlivrainson,ligneBonlivraison, article, lot donné, l'emplacement de T1, la quantité restant a ranger(quantité de T1 pour l'emplacement -somme des quantités de T2 pour l'emplacement, article, lot, numéroBL, numéro ligne donné) tel que la somme des quantités de T2 soit inférieure a la quantité de T1 pour l'article en cours.
La requette:
select emplacement, article, lot from T1 S where S.quantié>(select SUM(quantité) from T2 where numéroBL='REC-ASN0300037' AND ligneBonLivraison=1000 AND emplacement=S.emplacement) AND numéroBL='REC-ASN0300037' AND ligneBonLivraison=1000
me fournit l'emplacement dans lequel l'utilisateur doit ranger l'article en question et quelle est la quantité totale a ranger dans cet emplacement.
Ce que je voudrais faire c'est récupérer en meme temps la quantité restant a ranger(quantité précedent moins somme des quantités déjà rangés somme des lignes de T2 avec les critères adéquats.
Ce qui donnerai une requette du style:
select S.emplacement, S.article, S.lot, Y.SUM(quantité) from T1 S, T2 Y where S.quantité>(select SUM(quantité) from T2 where numéroBL='REC-ASN0300037' AND ligneBonlivraison=1000 AND LOC_0=S.LOC_0) AND S.numeroBL='REC-ASN0300037' AND S.ligneBonlivraison=1000 AND Y.numeroBL_0='REC-ASN0300037' AND Y.ligneBonlivraison=1000
ce qui ne fonctionne pas bien évidemment.
Par avance merci pour votre aide.
Partager