Erro XSQLDA ao Executar procedure
Pessoa bom dia. Tenho um projeto com mais de 100 procedures que estava no delphi 10 Seatle. Migrei o projeto para o delphi 10.3 e agora ao executar qualquer procedure sempre recebo o erro "XSQLDA index out of Range". Não se trata de erro no projeto pois no seatle funciona.
Uso componente interbase e é inviável substituir todos os componentes do projeto.
Nesse caso estou usando IBDataBase, Transacion e IBStorecProc que é onde ocorre o problema.
Código.
execprocedure.StoredProcName := 'SP_TESTE';
execprocedure.ParamByName('ID').AsInteger := 1;
execprocedure.ExecProc;
usando execprocedure.Params[0]... Também ocorre o erro.
O erro sempre ocorre ao definir o valor para o primeiro parâmetro independe da procedure. Lembrando, "Não se trata de erro no código". Acredito que seja algum erro nativo delphi ou até mesmo no componente StoredProc.
Alguem teria alguma sugestão?
Uso componente interbase e é inviável substituir todos os componentes do projeto.
Nesse caso estou usando IBDataBase, Transacion e IBStorecProc que é onde ocorre o problema.
Código.
execprocedure.StoredProcName := 'SP_TESTE';
execprocedure.ParamByName('ID').AsInteger := 1;
execprocedure.ExecProc;
usando execprocedure.Params[0]... Também ocorre o erro.
O erro sempre ocorre ao definir o valor para o primeiro parâmetro independe da procedure. Lembrando, "Não se trata de erro no código". Acredito que seja algum erro nativo delphi ou até mesmo no componente StoredProc.
Alguem teria alguma sugestão?
Antonelly Silva
Curtidas 0
Respostas
Emerson Nascimento
21/12/2022
veja se isto te ajuda:
https://docwiki.embarcadero.com/InterBase/2020/en/Creating_Parameters_at_Runtime
https://docwiki.embarcadero.com/InterBase/2020/en/Creating_Parameters_at_Runtime
GOSTEI 0
Antonelly Silva
21/12/2022
veja se isto te ajuda:
https://docwiki.embarcadero.com/InterBase/2020/en/Creating_Parameters_at_Runtime
Dessa forma não funciona. Preciso preservar o ParamByName, por que é inviável o retrabalho que eu teria que fazer no projeto para alterar todas as procedures presentes nele que já estavam funcionando no delphi seatle.
https://docwiki.embarcadero.com/InterBase/2020/en/Creating_Parameters_at_Runtime
GOSTEI 0
Emerson Nascimento
21/12/2022
se você está indicando a stored procedure em tempo de execução, como o componente vai saber quais são os parâmetros?
de qualquer modo, segue outra dica:
https://docwiki.embarcadero.com/InterBase/2020/en/Preparing_and_Executing_a_Stored_Procedure
execprocedure.StoredProcName := 'SP_TESTE'; execprocedure.ParamByName('ID').AsInteger := 1; execprocedure.ExecProc;
de qualquer modo, segue outra dica:
https://docwiki.embarcadero.com/InterBase/2020/en/Preparing_and_Executing_a_Stored_Procedure
GOSTEI 0