Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/11/2011, 10:10
Avatar de yamiblancoc
yamiblancoc
 
Fecha de Ingreso: agosto-2011
Mensajes: 103
Antigüedad: 13 años, 4 meses
Puntos: 4
Datepart sql server sencillo

holaaa!!! como estan? una pregunta tengo esto

Código:
DROP PROCEDURE NOMINA
GO
CREATE PROCEDURE NOMINA
@MES DATETIME,
@ANO DATETIME

AS DECLARE

@DIA DATETIME

SET @DIA=DATEPART("DAY",GETDATE())


IF @DIA>15
---PRIMERA QUINCENA
SET @MES=DATEPART("MONTH",GETDATE())
SET @ANO=DATEPART("YEAR",GETDATE())
	BEGIN
		EXEC SWNOMMSSQL000002.dbo.FIJO_1_15 @MES, @ANO
		EXEC SWNOMMSSQL000004.dbo.CONTRATADO_1_15  @MES, @ANO
		EXEC SWNOMMSSQL000005.dbo.JUBILADO_1_15  @MES, @ANO
	END
--SEGUNDA QUINCENA
	BEGIN
	SET @MES=DATEPART("MONTH",GETDATE())<----el problema
	SET @ANO=DATEPART("YEAR",GETDATE())
		EXEC SWNOMMSSQL000002.dbo.FIJO_16_31  @MES, @ANO
		EXEC SWNOMMSSQL000003.dbo.PASANTE_1_31  @MES, @ANO
		EXEC SWNOMMSSQL000004.dbo.CONTRATADO_16_31  @MES, @ANO
		EXEC SWNOMMSSQL000005.dbo.JUBILADO_16_31  @MES, @ANO
	END
todo funciona perfectamente.... solo necesito que este mes sea el mes anterior... me refiero a que estamos hoy 03 de noviembre y voy a correr el SP de nomina el se correra en la segunda quincena pero en el @mes necesito que me tome el mes anterior osea octubre... que me faltaria en el datepart?