PDA

Ver la Versión Completa : Detectar una fecha 30 días antes.


darkone2k3
11-11-2004, 19:17:10
Salu2 amigos.

Me gustaría saber si me pueden ayudar u orientar con un problema q tengo.
Les explico lo q tengo q hacer.

Estoy haciendo un sistema en el cual se ingresan boletas de garantías con sus respecitivas fechas de emisión y vencimiento, estas fechas de vencimiento generalmente son para 2, 3 o más meses después de la fecha de emisión, y estás fechas de emision y vencimiento son almacenadas en la table de boletas de garantías.
El problema q tengo es q al momento de iniciar el sistema, éste debe avisar si es q en 30 días más vence alguna boleta de garantia, esto sé como hacerlo, pero no sé como poder hacerlo si x ejemplo un día sábado o domingo, días en q no se ocupa el sistema, vence o ha vencido alguna boleta.
La comprobación la hago al momento de iniciar el sistema, ejecuto una query q me rescata las boletas cuando la fecha de vencimiento menos 30 es = a hoy.

Espero haberme explicado bien, y q me puedan ayudar.
De antemano, muxas gracias.

Sara Paz
11-11-2004, 23:20:01
Se me ocurre que la solución está en tener otro campo más que contenga la fecha de vencimiento o el primer día hábil después del vencimiento. Me explico: cuando pongas la fecha de vencimiento la guardas en el campo correspondiente y miras si ésta coincide con un sábado, domingo, festivo, etc. Si es así le sumas 1 hasta que sea un día hábil y guardas el valor el FECHA_HABIL, p.e. Cuando tengar que hacer la comprobación del vencimiento lo haces sobre este campo pero das la información de otro.
No sé si me he 'enrollao' más de lo debido.

Sara Paz.

marcoszorrilla
11-11-2004, 23:21:17
Fecha de vencimiento >= (hoy - 30)

No sé si es esto lo que pides.

Un Saludo.

darkone2k3
12-11-2004, 15:58:25
Se me ocurre que la solución está en tener otro campo más que contenga la fecha de vencimiento o el primer día hábil después del vencimiento. Me explico: cuando pongas la fecha de vencimiento la guardas en el campo correspondiente y miras si ésta coincide con un sábado, domingo, festivo, etc. Si es así le sumas 1 hasta que sea un día hábil y guardas el valor el FECHA_HABIL, p.e. Cuando tengar que hacer la comprobación del vencimiento lo haces sobre este campo pero das la información de otro.
No sé si me he 'enrollao' más de lo debido.

Sara Paz.

Fecha de vencimiento >= (hoy - 30)

No sé si es esto lo que pides.

Un Saludo.

Muchas gracias x sus repuestas amigos, pero me explicaré mejor... :)

La fecha de vencimiento de la boleta nunca será sábado o domingo, eso es obvio.
El problema es q el sistema se usa de lunes a viernes, y la comprobación de fecha vencimiento - 30, se hace cuando se inicia el sistema, x lo tanto al no ejecutarse los sábado o domingos el sistema, durante esos días no se podrá hacer la comprobación y ese es el problema que tengo, les dejo un ejemplo real de una fecha de vencimiento de una boleta, la boleta vence el día 13-12-2004, x lo q si hoy viernes 12-11 ocupo la formula de fecha-30, me da 13-11-2004 x lo q hoy el sistema no lo detecta y mañana el sistema lo detectaría, pero al ser día sabado el sistema no se utiliza x lo q no será detectado; y ese es el problema que tengo, no sé como hacerlo con las fechas q caigan sábado y domingo..

Marcos, según lo q escribiste: vencimiento >= ( hoy - 30 ), no te entiendo.. :( me podrías explicar mejor xq si aplico tu formula me da esto:
Vencimiento := 13-12-2004;
Hoy := 12-11-2004;
Resta := Hoy - 30;
Entonces, Resta = 12-10-2004
:confused: :confused:

roman
12-11-2004, 17:31:29
Bueno, pero entonces tienes que decidir cuándo quieres detectar la fecha de vencimiento, el viernes o el lunes. Si es el lunes no tienes problema pues simplemente vas a buscar las boletas cuyo vencimiento sea en 30 días o antes. Si es el viernes entonces, en lugar de buscar las boletas que venzan en 30 dias buscas las que lo hagan en 32 días o antes.

// Saludos

darkone2k3
12-11-2004, 17:38:47
el programa se usa de lunes a viernes, x lo q es en esos días en los q se hace la verificación.
Y como podría saber si el dia en q se está ejecutando el sistema es viernes??

Lepe
12-11-2004, 17:41:39
También podría resultar más comodo incluir el campo "Vencimiento", al tiempo de guardarlo, miras si va a caer en Sábado o domingo, e incrementas o decrementas el dia de aviso.

DayOfTheWeek te dice el dia de la semana de una fecha futura.

Saludos

roman
12-11-2004, 17:44:54
También podría resultar más comodo incluir el campo "Vencimiento", al tiempo de guardarlo, miras si va a caer en Sábado o domingo, e incrementas o decrementas el dia de aviso.

Después de mandar mi mensaje anterior releí el hilo y me parece que estamos siendo injustos con Sara Paz. Esto es lo que ella dijo desde un principio y, a efectos de facilitar la consulta SQL, pienso que es de hecho la mejor opción.

// Saludos

Lepe
12-11-2004, 17:50:13
Me ha pasado exactamente lo mismo que a tí Roman.

Saludos Sara ;)

darkone2k3
12-11-2004, 20:31:18
muxas gracias x sus respuestas!! :D