Ver Mensaje Individual
  #4 (permalink)  
Antiguo 10/02/2015, 11:51
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Stored Procedure

Esta es la parte relevante:
Cita:
El SP debe tomar la hora_reserva de la bd que es la fecha que se guarda apenas el usuario ingresa la reserva (hora de su servidor) y restarla con la hora actual de manera que todas las reservas que estén en la bd en estatus '2' "sin vaucher" al transcurrir una hora o x tiempo si el usuario no la completa pasen a estado '4' - cancelada se actualice la tabla reservacion y las fechas(fecha_llegada y fecha_salida) también se actualicen a 0000-00-00 para poder ser liberadas, el SP debe consultar a la BD cada 30 minutos.
En esencia, si entendí bien, cada 30 minutos todas las reservas en estado 4, y sin voucher, se cancelar.
Si esto es así, ni siquiera necesitas un SP. En MySQL usarías un EVENT, que permite correr un proceso programado en modo automático. Ese EVENT contendría sólo una linea:
Código MySQL:
Ver original
  1. UPDATE crb_reservacion
  2. SET codigo_estatus_reserva = 4, fecha = DATE('0000-00-00'),
  3. WHERE codigo_estatus_reserva = 2
  4.     AND TIMESTAMPDIFF (HOUR, fecha, NOW() >=1;
Esto, suponiendo que tienes un solo campo de fecha que guarda la hora. De lo contrario las condiciones se complican un poco, pero la idea sería:
Código MySQL:
Ver original
  1. UPDATE crb_reservacion
  2. SET codigo_estatus_reserva = 4, fecha = DATE('0000-00-00'),
  3. WHERE codigo_estatus_reserva = 2
  4.     AND TIMEDIFF(CURTIME(), hora_reserva)>=TIME('01:00:00')  AND fecha_reserva = CURDATE();
Esta segunda opcion no cubre la posibilidad de que la reserva se haya realizado entre las 23:00:00 de un día y el pago antes de la 01:00:00 del otro día. Es un caso que hay que analizar.

Si la idea es que aprendas a usar SP, y quieres recorrer el resultado de una consulta, deberás avanzar en varios temas.
Lee esta FAQ de este mismo foro: http://www.forosdelweb.com/f86/faqs-...1/#post4209262
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)