Dias entre fechas para un ano de 360 dias

23/08/2005 - 19:41 por nelva | Informe spam
Esto yo lo puedo hacer desde Excel usando la funcion DIAS360

Calcula el número de días entre dos fechas basándose en un año de 360 días
(doce meses de 30 días) que se utiliza en algunos cálculos contables. Use
esta función para facilitar el cálculo de pagos si su sistema de
contabilidad se basa en 12 meses de 30 días.

Ahora estoy usando SQL server y quiero obtener los dias trabajados entre dos
fechas , basandose en un ano de 360 días. Que podria usar en este caso. Por
que con DATEDIFF me da anos Calendario y para asuntos contables se usa 360
dias



Cualquier ayuda sera excelente..

Preguntas similare

Leer las respuestas

#1 Maxi
23/08/2005 - 19:44 | Informe spam
Hola, la diferencia de dias no es el problema, si obtienes la diferencia de
dias entre 2 fechas solo contara dias el sistema, luego podrias dividir por
360 y saber cuantos años es


Salu2
Maxi


"nelva" escribió en el mensaje
news:
Esto yo lo puedo hacer desde Excel usando la funcion DIAS360

Calcula el número de días entre dos fechas basándose en un año de 360 días
(doce meses de 30 días) que se utiliza en algunos cálculos contables. Use
esta función para facilitar el cálculo de pagos si su sistema de
contabilidad se basa en 12 meses de 30 días.

Ahora estoy usando SQL server y quiero obtener los dias trabajados entre
dos
fechas , basandose en un ano de 360 días. Que podria usar en este caso.
Por
que con DATEDIFF me da anos Calendario y para asuntos contables se usa 360
dias



Cualquier ayuda sera excelente..






Respuesta Responder a este mensaje
#2 Maxi
23/08/2005 - 20:09 | Informe spam
Hola, te comprendo!! entonces vas a tener q armar tu propia funcion definida
de usuario o tener una tabla con los dias por mes


Salu2
Maxi


"nelva" escribió en el mensaje
news:
Estimado Maxi, efectivamente ya hice lo que indicaste pero no lo logro, te
pongo un caso:

datediff(day,01/05/02,31/08/05)= 1218 dias
pero para anos de 360 dias, esto me deberia de dar 1200 dias.

Tengo 18 dias de mas y para el calculo de vacaciones me genera un factor
mayor.
porque yo % 1218/360*12*2.51.50
1200/360*12*2.50.00

osea que le estaria pagando 1.50 dias mas al empleado, lo cual es
incorrecto.

es ahi mi requerimiento.

"Maxi" escribió en el mensaje
news:
Hola, la diferencia de dias no es el problema, si obtienes la diferencia


de
dias entre 2 fechas solo contara dias el sistema, luego podrias dividir


por
360 y saber cuantos años es


Salu2
Maxi


"nelva" escribió en el mensaje
news:
> Esto yo lo puedo hacer desde Excel usando la funcion DIAS360
>
> Calcula el número de días entre dos fechas basándose en un año de 360


días
> (doce meses de 30 días) que se utiliza en algunos cálculos contables.


Use
> esta función para facilitar el cálculo de pagos si su sistema de
> contabilidad se basa en 12 meses de 30 días.
>
> Ahora estoy usando SQL server y quiero obtener los dias trabajados
> entre
> dos
> fechas , basandose en un ano de 360 días. Que podria usar en este caso.
> Por
> que con DATEDIFF me da anos Calendario y para asuntos contables se usa


360
> dias
>
>
>
> Cualquier ayuda sera excelente..
>
>
>
>
>
>






Respuesta Responder a este mensaje
#3 nelva
23/08/2005 - 21:01 | Informe spam
Estimado Maxi, efectivamente ya hice lo que indicaste pero no lo logro, te
pongo un caso:

datediff(day,01/05/02,31/08/05)= 1218 dias
pero para anos de 360 dias, esto me deberia de dar 1200 dias.

Tengo 18 dias de mas y para el calculo de vacaciones me genera un factor
mayor.
porque yo % 1218/360*12*2.51.50
1200/360*12*2.50.00

osea que le estaria pagando 1.50 dias mas al empleado, lo cual es
incorrecto.

es ahi mi requerimiento.

"Maxi" escribió en el mensaje
news:
Hola, la diferencia de dias no es el problema, si obtienes la diferencia


de
dias entre 2 fechas solo contara dias el sistema, luego podrias dividir


