Erro ao executar Stored Procedure
Estou tentado executar uma procedure do FireBird via clientdataset mas o delphi esta reportando o seguinte erro: ´Database Server Error: Unexpected end of command´.
O erro so acontece quando executo a procedure pelo delphi, quando eu executo pelo banco ela roda normalmente.
Sera alguma configuracao no ClientDataSet?
Estou utilizando dbexpress para acessar os dados: TSQLStoredProcedure + TDataSetProvider +TClientDataSet
O erro so acontece quando executo a procedure pelo delphi, quando eu executo pelo banco ela roda normalmente.
Sera alguma configuracao no ClientDataSet?
Estou utilizando dbexpress para acessar os dados: TSQLStoredProcedure + TDataSetProvider +TClientDataSet
Danilodcf
Curtidas 0
Respostas
Sremulador
21/06/2006
amigo este erro ocorre quando não se esta terminando corretamente algum bloco de código, de uma boa verificada em seu código...
GOSTEI 0
Danilodcf
21/06/2006
a procedure que o acontece é essa:
BEGIN
FOR SELECT CD_PRODUTO
FROM PRODUTO
INTO :CODPRODUTO DO
BEGIN
INSERT INTO PRODUTO_ESTOQUE (CD_PRODUTO, CD_ESTOQUE, VL_PRECO_CUSTO, VL_PRECO_VENDA, QT_ESTOQUE, CK_DISPONIVEL, VL_CUSTO_MEDIO)
VALUES (:CODPRODUTO, :CODESTOQUE, 0, 0, 0, ´T´, 0);
END
END
o que poderia ta errado nela?
BEGIN
FOR SELECT CD_PRODUTO
FROM PRODUTO
INTO :CODPRODUTO DO
BEGIN
INSERT INTO PRODUTO_ESTOQUE (CD_PRODUTO, CD_ESTOQUE, VL_PRECO_CUSTO, VL_PRECO_VENDA, QT_ESTOQUE, CK_DISPONIVEL, VL_CUSTO_MEDIO)
VALUES (:CODPRODUTO, :CODESTOQUE, 0, 0, 0, ´T´, 0);
END
END
o que poderia ta errado nela?
GOSTEI 0
Eliasexner
21/06/2006
Olá amigo
provavelmente o ´;´ ates do ´END´ no final.
BEGIN
FOR SELECT CD_PRODUTO
FROM PRODUTO
INTO :CODPRODUTO DO
BEGIN
INSERT INTO PRODUTO_ESTOQUE (CD_PRODUTO, CD_ESTOQUE, VL_PRECO_CUSTO, VL_PRECO_VENDA, QT_ESTOQUE, CK_DISPONIVEL, VL_CUSTO_MEDIO)
VALUES (:CODPRODUTO, :CODESTOQUE, 0, 0, 0, ´T´, 0)[b:32c84ef4a7]´;´[/b:32c84ef4a7]
END
END
Amigo. Não testei esta procedure, mas é provavel que o erro seja este
provavelmente o ´;´ ates do ´END´ no final.
BEGIN
FOR SELECT CD_PRODUTO
FROM PRODUTO
INTO :CODPRODUTO DO
BEGIN
INSERT INTO PRODUTO_ESTOQUE (CD_PRODUTO, CD_ESTOQUE, VL_PRECO_CUSTO, VL_PRECO_VENDA, QT_ESTOQUE, CK_DISPONIVEL, VL_CUSTO_MEDIO)
VALUES (:CODPRODUTO, :CODESTOQUE, 0, 0, 0, ´T´, 0)[b:32c84ef4a7]´;´[/b:32c84ef4a7]
END
END
Amigo. Não testei esta procedure, mas é provavel que o erro seja este
GOSTEI 0
Danilodcf
21/06/2006
obrigado Elias pela atenção, mas ainda não é isso. Se eu tirar o ´;´ da erro de Sintaxe na procedure.
GOSTEI 0
Eliasexner
21/06/2006
Você não consegue executar esta procedure de um editor de Banco como IBExpert para ver se ele detecta a linha do erro?
Ou não consegue executar o SQL inserindo valores reais ao invés dos parãmetros somente para teste?
Até mais
Ou não consegue executar o SQL inserindo valores reais ao invés dos parãmetros somente para teste?
Até mais
GOSTEI 0
Danilodcf
21/06/2006
Pelo IbExpert consigo executar normalmente, sem nenhum erro.
O erro so acontece quando vou chamar essa procedure pelo Delphi.
O erro so acontece quando vou chamar essa procedure pelo Delphi.
GOSTEI 0