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