Skip to Content
Author's profile photo Former Member

Hola buen dia , solicito ayuda , alguien tiene algun query que muestre la ultima factura o venta de un producto

Hola buen dia ,  solicito ayuda ,  alguien tiene algun query que muestre la ultima factura o venta de un producto

Assigned Tags

      7 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member

      No te es suficiente con el informe de auditoria de Stock?? ahi vienen los moviemientos de los artículos

      Author's profile photo Former Member
      Former Member
      Blog Post Author

      Hola Christian  , quisiera a nivel consulta  algo asi

      Clave , descripción , precio, cantidad, fecha de Ultima venta

      esto para saber la rotacion de productos

      estoy por sacarlo ,   lo publico en cuanto lo tenga

      si hay algun aporte lo agradecería

      saludos

      Author's profile photo Former Member
      Former Member

      No sé si esto te servirá. Reporta la factura, importe, IVA, total pagado... tipificando la fecha en el intervalo que tu quieras.

      SELECT T0.[DocDate], T0.[DocNum],T0.[CardName],  T0.[CardCode],

      (T0.[DocTotal]-T0.[VatSum]) AS SubTotal,

      T0.[VatSum] AS IVA, T0.[DocTotal], T0.[PaidToDate],

        (T0.[DocTotal]-T0.[PaidToDate]) AS SALDO

      FROM OINV T0  INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry

      WHERE T0.[DocDate] between [%1] and [%2] and  T0.[CANCELED]  = 'N'

      GROUP BY T0.[DocDate], T0.[DocNum], T0.[CardName], T0.[CardCode], T0.[VatSum], T0.[PaidToDate],T0.[DocTotal]

      UNION ALL

      SELECT T0.[DocDate], T0.[DocNum],T0.[CardName],  T0.[CardCode],

      (T0.[DocTotal]-T0.[VatSum])*-1 AS SubTotal,

      T0.[VatSum]*-1 AS IVA, T0.[DocTotal]*-1, T0.[PaidToDate]*-1,

        (T0.[DocTotal]-T0.[PaidToDate])*-1  AS SALDO

      FROM ORIN T0  INNER JOIN RIN1 T1 ON T0.DocEntry = T1.DocEntry

      WHERE T0.[DocDate] between [%1] and [%2] and  T0.[CANCELED]  = 'N'

      GROUP BY T0.[DocDate], T0.[DocNum], T0.[CardName], T0.[CardCode], T0.[VatSum], T0.[PaidToDate],T0.[DocTotal]

      Author's profile photo Former Member
      Former Member
      Blog Post Author

      Hola pablo ,  esta muy bien tu query pero no es el dado que necesito

      el dato que es importante para mi es  los productos que se mueven poco , para esto necesito la ultima venta    

      es decir   sacar un rango de fechas y que me regrese

      fecha factura       producto                        cantidad

      01/01/14              Lavadora MGM             3 Pzs

      15/07/14               Micro ondas                 1 pza

      con esto veo el comportamiento de ventas

      Author's profile photo Former Member
      Former Member

      Hola Hector,

      No has intentado con el informe de Últimos Precios?

      Si no te sirve,  intenta con el siguiente query:

      SELECT TA.Articulo, JC.DocNum, sum(PA.Quantity) Cantidad, max(JC.DocDate) Fecha

      From OINV JC inner join

      (Select  T1.ItemCode Articulo, max(T0.DocEntry) DocEntry

      From INV1 T1

      Group by T1.ItemCode) TA on JC.DocEntry = TA.DocEntry

      Inner join INV1  PA on JC. DocEntry = PA.DocEntry

      Group by TA.Articulo, JC.DocNum

      Es información básica,  tendrías que agregarle más columnas si necesitas mas datos e indicar las funciones donde sea necesario (sum, count, avg, etc).

      Espero te sirva.

      Saludos,

      JC.

      Author's profile photo Eloy Ploche
      Eloy Ploche

      Hola Hector, nosotros utilizamos este query para verificar los items que se mueven poco, te muestra el item, descripcion, stock, ultima compra, cantidad de ultima compra. Tendras que modificar algun detalle para que funcione en tu estructura.

      SELECT distinct T0.[ItemCode] as Articulo, T0.[ItemName] as Descripcion, T0.[OnHand] as Stock, T0.[AvgPrice] as Costo, (T0.[OnHand]*T0.[AvgPrice]) as Total, T0.[LastPurDat] as Ultima_Fecha_Compra , ((select top 1 quantity from pdn1 where pdn1.itemcode=T0.Itemcode order by pdn1.shipdate desc)) as Ultima_Compra, T2.Price as Contado, CASE WHEN T2.Price = 0 THEN '0' ELSE round(((T2.Price-T0.AvgPrice)/(T2.Price)),2)*100 END as Margen   FROM OITM T0  INNER JOIN PDN1 T1 ON T0.ItemCode = T1.ItemCode INNER JOIN ITM1 T2 ON T0.Itemcode=T2.ItemCode WHERE T0.[OnHand] > 0 and T0.[ItmsGrpCod] ='266' and T2.PriceList='3' order by  6,1

      Espero te ayude en algo

      Author's profile photo Former Member
      Former Member
      Blog Post Author

      Hola Eloy ,Este me sirve perfectamente solo lo voy a aplicar a ventas , han sido de gran ayuda todas las aportaciones , un saludo  cordial