Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Cambiar tipo de cliente

Estas en el tema de Cambiar tipo de cliente en el foro de Oracle en Foros del Web. Buenas.Tengo unas tablas relacionadas para la gestion de reservas de un hotel. Tablas como por ejemplo CLIENTE,TIPO_CLIENTE,RESERVAS,ETC.. Pues bien, me ha surgido un problema que ...
  #1 (permalink)  
Antiguo 01/01/2007, 15:47
 
Fecha de Ingreso: septiembre-2005
Mensajes: 379
Antigüedad: 19 años, 2 meses
Puntos: 0
Cambiar tipo de cliente

Buenas.Tengo unas tablas relacionadas para la gestion de reservas de un hotel. Tablas como por ejemplo CLIENTE,TIPO_CLIENTE,RESERVAS,ETC..

Pues bien, me ha surgido un problema que no se como resolverlo. La cuestion es la siguiente:
Como puedo hacer para que un cliente que no sea tipo de cliente =grupo, si realiza mas de 3 reservas en 2 años , pasará a ser cliente de tipo preferente.

No se por donde coger esta situacion. Espero puedan ayudarme y dar con la solucion. Muchas gracias y FELIZ AÑO 2007.


PD: estoy bajo forms 6i, sql y PL/SQL
  #2 (permalink)  
Antiguo 01/01/2007, 17:28
Avatar de TolaWare
Colaborador
 
Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 19 años, 4 meses
Puntos: 24
Re: Cambiar tipo de cliente

Este es un problema de aplicación, no de base de datos. Lo que yo haria es hacer que luego de hacer una reserva, la aplicación verifique esta condición (cantidad de reservas del cliente en los últimos 2 años), y si cumple con la condición, entonces cambiar el tipo de cliente a preferencial.

Saludos.

PD, es posible hacer algún procedimiento almacenado en la BD que haga esto, pero la lógica que se va a implementar es una regla de negocio, por lo que no debería estar en la BD.
  #3 (permalink)  
Antiguo 01/01/2007, 17:54
 
Fecha de Ingreso: septiembre-2005
Mensajes: 379
Antigüedad: 19 años, 2 meses
Puntos: 0
Re: Cambiar tipo de cliente

Exactamente,estoy de acuerdo contigo y pienso lo mismo que tu. Pero el problema está en eso...no se como implementarlo con codigo. No se como indicarle eso de la cantidad de reservas del cliente en los ultimos 2 años. Lo otro supongo ke solo bastara con hacer un UPDATE para cambair el tipo de cliente.
  #4 (permalink)  
Antiguo 01/01/2007, 20:00
Avatar de TolaWare
Colaborador
 
Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 19 años, 4 meses
Puntos: 24
Re: Cambiar tipo de cliente

Básicamente, lo que tienes que hacer es una consulta a la Base de datos, con algún operador de resumen, por ejemplo:

Suponiendo que las tablas son:

CLIENTES:
codigo_cliente
<<-- llave primaria
nombre_cliente
.......


RESERVAS
codigo_reserva
<<-- llave primaria
codigo_cliente
<<-- llave secundaria (o foránea) que apunta a CLIENTES
fecha_de_reserva
.......


haces una consulta mas o menos asi:

select count(codigo_reserva)
from RESERVAS
where codigo_cliente = codigo_cli
and fecha_reserva > TO_DATE(TO_CHAR(sysdate,'dd/mm/yy'),'dd/mm/yy') - 731

siendo codigo_cli el código del cliente en cuestión. EL objetivo del TO_DATE(...) es obtener la fecha de hace 2 años. No lo uses como yo lo escribi, porque probablemente este mal :)

Esta consulta te retornaria la cantidad de reservas de un cliente en particular, en los ultimos 2 años
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 18:19.