[firebase-br] Stored Procedure Dinamica
Valdir Marcos
valdir.marcos em ig.com.br
Ter Ago 19 18:36:22 -03 2008
Tente fazer testes diretamente sua ferramenta de administração do
Firebird, como por exemplo:
Select * From Soma_MVF('Vendas', 123, 'A');
Em relação ao comando acima, como seria o select que você está tentando rodar?
Um abraço,
Valdir
2008/8/19, Claudio.sj em sercon.com.br <claudio.sj em sercon.com.br>:
> Ola pessoal da lista
> Eu nao costumo postar duvidas, mais venho acompanhando com frequencia a lista.
> Só que desta vez tenho um problema a ser resolvido e ainda nao consegui sair do outro lado, acontece que preciso executar uma Stored Procedure dinamica, ou seja quero passar pra SP o nome da "tabela", o codigo do "cliente", o status do movimento e ele devera me retornar uma soma de alguns valores.
>
> Nao sei se consegui expressar corretamente a minha duvida, mais estou postando a minha SP ..
>
> Agradeço a todos que poderem colaborar.
>
> vejam abaixo
> recebo 3 parametros
> tabela -> tabela a ser executada a select da soma dos campos
> codigotra -> codigo do cliente para selecao
> tiposts -> Status do movimento
>
> e devera me retornar o RESULTADO
>
> SET TERM ^ ;
>
> CREATE PROCEDURE SOMA_MVF (
> tabela varchar(50),
> codigotra varchar(50),
> tiposts char(1))
> returns (
> resultado numeric(18,2))
> as
> begin
> execute STATEMENT 'SELECT SUM(MVFVME - MVFVSE) FROM ' || tabela || ' WHERE MVFSTS <> ' || TIPOSTS || 'AND MVFCCL = ' || CODIGOTRA INTO :RESULTADO;
> if(RESULTADO IS NULL ) THEN RESULTADO = 0;
> SUSPEND;
> end^
>
> SET TERM ; ^
>
> a SP da o seguinte erro dizendo que a coluna MVFCCL nao existe na tabela;
> Invalid token.
> Dynamic SQL Error.
> SQL error code = -104.
> Token unknown - line 1, char 62.
> MVFCCL.
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
Mais detalhes sobre a lista de discussão lista