Skip to Content
avatar image
Former Member

Reporte Facturacion Ventas Margenes ganancia, CostoVenta-CostoProduccion

Estimados, buenas tardes. Un gran favor, mi Nombre es Carlos desde hace poco estoy viendo temas SAP B1 con la version 2007A y la verdad que es un sin fin de cosas, ahora me encuentro con un pequeño problema del cual espero contar con todo su apoyo, me han encargado realizar un reporte de mis ventas donde pueda tener en el, el CostoVenta y el CostoProduccion lo cual me va a permitir poder realizar el calculo de mis ganancias. hasta ahora lo he intentado de varias formar pero no he podido encontrar el verdadero valor segun fecha de registro de documento. ejemplo: Factura 1 Factura 2 Factura 1 Fecha: Abril Articulo A Cantidad 100 PrecioVenta 10 PrecioProduccion 5 totalVenta : 1,000 TotalGanancia: 500 Factura 2 Fecha: Mayo Articulo A Cantidad 100 PrecioVenta 20 PrecioProduccion 10 totalVenta : 1,500 TotalGanancia: 1,000 como se muestra lo que quiero es obtener los costos segun la fecha por ejemplo si quiero sacar mis ganancias de ventas del mes de abril entonces aqui debo de contar con el precioCosto de esta fecha. mi query mas o menos esta asi: favor si alguien tiene alguna sugerencia o algun codigo que me pueda servir como base a lo que estoy intentando hacer, favor se lo agradeceria me lo hagan llegar. desde ya agradesco toda sus colaboraciones. Header 1

DECLARE

@ALMACEN VARCHAR(20),

@FECINICIO DATETIME,

@FECFIN  DATETIME

SET @ALMACEN='WHS-TAME' --nombre almacen (el mismo articulo esta en 4
almacenes(punto de venta) en el que puede tener los costos Prod distintos)

SET @FECINICIO='01/04/2012'

SET @FECFIN='30/04/2012'

Select distinct

t0.DOCNUM,

  t0.CardCode as 'CodCliente',

  t0.CardName as 'NombreCliente',

  t0.NumAtCard as 'NroDocumento'

  ,convert(nvarchar(10),t0.DocDate,103) as 'FechaCont'

  ,t1.ItemCode as 'CodigoArticulo'

  ,t1.Dscription as 'DescripciónArticulo'

  ,t1.quantity as 'Cantidad'

  --,b.Rate as
'TipoCambio'

  ,t1.price as 'PrecioVenta'

  ,t2.LastPurPrc --es el ultimo valor ingresado por lo cual no es el valor que requiero por no ser el de la fecha

  --t3.price as PrecioCosto,---aqui tengo que tener el PrecioCosto del Articulo

,t1.whscode

From [dbo].[OINV]  T0

INNER JOIN [dbo].[INV1]  T1 ON T0.DocEntry = T1.DocEntry

INNER JOIN OITM T2 ON T1.ItemCode = T2.ItemCode

INNER JOIN OITW T3 ON T2.ItemCode = T3.ItemCode

--INNER JOIN OINM T3 ON T2.ItemCode = T3.ItemCode

Where t0.Canceled = 'N'

And not t0.U_BPP_MDSD in ('RDC','ANL') And t0.ObjType = 13 And

t0.taxDate between @FECINICIO and @FECFIN

and t1.ItemCode is not null

--and t1.whscode=@ALMACEN

and t2.DfltWH=@almacen

and t0.DocNum='3797' --ejemplo nro de documento

Order By t0.DocNum asc

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

3 Answers

  • Best Answer
    avatar image
    Former Member
    May 12, 2012 at 03:47 PM

    Estimado, buenos dias.

    he podido obtener el costoProduccion del Articulo enlazando con la tabla OINM el detalle de la Inv1 por Docentry, nroLinea, almacen.

    he podido obtener el precio por el Campo OINM.PRICE que es el campo donde guarda el costo a la fecha segun el ultimo movimiento en que se registro la factura, favor si me equivoco. ahora el campo OINM.CalcPrice Es el mismo que esta en la INV1.STOCKPRICE pero que hasta donde tengo conocimiento aqui guarda el costo promedio del articulo.

    favor estimado si quiero obtener el Costo real a la fecha del articulo cual es que tengo que considerar?.

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      Estimado, buenos dias.

      agradezco mucho tu interes a mi consulta, te comento que el reporte ya me logro salir, por el momento estoy tomando ambos campos tanto el OINM.PRICE como el OINM.CALCPRICE esto es por sugerencia de area de costos.

      este reporte ahora lo tengo en prueba para sus validaciones del usuario y tambien por mi lado.

      gracias estimado por todo el apoyo brindado..

      que tenga un buen dia.

  • avatar image
    Former Member
    May 11, 2012 at 09:55 PM

    Hola.

    En la factura se almacena el costo del artículo en las líneas del documento en el campo StockPrice.

    Para tu query, sería T1.StockPrice <--aqui tengo que tener el PrecioCosto del Articulo.

    Reemplaza el t3.price por T1.StockPrice.

    Nos cuentas cómo te va.

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      Hola Carlos.

      La tabla OINM es la del diario de almacén y el costo del artículo debe coincidir con el que queda registrado en la factura.

      Compara el costo del artículo en la factura vs el costo de fabricación del producto que aparece en los recibos de producción. Alguno de ellos debe coincidir (intentar ligar por el número de lote del producto).

      Se compararían los campos INV1.STOCKPRICE y OINM.CALCPRICE.

      O buscar en la tabla OINM.CALCPRICE ambos documentos y deben coincidir.

      Saludos cordiales.

  • avatar image
    Former Member
    May 11, 2012 at 10:16 PM

    Hola.

    Intenta con este Query de ejemplo:

    DECLARE @FECINICIO DATETIME

    DECLARE @FECFIN  DATETIME


    SET @FECINICIO='01/04/2012'

    SET @FECFIN='30/04/2012'


    SELECT T0.DocNum, T0.DocDate, T0.CardName, T1.LineNum, T1.ItemCode, T1.Dscription, T1.Quantity, T1.Price, T1.StockPrice, T1.LineTotal, (T1.LineTotal-(T1.StockPrice*T1.Quantity)) AS Ganancia

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

    WHERE T0.DocDate BETWEEN @FECINICIO AND @FECFIN AND t0.Canceled = 'N'

    Saludos.

    Add comment
    10|10000 characters needed characters exceeded