por
360 y saber cuantos años es


Salu2
Maxi


"nelva" escribió en el mensaje
news:
> Esto yo lo puedo hacer desde Excel usando la funcion DIAS360
>
> Calcula el número de días entre dos fechas basándose en un año de 360


días
> (doce meses de 30 días) que se utiliza en algunos cálculos contables.


Use
> esta función para facilitar el cálculo de pagos si su sistema de
> contabilidad se basa en 12 meses de 30 días.
>
> Ahora estoy usando SQL server y quiero obtener los dias trabajados entre
> dos
> fechas , basandose en un ano de 360 días. Que podria usar en este caso.
> Por
> que con DATEDIFF me da anos Calendario y para asuntos contables se usa


360
> dias
>
>
>
> Cualquier ayuda sera excelente..
>
>
>
>
>
>


Respuesta Responder a este mensaje
#4 andresrios72
01/06/2011 - 17:16 | Informe spam
nelva escribió el 23/08/2005 21:01 :
Estimado Maxi, efectivamente ya hice lo que indicaste pero no lo logro, te
pongo un caso:

datediff(day,01/05/02,31/08/05)= 1218 dias
pero para anos de 360 dias, esto me deberia de dar 1200 dias.

Tengo 18 dias de mas y para el calculo de vacaciones me genera un factor
mayor.
porque yo % 1218/360*12*2.51.50
1200/360*12*2.50.00

osea que le estaria pagando 1.50 dias mas al empleado, lo cual es
incorrecto.

es ahi mi requerimiento.

"Maxi" escribió en el
mensaje
news:
Hola, la diferencia de dias no es el problema, si obtienes la diferencia



de
dias entre 2 fechas solo contara dias el sistema, luego podrias dividir



por
360 y saber cuantos años es


Salu2
Maxi


"nelva" escribió en el mensaje
news:
> Esto yo lo puedo hacer desde Excel usando la funcion DIAS360
>
> Calcula el número de días entre dos fechas basándose
en un año de 360



días
> (doce meses de 30 días) que se utiliza en algunos cálculos
contables.



Use
> esta función para facilitar el cálculo de pagos si su
sistema de
> contabilidad se basa en 12 meses de 30 días.
>
> Ahora estoy usando SQL server y quiero obtener los dias trabajados entre
> dos
> fechas , basandose en un ano de 360 días. Que podria usar en este
caso.
> Por
> que con DATEDIFF me da anos Calendario y para asuntos contables se usa



360
> dias
>
>
>
> Cualquier ayuda sera excelente..
>
>
>
>
>
>




-- =============================================
-- Author: <Carlos Andres Rios Gallego>
-- Create date: <01/06/2011>
-- Description: <Diferencia entre fechas(360) con meses de 30 dias>
-- =============================================
CREATE FUNCTION DATEDIFF360(@FECHA_INICIAL DATETIME, @FECHA_FINAL DATETIME)
RETURNS int
AS
BEGIN
DECLARE @DIA_INICIAL AS INT SET @DIA_INICIAL = DAY(@FECHA_INICIAL)
DECLARE @MES_INICIAL AS INT SET @MES_INICIAL = MONTH(@FECHA_INICIAL)
DECLARE @ANO_INICIAL AS INT SET @ANO_INICIAL = YEAR(@FECHA_INICIAL)
DECLARE @DIA_FINAL AS INT SET @DIA_FINAL = DAY(@FECHA_FINAL)
DECLARE @MES_FINAL AS INT SET @MES_FINAL = MONTH(@FECHA_FINAL)
DECLARE @ANO_FINAL AS INT SET @ANO_FINAL = YEAR(@FECHA_FINAL)
DECLARE @DIAS AS INT

IF(@DIA_FINAL < @DIA_INICIAL)
BEGIN
SET @DIA_FINAL = @DIA_FINAL + 30
SET @MES_FINAL = @MES_FINAL - 1
END

IF(@MES_FINAL < @MES_INICIAL)
BEGIN
SET @MES_FINAL = @MES_FINAL + 12
SET @ANO_FINAL = @ANO_FINAL - 1
END

SET @DIAS =
(
(@DIA_FINAL + 1) - (@DIA_INICIAL)
) +
(
((@MES_FINAL) - (@MES_INICIAL)) * 30
) +
(
(@ANO_FINAL - @ANO_INICIAL) * 360
)

RETURN @DIAS

END
GO
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida