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

Controlar Un Campo De Formulario Hacia Otra Tabla

Estas en el tema de Controlar Un Campo De Formulario Hacia Otra Tabla en el foro de Oracle en Foros del Web. Hola figuras. Toy teniendo un problema con lo siguiente. Resulta que tengo una tabla HABITACION y una tabla RESERVAS. Pues bien, en mi formulario de ...
  #1 (permalink)  
Antiguo 03/12/2006, 03:17
 
Fecha de Ingreso: septiembre-2005
Mensajes: 379
Antigüedad: 18 años, 7 meses
Puntos: 0
Controlar Un Campo De Formulario Hacia Otra Tabla

Hola figuras. Toy teniendo un problema con lo siguiente. Resulta que tengo una tabla HABITACION y una tabla RESERVAS. Pues bien, en mi formulario de RESERVAS puedo insertar una nueva reserva, pero claro... para poder insertar una reserva de habitacion es necesario que esa habitacion exista ya en la tabla HABITACION. Todo está en ke cuando pulse yo el boton Insertar resuelva este problema.

Ejemplo: En mi tabla HABITACION tengo las habitaciones 23,54,100. Si yo kiero hacer una reserva hacia la habitacion 23 no habria ningun problema, se inserta la reserva y punto. Pero si pongo en el formulario de RESERVAS que quiero la habitacion 69 (ke no está) entonces ke me salte un error de ke dicha habitacion no existe.

Yo he pensado lo siguiente, pero algo tiene ke star mal.
Me he creado un disparador WHEN-BUTTON-PRESSED.

Código:
 
DECLARE
 
       conta NUMBER;
BEGIN
      IF :RESERVA.cod_habitacion = (SELECT COUNT(*) INTO conta
                                                     FROM habitacion
                                                      WHERE      num_habitacion=:RESERVA.cod_habitacion);   THEN

COMMIT_FORM;

    else
       MESSAGE('Para hacer una reserva hace falta introducir una habitacion existente')

END IF;

END;



GRACIAS.
  #2 (permalink)  
Antiguo 03/12/2006, 06:00
 
Fecha de Ingreso: septiembre-2005
Mensajes: 379
Antigüedad: 18 años, 7 meses
Puntos: 0
Problema solucionado. Me daba error al poner una consulta en el IF... THEN y estaba mal expresado el código. Trasteandolo un poco he conseguido ponerle excepciones para que me controle si dicha habitacion existe o no.
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 15:50.