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

Proceso Automatico

Estas en el tema de Proceso Automatico en el foro de ASP Clásico en Foros del Web. Estoy lanzado un sevicio de noticias, al q me gustaria añadir un funcion q da de baja las noticias al pasar 5 dias desde que ...
  #1 (permalink)  
Antiguo 30/09/2005, 06:38
 
Fecha de Ingreso: abril-2003
Mensajes: 260
Antigüedad: 22 años
Puntos: 0
Proceso Automatico

Estoy lanzado un sevicio de noticias, al q me gustaria añadir un funcion q da de baja las noticias al pasar 5 dias desde que han sido publicadas
Si lo hago manualmente, o lanza la funcion que compara las fechas, y si han pasado 5 dias, da de baja la noticia, no hay ningun problema.

Pero me gustaria saber, si existe la posibilidad, que estas se den de baja automaticamente, es decir, sin tener q lanzar la funcion que las de de baja.

Un saludo
__________________
Salut i Força al Canut
  #2 (permalink)  
Antiguo 30/09/2005, 07:17
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
Puedes programar un job en SQL-Server (si lo usas en tu sistema), puedes programar un actividad en Windows que lance un programa que haga eso, puedes hacer un programa en otro lenguaje que haga eso y lo colocas en la carpeta de inicio para que se ejecute diario, etc, etc.

Saludos
  #3 (permalink)  
Antiguo 30/09/2005, 08:43
Avatar de dobled  
Fecha de Ingreso: enero-2002
Ubicación: Rancagua - Chile
Mensajes: 1.328
Antigüedad: 23 años, 2 meses
Puntos: 2
hazte un procedimiento almacenado en sql que compare la fecha y cambie el campo del estado para que la de la baja de esta, y lo otro compatibilizo con la respuesta de Myakire usando las tareas programadas de windows.
__________________
Usa títulos específicos y con sentido
En las listas de correo o en los grupos de noticias, la cabecera del mensaje es tu oportunidad de oro para atraer la atención de expertos cualificados en aproximadamente 50 caracteres o menos. No los desperdicies en balbuceos como "Por favor ayúdame" (de "POR FAVOR AYÚDAME!!!" ya ni hablamos). No intentes impresionarnos con lo profundo de tu angustia; mejor usa ese preciado espacio para una descripción lo más concisa posible del problema.
  #4 (permalink)  
Antiguo 03/10/2005, 02:27
 
Fecha de Ingreso: abril-2003
Mensajes: 260
Antigüedad: 22 años
Puntos: 0
Voy a probar con la opcion de hacerlo programando un job en SQL-SErver
pero ahora me ha surgido otro problema relativo a las fechas.
la noticia se deba dar de baja, en diez dias, por lo q habia pensado en una funcion q cambiaba la fecha de 19/09/2005 a 20050919 y le suma 10.

Luego hace lo mismo con la fecha del sistema, es decir 30/09/2005 por 20050930
If 20050919 < 20050930 then
DarDeBaja
End if

El problema de hacer esta conversion es cuando cambiamos de mes, ya que todas las del mes anterior son menores...
Alguna solucion alternativa???

Muchas gracias
__________________
Salut i Força al Canut
  #5 (permalink)  
Antiguo 03/10/2005, 04:20
 
Fecha de Ingreso: abril-2003
Mensajes: 260
Antigüedad: 22 años
Puntos: 0
He encontrado una posible solucion,
Por el momento me funciona, pero aun no se si ira bien para todos los posibles casos...
Aki pongo la funcion, si a alguien le interesa....

function ValidaFechaNoticia(DateNoticia,IdFichaNoticia)

fechaHoy=Date()
FechaDD = Mid(fechaHoy,1,2)
FechaMM = Mid(fechaHoy,4,2)
FechaAAAA = Mid(fechaHoy,7,4)
tmp_fechaHoy=FechaAAAA & FechaMM & FechaDD
tmp_fechaHoy= CLng(tmp_fechaHoy)


tmp_DateNoticia=ConvertFechaEsp(DateNoticia)
DateNoticiaDD = Mid(DateNoticia,1,2)


if (DateNoticiaDD > 20) AND (DateNoticiaDD < 32 )then
DateNoticiaDD = DateNoticiaDD - 20
if (DateNoticiaDD > -1) AND (DateNoticiaDD < 10) then
DateNoticiaDD = 0 & DateNoticiaDD
End if
DateNoticiaMM = Mid(DateNoticia,4,2) + 1
DateNoticiaaAAAA = Mid(DateNoticia,7,4)
tmp_DateNoticia=DateNoticiaaAAAA & DateNoticiaMM & DateNoticiaDD
tmp_DateNoticia= CLng(tmp_DateNoticia)

else
tmp_DateNoticia= CLng(tmp_DateNoticia) + 10
End if

if (tmp_DateNoticia < tmp_fechaHoy ) then
SqlBaja = " UPDATE FichaNoticia Set Baja= 1,FechaBaja="&fechaHoy&" WHERE IdFichaNoticia = " & IdFichaNoticia & ""
Set bd = bdconn.Execute(SqlBaja)

End if
__________________
Salut i Força al Canut

Última edición por algicor; 03/10/2005 a las 04:26
  #6 (permalink)  
Antiguo 04/10/2005, 10:10
 
Fecha de Ingreso: abril-2003
Mensajes: 260
Antigüedad: 22 años
Puntos: 0
Alguien tiene una idea mejor???
__________________
Salut i Força al Canut
  #7 (permalink)  
Antiguo 04/10/2005, 12:54
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
Podrías usar la funcion DateDiff, por ejemplo
  #8 (permalink)  
Antiguo 10/10/2005, 01:55
 
Fecha de Ingreso: abril-2003
Mensajes: 260
Antigüedad: 22 años
Puntos: 0
Muchas gracias Myakire, la verdad es q habia tenido q inventar toda esa funcion por desconocimiento de la Funcion DateDiff().

Hay algun sitio donde esten detalladas todas las funciones que hay disponibles, para uso desde ASP???

Muchas Gracias de nuevo
__________________
Salut i Força al Canut
  #9 (permalink)  
Antiguo 10/10/2005, 08:02
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
mmm, puedes colocar en cualquier buscador las palabras "vbscript" y "referense" o "functions" para encontrar muchísimas páginas con esta información. Notese que se usa vbscript en lugar de ASP, por que ASP's se pueden trabajar con JSSS y vbscript.

Una muy buena es por ejemplo: http://www.w3schools.com/vbscript/vb..._functions.asp

Saludos
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 08:30.