Tiene un par de problemas en su procedimiento. En primer lugar, como se describe en el manual :
Entonces necesitas mover tu
set @dateval = `wanted_date`;
después de todo el DECLARE
s (incluido el cursor y el controlador de continuación).
En segundo lugar, su declaración de colval
es incorrecto, string
no es un tipo de datos válido y debe reemplazarse con text
:
declare colval text default null;