Inventario con números de serie

Hola, excelente día a todos!
Tengo una consulta, espero que puedan ayudarme. :pray:
Necesito obtener el inventario de los artículos que están en stock, donde aparezca el almacén de los artículos, el código del articulo, el nombre del articulo y los números de serie.
Tengo el siguiente Query y funciona bien, sólo que me duplica los números de serie de los artículos que se han hecho por transferencia de stock, es decir, que se han transferido de un almacén a otro.

SELECT DISTINCT T0.[ItemCode], T2.[ItemName], T4.[WhsCode], T3.[WhsName], T1.[IntrSerial],
ISNULL((SELECT SUM(A.Quantity) FROM ITL1 A INNER JOIN OITL B ON B.LogEntry=A.LogEntry WHERE A.ItemCode=T0.ItemCode AND A.SysNumber=T0.SysSerial AND B.DocDate<='[%0]'),0)'Stock'
FROM SRI1 T0  
INNER JOIN OSRI T1 ON T0.SysSerial = T1.SysSerial AND T0.ItemCode=T1.ItemCode
INNER JOIN OITM T2 ON T0.ItemCode = T2.ItemCode 
INNER JOIN OWHS T3 ON T0.WhsCode = T3.WhsCode
INNER JOIN OITW T4 ON T0.ItemCode = T4.ItemCode AND T0.WhsCode = T4.WhsCode AND T4.OnHand > 0 
WHERE ISNULL((SELECT SUM(A.Quantity) FROM ITL1 A INNER JOIN OITL B ON B.LogEntry=A.LogEntry WHERE A.ItemCode=T0.ItemCode AND A.SysNumber=T0.SysSerial AND B.DocDate<='[%0]'),0)>0
ORDER BY 1,5

Ojalá puedan ayudarme a corregirlo, gracias!

Hola Leticia
Se me ocurre valides estos dos campos a ver cuál puedas filtrar en tu consulta.
Campo “Direction” en la tabla SRI1.
Campo “StockEff” de la tabla OITL.