Gracias Jhonny también a tí.
Independientemente de los ':' en el BOOK_NO como parámetro de salida, funciona correctamente al menos en Interbase 7.5
Y las comillas que hay en el
Código SQL
[-]if (not :"BOOK_NO" is Null) then ...
las mete el IBConsole él solito. Si las quito y vuelvo a grabar el SP, me vuelve a poner las comillas.
Independientemente de la sintaxis que funciona de una manera u otra, no resulevo aun la problemática de qué pasa si son dos los registros que me devuelve el 1er Select, tal y como indica ArdiIIa.
Y por el contrario, tal y como indiqué, qué pasa si el primer Select no devuelve ningún registro. Pues que a mi entender no entraba a ejecutar siquiera el segundo Select.