Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 9080

Re: Compras y ventas semanales por tienda(bodega)

$
0
0

Me funciono el uso de la función PIVOT de SQL para la agrupación semanal en columnas.

Y previo a esto las funciones de fecha de SQL DATEPART(WEEK,fecha) para saber la semana y un where para que la asocie a Semana#1, Semana#2....

 

DECLARE @FechaInicio AS DateTime, @FechaFinal AS DateTime

SET @FechaInicio = '2014-01-01 00:00:00.000'

SET @FechaFinal = '2014-12-31 00:00:00.000'

 

 

Select a.cardcode AS 'Codigo',a.cardname AS 'Nombre',Year(a.DocDate) AS 'Ano',datepart(week,a.DocDate) AS 'semana',

  SUM(a.doctotal-a.vatsum+a.wtsum) as 'COMPRAS'

INTO #TEMP1

   From OPCH a

    WHERE a.CANCELED = 'N' and  a.DocDate BETWEEN @FechaInicio AND @FechaFinal

   group by a.CardCode,a.cardname,a.docdate

 

 

Select a.cardcode AS 'Codigo',a.cardname AS 'Nombre',Year(a.DocDate) AS 'Ano',datepart(week,a.DocDate) AS 'semana',

  -SUM(a.doctotal-a.vatsum+a.wtsum) as 'COMPRAS'

INTO #TEMP2

   From ORPC a

     WHERE a.CANCELED = 'N' and a.DocDate BETWEEN @FechaInicio AND @FechaFinal

   group by a.CardCode,a.CardName,a.docdate

  

Select

  T.Codigo as 'CODIGO', T.Nombre  as 'NOMBRE', T.Ano 'ANO', 'Semana'+ cast(t.semana as varchar(2)) 'SEMANA',

  sum(t.COMPRAS) AS 'COMPRAS'

INTO #TEMP4

from 

  (

  Select * from #TEMP1

  union

  Select * from #TEMP2

  ) as T

  inner join OCRD T0

  on T0.CardCode = T.Codigo  and  T0.CardType = 'S'

GROUP BY

  T.Codigo, T.Nombre ,T.Ano,T.semana

 

 

 

 

Select * from #TEMP4

pivot

(

  sum(COMPRAS)

  for SEMANA in (

  Semana1, Semana2, Semana3, Semana4, Semana5, Semana6, Semana7, Semana8, Semana9, Semana10,

  Semana11, Semana12, Semana13, Semana14, Semana15, Semana16, Semana17, Semana18, Semana19, Semana20,

  Semana21, Semana22, Semana23, Semana24, Semana25, Semana26, Semana27, Semana28, Semana29, Semana30,

  Semana31, Semana32, Semana33, Semana34, Semana35, Semana36, Semana37, Semana38, Semana39, Semana40,

  Semana41, Semana42, Semana43, Semana44, Semana45, Semana46, Semana47, Semana48, Semana49, Semana50,

  Semana51, Semana52

  )

) piv


Viewing all articles
Browse latest Browse all 9080

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>