Foros del Web » Programando para Internet » ASP Clásico »

fechas por periodo

Estas en el tema de fechas por periodo en el foro de ASP Clásico en Foros del Web. Hola muchachos necesito un favor de ustedes como tomo un periodo de seis meses hacia tras apartir de la fecha de hoy tengo el siguiente ...
  #1 (permalink)  
Antiguo 13/11/2008, 14:48
 
Fecha de Ingreso: septiembre-2007
Mensajes: 318
Antigüedad: 17 años, 7 meses
Puntos: 1
De acuerdo fechas por periodo

Hola muchachos necesito un favor de ustedes como tomo un periodo de seis meses hacia tras apartir de la fecha de hoy tengo el siguiente script el cual me toma la fecha del dia de hoy y del dia siguiente para mostrarme una serie de datos alojados en mi BD:

este me permite mostrar la fecha inicial el dia especificamente

<select name="diaIni" id="diaIni">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
</select>
<%if not isempty(request.Form("diaIni")) then response.Write("<script language='javascript'> document.frmLista.diaIni.value ='"+request.Form("diaIni")+"'; </script>")%>
/
este me permite mostrar la fecha inicial el mes especificamente

<select name="mesIni" id="mesIni">
<option value="1">Enero</option>
<option value="2">Febrero</option>
<option value="3">Marzo</option>
<option value="4">Abril</option>
<option value="5">Mayo</option>
<option value="6">Junio</option>
<option value="7">Julio</option>
<option value="8">Agosto</option>
<option value="9">Septiembre</option>
<option value="10">Octubre</option>
<option value="11">Noviembre</option>
<option value="12">Diciembre</option>
</select>
<%if not isempty(request.Form("mesIni")) then response.Write("<script language='javascript'> document.frmLista.mesIni.value ='"+request.Form("mesIni")+"'; </script>")%>
/
este me permite mostrar la fecha inicial el año especificamente

<select name="yearIni" id="yearIni">
<% numero = year(date) - 2
while numero <= year(date) + 2%>
<option value="<%response.Write(cstr(numero))%>" <%if numero = year(date) then response.Write(" selected")%>>
<%response.Write(cstr(numero))%>
</option>
<% numero = numero + 1
wend%>
</select>
<%if not isempty(request.Form("yearIni")) then response.Write("<script language='javascript'> document.frmLista.yearIni.value ='"+request.Form("yearIni")+"'; </script>")%>
<strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</strong> </font></p>
<p><font><strong> y:&nbsp;</strong>

este me permite mostrar la fecha final el dia especificamente

<select name="diaFin" id="diaFin">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
</select>
<%if not isempty(request.Form("diaFin")) then response.Write("<script language='javascript'> document.frmLista.diaFin.value ="+request.Form("diaFin")+"; </script>")%>
/

este me permite mostrar la fecha final el mes especificamente

<select name="mesFin" id="mesFin">
<option value="1">Enero</option>
<option value="2">Febrero</option>
<option value="3">Marzo</option>
<option value="4">Abril</option>
<option value="5">Mayo</option>
<option value="6">Junio</option>
<option value="7">Julio</option>
<option value="8">Agosto</option>
<option value="9">Septiembre</option>
<option value="10">Octubre</option>
<option value="11">Noviembre</option>
<option value="12">Diciembre</option>
</select>
<%if not isempty(request.Form("mesFin")) then response.Write("<script language='javascript'> document.frmLista.mesFin.value ="+request.Form("mesFin")+"; </script>")%>
/

este me permite mostrar la fecha final el año especificamente

<select name="yearFin" id="yearFin">
<% numero = year(date) - 2
while numero <= year(date) + 2%>
<option value="<%response.Write(cstr(numero))%>" <%if numero = year(date) then response.Write(" selected")%>>
<%response.Write(cstr(numero))%>
</option>
<% numero = numero + 1
wend%>
</select>
<%if not isempty(request.Form("yearFin")) then response.Write("<script language='javascript'> document.frmLista.yearFin.value ="+request.Form("yearFin")+"; </script>")%>

muchas gracias

Última edición por banrey; 13/11/2008 a las 19:41
  #2 (permalink)  
Antiguo 13/11/2008, 15:35
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Respuesta: fechas por periodo

Solo le presté atención a este fragmento: ¿cómo tomo un periodo de seis meses hacia tras a partir de la fecha de hoy?

Te refieres a que quieres saber la fecha de hace 6 meses antes del día de hoy? datediff

http://www.w3schools.com/vbscript/vb...tions.asp#date

Si no querías saber solo eso y pusiste todo ese código para algo en especial, pues necesitarías elaborar más tu post.

Saludos
  #3 (permalink)  
Antiguo 13/11/2008, 19:36
 
Fecha de Ingreso: septiembre-2007
Mensajes: 318
Antigüedad: 17 años, 7 meses
Puntos: 1
De acuerdo Respuesta: fechas por periodo

ok voy hacer un poco mas explisito y espero que me ayuden yo tengo implemetado el codigo de arriba y funsiona bien pero que sucede que ese codigo me permite hacer una consulta a mi bd segun la fecha de hoy y la fecha de mañana mostrandome unos registros segun el periodo...

Cual es mi problema que yo necesito implementar ese mismo codigo pero para que tome la fecha apartir de seis meses atras hasta el dia de hoy. Osea yo quiero validar la fecha de hacen 6 meses antes de la fecha de hoy obtener todos los datos que encuentre en ese periodo...

Pero lo que necesito yo es que el scritp me lea la fecha de hoy como fecha final y la fecha inicial la del 1 de abril del 2008 por dar un ejemplo

