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

Responder a