Prueba con esto, en vez de comillas debes utilizar $$.
Saludos.

CREATE OR REPLACE FUNCTION contar_vistas_ofertas(integer)
RETURNS INTEGER AS 
$$
DECLARE id ALIAS FOR $1;
contador INTEGER;

BEGIN

SELECT count(*) INTO contador FROM ofertasempleo_vistas WHERE ofeid = id AND 
fecha = current_date;
IF (contador > 0) THEN
UPDATE ofertasempleo_vistas SET cantidad = contador + 1 WHERE ofeid = id AND 
fecha = current_date;
RETURN 1;
ELSE
INSERT INTO ofertasempleo_vistas VALUES(id, 1, current_date);
RETURN 2;
END IF;
END;
$$ 
LANGUAGE 'plpgsql';
________________________________________
De: pgsql-es-ayuda-ow...@postgresql.org [pgsql-es-ayuda-ow...@postgresql.org] 
En nombre de Gustavo Garay [lis...@shitech.com.py]
Enviado el: jueves, 28 de abril de 2011 17:15
Para: Virginia
CC: Ayuda
Asunto: Re: [pgsql-es-ayuda] cast de campo fecha en función

debes usar && como cuerpo de funcion no ' apostrofo,
ademas current_date no hace falta invocar con select
esos dos a simple vista

saludos
gustavo garay



----- Mensaje original -----
De: "Virginia" <mavi...@gmail.com>
Para: "Ayuda" <pgsql-es-ayuda@postgresql.org>
Enviados: Jueves, 28 de Abril 2011 17:18:08
Asunto: [pgsql-es-ayuda] cast de campo fecha en función

Buenas tardes!!!
Quisiera solicitarles ayuda con lo siguiente, tengo esta función:

BEGIN;
CREATE OR REPLACE FUNCTION contar_vistas_ofertas(integer)
RETURNS INTEGER AS '
DECLARE id ALIAS FOR $1;
contador INTEGER;

BEGIN

contador = (SELECT count(*) FROM ofertasempleo_vistas WHERE ofeid = id AND 
fecha = (select current_date));
IF (contador > 0) THEN
UPDATE ofertasempleo_vistas SET cantidad = contador + 1 WHERE ofeid = id AND 
fecha = (select current_date);
RETURN(1);
ELSE
INSERT INTO ofertasempleo_vistas VALUES(id, 1, (select current_date));
RETURN(2);
END IF;
END;
' LANGUAGE 'plpgsql';
COMMIT;

pero al ejecutarla me lanza el error:

"""""You will need to rewrite or cast the expression """"""

Qué estoy haciendo mal? Cómo corrijo esto???

Gracias de antemano



-------------------------------------------
Ing. Maria Virginia Porras B.
-------------------------------------------
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a