Da mesma forma que usando return explicitamente mas omitindo o $2.
create or replace function test() returns void as $$
declare
value boolean;
begin
select into value public.f_check_cpf('222222');
raise notice 'the value is %',value;
end
$$ language plpgsql;
2010/5/12 Jairo Rodrigues de Oliveira <[email protected]>
> Pessoal,
>
>
>
> Agradeço a quem puder me orientar ref. a chamada de uma
> FUNCTION para obter o valor do retorno ( paramentro tipo OUT ).
>
>
>
> Fiz a seguinte função que valida o CPF, e que será
> utilizada por uma aplicação em C#. Mesmo assim utilizarei essa função em
> outras funções no POSTGRESQL.
>
>
>
> Pergunta: Como eu faço para chamar essa função (
> f_check_cpf) obter os retorno sobre o sucesso ou não da validação do CPF (
> OUT *ret* boolean ), levando em consideração que a função possui os
> seguintes parâmetros:
>
>
>
> Grato ! Jairo !
>
>
>
> CREATE OR REPLACE FUNCTION *public.f_check_cpf*(IN par_cpf character
> varying, OUT ret boolean)
>
> RETURNS boolean AS
>
> $BODY$
>
> -- ROTINA DE VALIDAÇÃO DE CPF
>
> -- Retorna True para CPF correto e FALSE se invalido
>
> DECLARE
>
> x real;
>
> y real; --Variável temporária
>
> soma integer;
>
> dig1 integer; --Primeiro dígito do CPF
>
> dig2 integer; --Segundo dígito do CPF
>
> len integer; -- Tamanho do CPF
>
> contloop integer; --Contador para loop
>
> val_par_cpf varchar(11); --Valor do
> parâmetro
>
> BEGIN
>
>
>
> ....
>
> -Teste do CPF
>
> IF ((dig1 || '' || dig2) = substring(val_par_cpf,len-1,2))
> THEN
>
> ret = true;
>
> ELSE
>
> RAISE NOTICE 'DV do CPF Inválido: %',$1;
>
> ret = false;
>
> END IF;
>
> END;
>
> $BODY$
>
> LANGUAGE 'plpgsql' IMMUTABLE;
>
>
>
> Jairo Rodrigues de Oliveira**
>
> Tel: 11-3768-5194
>
> Cel(Oi).: 11-9486-7595
>
> Email: [email protected]
>
> * *
>
> *"Esta mensagem e seu conteúdo - inclusive anexos - são dedicados
> exclusivamente para seu(s) destinatário(s), podendo conter informações
> confidenciais e/ou legalmente privilegiadas. Qualquer modificação,
> retransmissão, disseminação, impressão ou utilização não autorizada fica
> estritamente proibida. Se você recebeu esta mensagem por engano, por favor
> informe o remetente e delete o material e as cópias de sua máquina."***
>
>
>
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>
--
[ ]'s
Shairon Toledo
http://www.google.com/profiles/shairon.toledo
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral