Foros del Web » Programando para Internet » Javascript »

Sumar dias habiles a fecha actual

Estas en el tema de Sumar dias habiles a fecha actual en el foro de Javascript en Foros del Web. Buenas tardes.. Lo que estoy intentando hacer es sumarle a la fecha actual 3 dias pero que me sume los dias siendo nomas los dias ...
  #1 (permalink)  
Antiguo 10/01/2007, 11:03
 
Fecha de Ingreso: noviembre-2005
Ubicación: Torreon Coahuila
Mensajes: 100
Antigüedad: 18 años, 5 meses
Puntos: 1
Sumar dias habiles a fecha actual

Buenas tardes..
Lo que estoy intentando hacer es sumarle a la fecha actual 3 dias pero que me sume los dias siendo nomas los dias habiles Lunes-Viernes.
Por ejemplo hoy es jueves 11 de enero que le sume 3 dias habiles, entonces le sumaria viernes lunes martes y me daria como fecha martes 16 enero.

Viendo el script que esta en las FAQ 324319

h**p://***.forosdelweb.com/showthread.php?postid=324319#post324319

Le sume 3 dias a la fecha pero no los dias habiles
Alguien que pudiera orientarme como modificar la siguiente funcion para que le sume los dias habiles a la fecha.
Cita:
// Los últimos siete días
function setDefaults4(oFrom, oTo){
var dToday = new Date();
var nDay = dToday.getDate();
var nMonth = dToday.getMonth() + 1;
var nYear = dToday.getYear();
var sFirstDate, sLastDate;

sLastDate = makeDateFormat(nDay, nMonth, nYear);
sFirstDate = addToDate(sLastDate, +3); //Suma 3 dias a la fecha actual
oFrom.value = sFirstDate;
oTo.value = sLastDate;
}
Saludos.. y Feliz Año
  #2 (permalink)  
Antiguo 10/01/2007, 11:50
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Sumar dias habiles a fecha actual

Hola losporros

Prueba este código:

Código PHP:
hoy = new Date();
i=0;
while (
i<3) {
  
hoy.setTime(hoy.getTime()+24*60*60*1000); // añadimos 1 día
  
if (hoy.getDay() != && hoy.getDay() != 0)
    
i++;  
}
fecha hoy.getDate()+ '/' hoy.getMonth()+'/' hoy.getFullYear();
document.write(fecha); 
Saludos,
  #3 (permalink)  
Antiguo 10/01/2007, 13:05
 
Fecha de Ingreso: noviembre-2005
Ubicación: Torreon Coahuila
Mensajes: 100
Antigüedad: 18 años, 5 meses
Puntos: 1
Re: Sumar dias habiles a fecha actual

Gracias JavierB te debo una ,era lo que buscaba e intentaba.
Saludos y Feliz Año.....
  #4 (permalink)  
Antiguo 11/01/2007, 11:17
 
Fecha de Ingreso: noviembre-2005
Ubicación: Torreon Coahuila
Mensajes: 100
Antigüedad: 18 años, 5 meses
Puntos: 1
Re: Sumar dias habiles a fecha actual

Oye una duda en el siguiente condigo como le hago para Incrementar que 20 dias, osea en la linea de aqui abajo cuantos miles ekivalen a 1 dia??
Cita:
hoy = new Date();
i=0;
while (i<3) {
hoy.setTime(hoy.getTime()+24*60*60*1000); //Para añadirle 20 dias como le hago??
if (hoy.getDay() != 6 && hoy.getDay() != 0)
i++;
}
fecha = hoy.getDate()+ '/' + hoy.getMonth()+1 + '/' + hoy.getFullYear();
document.write(fecha);
Saludos.....
  #5 (permalink)  
Antiguo 11/01/2007, 11:27
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Sumar dias habiles a fecha actual

Hola de nuevo.

En esta línea, cambia el 3 por el número de días que quieres añadir:

while (i<3) {

Saludos,
  #6 (permalink)  
Antiguo 11/01/2007, 11:35
 
Fecha de Ingreso: noviembre-2005
Ubicación: Torreon Coahuila
Mensajes: 100
Antigüedad: 18 años, 5 meses
Puntos: 1
Re: Sumar dias habiles a fecha actual

Ah canijo que respuesta tan rapida

Gracias y Saludos..........................
  #7 (permalink)  
Antiguo 18/01/2007, 13:41
 
Fecha de Ingreso: noviembre-2005
Ubicación: Torreon Coahuila
Mensajes: 100
Antigüedad: 18 años, 5 meses
Puntos: 1
Re: Fallo al sumar mas de 20 dias

Oye JavierB una duda

Código PHP:
hoy = new Date();
i=0;
while (
i<20) {
  
hoy.setTime(hoy.getTime()+24*60*60*1000); // añadimos 1 día
  
if (hoy.getDay() != && hoy.getDay() != 0)
    
i++;  
}
fecha hoy.getDate()+ '/' hoy.getMonth()+'/' hoy.getFullYear();
document.write(fecha); 
Cuando le quiero agregar 20 dias me sale con otro mes.
por ejemplo hoy es 18 de enero (18/01/2007) le puse agregar 20 dias y me salio (15/11/2007).
La suma de los dias si esta bien solo lo que esta fallando es el mes, deberia de darme (15/02/2007)

Aver si puedes echarme la mano Saludos...
  #8 (permalink)  
Antiguo 18/01/2007, 13:50
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Sumar dias habiles a fecha actual

Rehola.

No me había fijado en esto Se lo está tomando como una cadena, por eso 1+1 = 11

Puedes ponerlo entre paréntesis:

+ (hoy.getMonth()+1) +

o puedes usar esta modificación, para que te añada un cero antes del número de mes:

Código:
while (i<20) {
  hoy.setTime(hoy.getTime()+24*60*60*1000); // añadimos 1 día
  if (hoy.getDay() != 6 && hoy.getDay() != 0)
    i++;  
}
mes = hoy.getMonth()+1;
if (mes<10) mes = '0'+mes;
fecha = hoy.getDate()+ '/' + mes + '/' + hoy.getFullYear();
Saludos,
  #9 (permalink)  
Antiguo 23/07/2008, 07:57
 
Fecha de Ingreso: marzo-2007
Mensajes: 19
Antigüedad: 17 años, 1 mes
Puntos: 0
Sonrisa Respuesta: Sumar dias habiles a fecha actual

Hola JabierB

buscando una solicicon al mismo problmea que los chicos que empezaron este tema, me ecnontre con tu solucion la verdad esta super bien, me ayudo mucho, solo una pequeña duda, como le podria hacer para sumar en ves de dias habiles sumarlo por meses es decir a la fecha de hoy que sera 23/07/2008 sumarle 10 meses claro con sus dias habiles, pense en sumarle los dias que sera aproximadamente 300 dias pero hay meses que tienen 30 o 31 y he ahi donde me di topes con la pared si me pudiera ayudar te lo agradeseria muchisimo.

Saluditos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:57.