Error con SQL Dinámico

Lis
14 de Marzo del 2006
Hola Amigos:
Pueden ayudarme?
Intento ejecutar la siguiente función:

FUNCTION Ejecutar_Mapping(nombre IN VARCHAR2) RETURN Boolean IS

p_from_date DATE;
result INTEGER;
plsql_block VARCHAR2(500);
p_env WB_RT_MAPAUDIT.WB_RT_NAME_VALUES; -- Este es un tipo de datos al cual tiene acceso y permisos el usuario dueño de la función.

Begin

plsql_block := 'BEGIN :res := '||nombre||'(:fech); END;';
EXECUTE IMMEDIATE plsql_block USING OUT result, IN p_from_date, IN p_env;

return result = 0;
End;

Al compilar me da el siguiente error:
PLS-00457: las expresiones deben ser de tipo SQL
Si elimino el parámetro p_env, no me da error. Necesito pasar ese parámetro, cómo puedo hacerlo?
Muchas Gracias a todos
Lis