Hola Compañer@s !
No me aclaro con esto de los Stored Procedures en Interbase.
Quiero más o menos crear esta Stored Procedure :
Código SQL
[-]begin
Select BOJ.BOOKINGNO
from BOOKINGS_OBJECTS BOJ
left join BOOKINGS BO
on BO.BOOKINGNO = BOJ.BOOKINGNO
where
BOJ.BUILDINGNO = :"BUILDING_NO" and
BOJ.OBJECTNO = :"OBJECT_NO" and
BOJ.DATETO <= :"DATE_SP" and
BO.STATUS = 3
Into BOOK_NO;
if (not BOJ.BOOKINGNO is Null) then
SUSPEND;
else begin
Select BOJ.BOOKINGNO
from BOOKINGS_OBJECTS BOJ
left join BOOKINGS BO
on BO.BOOKINGNO = BOJ.BOOKINGNO
where
BOJ.BUILDINGNO = :"BUILDING_NO" and
BOJ.OBJECTNO = :"OBJECTNO" and
BOJ.DATEFROM >= :"DATE_SP" and
BOJ.DATETO <= :"DATE_SP" and
BO.STATUS <= 2
Into BOOK_NO;
end
end
Pero me da error en la línea subrayada.
Lo que quiero hacer es buscar un registro determinado, pero si no cumple la condición que pregunto después (en mi caso concreto, si se produjo un EOF del primer Select), ejecutar otro Select diferente con otras condiciones para devolver un valor diferente.
Lo que necesito es saber como preguntar si el primer Select encontró o no un registro (o varios), y en caso contrario (preguntando por EOF ?
), sjecutar el segundo Select con otras condiciones.
Gracias por vuestra ayuda.