2009/12/21 Everson Barbosa <[email protected]>:
>      Primeiramente desculpe pelo código 'arcaico'. Na verdade a função
> executa sem erros, mas na chamada da função onde deveria retornar true se o
> resultado fosse correto, retorna false (estou tentando realizar a chamada da
> função de duas formas). A função que eu chamo dentro desta função, executa
> normalmente sozinha. Por exemplo 'select gera_cnpj_faixa(10)'. Desde já
> agradeço.
>
> CREATE OR REPLACE FUNCTION gera_faixas_insere_farm(faixas integer[])

                                             ^^^^^^

> RETURNS boolean AS
> $gera_faixas_insere_farm$
> DECLARE
>     comando text;
>     faixas integer[];
        ^^^^^^

>     contador integer;
>
> BEGIN
>    truncate table tb_cnpj_faixa;
>    contador := 1;
>    while (contador <= array_upper(faixas,1)) loop
>        comando:= 'select gera_cnpj_faixa(' || faixas[contador] || ')';
>        execute comando;
>        contador := contador + 1;
>    end loop;
> return found;
> END;
> $gera_faixas_insere_farm$ language plpgsql;
>
> ----------------------------
> Chamadas da função...duas tentativas:
>
> 1) select gera_faixas_insere_farm('{01,2,3,4,5,6,7,8,9,10,11}');
> 2) select gera_faixas_insere_farm(array[01,02,03,04]);
>


Repare que você declarou faixa duas vezes.

Osvaldo
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a