[firebase-br] OFF TOPIC - usar STORED PROCEDURE no DELPHI
Luiz Carlos
lcarlos2000 em bol.com.br
Seg Jul 25 12:25:28 -03 2011
Valeu YANISLEY, seu codigo funcionou e o saldo finalmente apareceu.
Grato
Luiz Carlos
----- Original Message -----
From: Yanisley Mora Ritchie
To: FireBase
Sent: Monday, July 25, 2011 11:29 AM
Subject: Re: [firebase-br] OFF TOPIC - usar STORED PROCEDURE no DELPHI
Para poder chamar um Procedure tem que usar um IBStoredProc, e os parâmetros
de entrada tem que passa-los como Param, em teu caso seria algo mais ou
menos assim,
Begin
IBSProc.StoredProcName := 'SP_SUMCONTAS';
IBSProc.ParamByName('dataini').Value :=DIA1.Date ; //datetimerpicker
IBSProc.ParamByName('datafin').Value :=DIA2.Date ; //datetimerpicker
IBSProc.ExecProc;
edsaldo.Text:= CurrtoStr(IBSProc.ParamByName('total').AsCurrency);
End;
Em 25 de julho de 2011 11:07, Luiz Carlos <lcarlos2000 em bol.com.br> escreveu:
> Colega, criei a procedure da seguinte forma:
>
>
> SET TERM ^ ;
>
> CREATE OR ALTER PROCEDURE SP_SUMCONTAS (
> dataini date,
> datafin date)
> returns (
> total numeric(15,2))
> as
> begin
> for select sum(VL_RECEBER) - sum(VL_PAGAR) from contas
> where DT_VCTO between :dataini and :datafin
> into :total do
> begin
>
> suspend;
> end
> end^
>
> Depois no delphi coloquei o codigo abaixo em um BUTTON:
>
> Var
> dataini: TDATE;
> datafin: TDATE;
>
> Begin
>
> dataini := DIA1.Date ; //datetimerpicker
> datafin := DIA2.Date ; //datetimepicker
>
> IBSQL1.SQL.Text := 'Select total from SP_SUMCONTAS';
>
> edsaldo.Text:= CurrtoStr(IBSQL1.ParamByName('total').AsCurrency);
>
> End;
>
> Porem qdo clico no button dá o seguinte erro:
>
> IMPUT PARAMETER MISMATCH FOR PROCEDURE SUMCONTAS
>
> O que estou fazendo de errado?
>
> Grato
>
> Luiz Carlos
>
> ----- Original Message -----
> From: Tecnobyte Informática
> To: FireBase
> Sent: Saturday, July 23, 2011 9:42 PM
> Subject: Re: [firebase-br] OFF TOPIC - usar STORED PROCEDURE no DELPHI
>
>
> Boa noite
>
> Eu uso Delphi 7 + IBX + Firebird 2.1 e uso IBSQL ou IBDataSet, dependendo
> da
> necessidade e do tipo de procedure.
>
> Exemplos:
>
> - Para procedure selecionável:
>
> IBSQL1.SQL.Text := 'SELECT * FROM SP_NomeProcedure(:Parametro1,
> :Parametro2,
> ...)';
> IBSQL1.ParamByName('Parametro1').AsInteger := Valor;
> ...
>
>
> - Para procedure executável:
> IBSQL1.SQL.Text := 'EXECUTE PROCEDURE SP_NomeProcedure(:Parametro1,
> :Parametro2, ...)';
> IBSQL1.ParamByName('Parametro1').AsInteger := Valor;
> ...
>
>
> Atenciosamente.
>
> Daniel P. Guimarães
> Tecnobyte Informática
> www.tecnobyte.com.br
>
> -----Mensagem Original-----
> From: Luiz Carlos
> Sent: Saturday, July 23, 2011 6:28 PM
> To: FireBase
> Subject: [firebase-br] OFF TOPIC - usar STORED PROCEDURE no DELPHI
>
> Olá,
>
> Gostaria de saber como faço para chamar uma STORED PROCEDURE pelo DELPHI
> 7?
>
> Grato
>
> Luiz Carlos
>
>
> ______________________________________________
> 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
> ______________________________________________
> 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
>
______________________________________________
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