07/11/2017, 10:44
|
| | | Fecha de Ingreso: junio-2007 Ubicación: Monterrey, Nuevo León
Mensajes: 82
Antigüedad: 17 años, 6 meses Puntos: 0 | |
Semana 53 Hola a todos, buen día, me gustaría su apoyo con mi porción de código, estoy validando una fecha_de_pago de clientes para colocarlas en diferentes CASES, del 1 al 9, es decir dependiendo de la semana en que caigan del 1 al 9 las clasifico, el detalle es que las acomodo a partir de la semana en que estoy hoy que es la 1, y lo hacía bien el detalle es que llega al día 31 de diciembre marca como semana 53 y ya no funciona mi código, incluso cuando la compara con el cambio de año, es decir la semana 53 contra la semana 1, alguna idea?. Les dejo mi código. Gracias.
Código:
CASE
WHEN (DATEPART(wk, GETDATE())= DATEPART(wk, c.FechaProbablePago))
AND DATEPART(yyyy, GETDATE())=DATEPART(yyyy, c.FechaProbablePago)
THEN --c.AbonoCuentaProveedor
c.AbonoCuentaProveedor - isNull ((Select Sum(Monto) From medacasa18.dbo.CtbPolizasDetAP x Where x.IdPolizaDetAbono = b.IdPolizaDet),0)
END SEM1,
CASE
WHEN
DATEPART(wk,DATEADD(WK, 1, GETDATE())) = DATEPART(wk, c.FechaProbablePago) AND
DATEPART(yyyy,DATEADD(WK, 1, GETDATE()))=DATEPART(yyyy, c.FechaProbablePago)
THEN --c.AbonoCuentaProveedor
c.AbonoCuentaProveedor - isNull ((Select Sum(Monto) From medacasa18.dbo.CtbPolizasDetAP x Where x.IdPolizaDetAbono = b.IdPolizaDet),0)
END SEM2,
--Aqui le siguen iguales prociones del 3 al 8, y continuamos finalmente con el 9 noveno.
CASE
WHEN
DATEPART(wk,DATEADD(WK, 8, GETDATE())) = DATEPART(wk, c.FechaProbablePago) AND
DATEPART(yyyy,DATEADD(WK, 8, GETDATE()))=DATEPART(yyyy, c.FechaProbablePago)
THEN --c.AbonoCuentaProveedor
c.AbonoCuentaProveedor - isNull ((Select Sum(Monto) From medacasa18.dbo.CtbPolizasDetAP x Where x.IdPolizaDetAbono = b.IdPolizaDet),0)
END SEM9,
|