Bonjour à tous,

Je réalise une requête qui liste pour chaque commande tous les lots de stocks qui y sont associés via les entrées de marchandises.

En somme : Commande <- Entrée de marchandise <- Lot

Je peux recevoir partiellement une commande. Mon problème c'est que je souhaite rajouter à ma liste pour chaque commande ayant des lots associés, une ligne vide correspondant au Reste à Livrer de la commande.

En gros je voudrais ça :
N° de Commande | Article | N° de Lot | Quantité du lot
CMD 01 | Article 01 | Lot 01 | 2
CMD 01 | Article 01 | Lot 02 | 3
CMD 01 | Article 01 | NULL | NULL ou 0

C'est cette dernière ligne qui me manque.

Pour l'instant voici ma requête :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
SELECT 
t0.DocNum AS 'N° CMD', --
t1.ItemCode
t1.Dscription AS 'Libellé (ou service)',
ISNULL(t4.BatchNum, '') AS 'Lot',
 
 
FROM [base].dbo.OPOR t0 --Table des commandes
INNER JOIN [cryospace_test5].dbo.POR1 t1 ON --Table des lignes de commandes
t0.docentry = t1.docentry
 
LEFT JOIN [base].dbo.PDN1 t2 ON --Table des lignes d'entrée de marchandise
t2.baseentry=t1.docentry and t2.baseline=t1.linenum
 
LEFT JOIN [base].dbo.OPDN t3 ON --Table des entrée de marchandise 
t3.docentry = t2.docentry
 
LEFT JOIN [base].dbo.IBT1 t4 ON --Table des lots
t2.docentry = t4.baseentry and t4.basetype=20
 
WHERE t0.Docnum < 800000 
AND t0.DocStatus <> 'C'
AND t1.LineStatus <>'C'
 
Order by 1
Peut être que la réponse est évidente mais impossible de la trouver.
Merci d'avance pour vos indications !