miércoles, 4 de septiembre de 2019

Compras - Ultimo precio de compra

Para conocer el ultimo precio de compra de un articulo o servicio posiblemente habrán muchas maneras, la mas fácil es la siguiente consulta hacia la tabla de los Datos Maestros de Artículo: 

SELECT T1.[LastPurPrc] FROM OITM T1 Where T1.ItemCode = 'XxXxX'

Pero la consulta anterior no nos permite saber cuando fue la fecha de esa ultima compra, ni tampoco quien fue el proveedor por poner solo unos ejemplos, para estos casos les dejo la siguiente consulta.

select distinct * from (
select b.DocDate, b.CardCode, b.CardName, a.ItemCode, a.Dscription, a.Price from PCH1 a
inner join OPCH b on a.DocEntry = b.DocEntry
where a.ItemCode = 'XxXxX'
and b.CANCELED = 'N'
) tabla
inner join (select e.ItemCode , MAX(f.docdate) docdate from PCH1 e
inner join OPCH f on e.DocEntry = f.DocEntry and e.ItemCode = 'XxXxX') and f.CANCELED = 'N' group by e.ItemCode) tabla2
on tabla.ItemCode = tabla2.ItemCode and tabla.DocDate = tabla2.docdate
order by  tabla.ItemCode, tabla.docdate


Nota: Si este Item se repite, es por que en la misma fecha hubo compras con diferentes precios o diferentes proveedores.


Espero les sirva, saludos!.

No hay comentarios:

Publicar un comentario