Olá pessoal tudo bem?
Gostaria de saber se existe alguma maneira de eu atribuir valores a variáveis criadas nas funções, utilizando-se à linguagem SQL, no postgresql:

Por exemplo

CREATE FUNCTION ibsapes (character varying, character varying, character varying, integer) RETURNS bigint
AS 'INSERT INTO CLIENTES(NOME_CLIENTE,TIPO_ENDERECO) VALUES ($1, $2,$3);
SELECT CURRVAL(''BSAPES_PESSOA_SEQ'');

'
LANGUAGE sql;

Onde o valor de tipo endereço é uma chave estrangeira na tabela tipo_endereco. Com isso eu queria entrar com o nome do tipo_endereco nesta função, realizar uma busca na tabela, para descobrir o código do tipo_endereco, e adicionar este valor ao campo tipo_endereco da tabela clientes..


Alguma luz por ai???