execute statement
04/11/2009
0
Olá galera do firebird da um help aqui por favor.
Preciso que vocês registrem essa procedure no banco de vocêseu uso IBExpert.
Meu banco de dados é multi-empresa por isso. Por isso que tenho mais de 1 generator.
CREATE SEQUENCE NUMERO_NF_EMP_1; CREATE SEQUENCE NUMERO_NF_EMP_2; ALTER SEQUENCE NUMERO_NF_EMP_1 RESTART WITH 0;
ALTER SEQUENCE NUMERO_NF_EMP_2 RESTART WITH 0; CREATE PROCEDURE LIXO ( xemp varchar(20) ) returns ( notafiscal integer) as declare variable nota varchar(20); declare variable sentenca varchar(3000); declare variable ngenerator varchar(50); begin ngenerator = 'numero_nf_emp_'||:xemp; Sentenca = 'SELECT GEN_ID(' || :ngenerator || ', 1) FROM RDB$DATABASE'; execute statement sentenca into :nota; notafiscal = cast(nota as integer); suspend; end
quando eu depuro essa procedure ela executa blz, preenche as variáveis como devem ser preenchidas, mas quando executo ela com F9 coloca o parametro de entrada. Dai ela ocorre o seguinte erro.
----------------------------------------------------------------------------Unsuccessful execution caused by an unavailable resource. Variable type (position 0) in EXECUTE STATEMENT 'select gen_id(numero_nf_emp_1,1' INTO does not match returned column type.
At procedure 'SP_NUMERA_NF' ----------------------------------------------------------------------------
Alguém que usa stored procedure por favor dal um help ai....galera..
Preciso que vocês registrem essa procedure no banco de vocêseu uso IBExpert.
Meu banco de dados é multi-empresa por isso. Por isso que tenho mais de 1 generator.
CREATE SEQUENCE NUMERO_NF_EMP_1; CREATE SEQUENCE NUMERO_NF_EMP_2; ALTER SEQUENCE NUMERO_NF_EMP_1 RESTART WITH 0;
ALTER SEQUENCE NUMERO_NF_EMP_2 RESTART WITH 0; CREATE PROCEDURE LIXO ( xemp varchar(20) ) returns ( notafiscal integer) as declare variable nota varchar(20); declare variable sentenca varchar(3000); declare variable ngenerator varchar(50); begin ngenerator = 'numero_nf_emp_'||:xemp; Sentenca = 'SELECT GEN_ID(' || :ngenerator || ', 1) FROM RDB$DATABASE'; execute statement sentenca into :nota; notafiscal = cast(nota as integer); suspend; end
quando eu depuro essa procedure ela executa blz, preenche as variáveis como devem ser preenchidas, mas quando executo ela com F9 coloca o parametro de entrada. Dai ela ocorre o seguinte erro.
----------------------------------------------------------------------------Unsuccessful execution caused by an unavailable resource. Variable type (position 0) in EXECUTE STATEMENT 'select gen_id(numero_nf_emp_1,1' INTO does not match returned column type.
At procedure 'SP_NUMERA_NF' ----------------------------------------------------------------------------
Alguém que usa stored procedure por favor dal um help ai....galera..
Cleiton Maciel
Curtir tópico
+ 0
Responder
Posts
04/11/2009
Cleiton Maciel
Galera gostariad de fechar o CHAMADO.
Pesquisando em outra lista com ajuda dos colegas descobrir que pra funcionar essa procedure
teria que atualizar a versão do firebird para versão 2.1.
Obrigado.
Pesquisando em outra lista com ajuda dos colegas descobrir que pra funcionar essa procedure
teria que atualizar a versão do firebird para versão 2.1.
Obrigado.
Responder
Clique aqui para fazer login e interagir na Comunidade :)