Para que hacer esto? Bueno para yo mostrar los datos en ese periodo de tiempo nada mas y no mostrar todos los datos de la tabla fuera de ese periodo de tiempo.. Espero haberme explicado un poco mas espero sus respuesta para que me hechen una manito con eso que no hallo como hacerlo la verdad.... Muchas gracias....
  #4 (permalink)  
Antiguo 14/11/2008, 06:47
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 4 meses
Puntos: 126
Respuesta: fechas por periodo

Hola

Parece que lo único que necesitas es una consulta

Select * from tabla where Fecha >= CDate('"&inicio&"')

o

Select * from tabla where FechaResp Between CDate('"&inicio&"') and CDate('"&final&"')

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #5 (permalink)  
Antiguo 14/11/2008, 16:28
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Respuesta: fechas por periodo

A ver si entendí ....

Tienes 6 combos, dos para los días del mes, dos para los meses del año y dos para los años con un intervalo de +- 2 años. Y quieres que los OPTION seleccionados por default correspondan a la fecha de hoy 3 des ellos y a la fecha de hace 6 meses los otros 3.

¿Es correcto eso?

Si eso es cierto, pues debes utilizar la función DateAdd contra el Date de hoy y restándole 6 al mes para obtener la fecha de hace 6 meses. Luego con las funciones DAY, MONTH y YEAR separas cada valor de cada fecha y listo, solo debes de poner un IF en cada uno de tus OPTIONS como este: <%if DiaHace6Meses = 1 Then Response.write(" selected") End If%>.

Si, es una chorrada, pero tu diseño así lo exige, si generaras los días y los meses con un FOR ya no se vería tan gacho y si te ingeriaras una función que recibiera la fecha como parámetro y y el tipo de dato a generar (dias o meses) solo tendrías que hacerlo una vez.

Saludos
  #6 (permalink)  
Antiguo 15/11/2008, 06:52
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 6 meses
Puntos: 27
Respuesta: fechas por periodo

Cita:
Iniciado por banrey Ver Mensaje
ok voy hacer un poco mas explisito y espero que me ayuden yo tengo implemetado el codigo de arriba y funsiona bien pero que sucede que ese codigo me permite hacer una consulta a mi bd segun la fecha de hoy y la fecha de mañana mostrandome unos registros segun el periodo...

Cual es mi problema que yo necesito implementar ese mismo codigo pero para que tome la fecha apartir de seis meses atras hasta el dia de hoy. Osea yo quiero validar la fecha de hacen 6 meses antes de la fecha de hoy obtener todos los datos que encuentre en ese periodo...

Pero lo que necesito yo es que el scritp me lea la fecha de hoy como fecha final y la fecha inicial la del 1 de abril del 2008 por dar un ejemplo

Para que hacer esto? Bueno para yo mostrar los datos en ese periodo de tiempo nada mas y no mostrar todos los datos de la tabla fuera de ese periodo de tiempo.. Espero haberme explicado un poco mas espero sus respuesta para que me hechen una manito con eso que no hallo como hacerlo la verdad.... Muchas gracias....
toc toc

pregunto ...
tu necesitas seleccionar una fecha final y mostrar los valores que concuerden en el periodo de fecha seleccionada y 6 meses hacia atrás sea cual sea la fecha actual

eje. si mi fecha fin es marzo/2008 tendría que mostrarte los valores desde
octubre/2007 a marzo/2008


o si en caso si fuera noviembre/2008 tendría que buscarte entre Julio y noviembe / 2008

no permitir que los usuarios busquen valores mayores a 6 meses atras?????

si es asi que tu fecha inicial sea 6 meses atras cual fuera la fecha final seria mucho mas facil....

pero es eso lo que quieres?
__________________
JuanRa Pérez
San Salvador, El Salvador
  #7 (permalink)  
Antiguo 15/11/2008, 20:46
 
Fecha de Ingreso: septiembre-2007
Mensajes: 318
Antigüedad: 17 años, 7 meses
Puntos: 1
De acuerdo Respuesta: fechas por periodo

es correcto lo que dicen todos y muchas gracias por contestarme lo que sucede es que el codigo no lo hice yo esta hecho de esa forma y me veo en la obligacion de adaptarlo a que solo me muestre los datos de seis meses atras apartir de la fecha actual y no entiendo mucho que hizo la persona que realizo ese codigo para yo poder modificarlo ya que soy demasiado nuevo en ASP.

La logica me dice que por medio de una funsion haga un atrazo de seis meses a la fecha actual pero no he podido hacerlo pues le he hecho cambios al codigo actual y cuando lo corro me da error.... por ello pedi su ayuda y muchisimas gracias por haberme contestado si tienen algo mas que decirme que me pueda ayudar estaria muy agradecido muchachos
  #8 (permalink)  
Antiguo 16/11/2008, 19:42
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 6 meses
Puntos: 27
Respuesta: fechas por periodo

oki

hagamos una cosa la idea seria asi

recoges tus 3 combos de la fecha final
luego armas la cadena y verificas que sea una fecha cdate()
luego le restas 6 meeses y esa sera tu fecha inicial
luego armamos la cadena

haz el codigo y te ayudamos

suerte
__________________
JuanRa Pérez
San Salvador, El Salvador
  #9 (permalink)  
Antiguo 17/11/2008, 08:55
Avatar de adiazm  
Fecha de Ingreso: julio-2008
Ubicación: Santiago
Mensajes: 51
Antigüedad: 16 años, 9 meses
Puntos: 1
Respuesta: fechas por periodo

y has probado a tomar solo el mes en proceso y restarle 6 para saber desde el mes que partes y el dia lo validas después?.

no se, una idea.
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 12:16.