[firebase-br] RES: RES: Procedure

Jose Luiz de Medeiros joseluiz em medeirosinfor.com
Sex Fev 5 19:32:35 -03 2010


Colega..

Não funcionou..

Jose Luiz

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Jose Aparecido da Silva
Enviada em: sexta-feira, 5 de fevereiro de 2010 13:32
Para: 'FireBase'
Assunto: [firebase-br] RES: Procedure

Se você usa Delphi faz assim:
Acrescenta o ID do cliente no Retorno da Procedure e usa o join para trazer
os dados.
Ex:
Select sp.* from CLIENTES c
Left outer join SP_CALCULACD(c.ID) sp on c.ID = sp.ID

[ ]'s
Jose Aparecido da Silva
Fasystem

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Isael Faria Junior
Enviada em: sexta-feira, 5 de fevereiro de 2010 11:46
Para: FireBase
Assunto: Re: [firebase-br] Procedure

SIGNIFICA QUE O SEU SELECT ESTA RETORNADO MAIS DO QUE O NUMERO ESPERADO 
DE LINHAS,
OU SEJA, ELE ESPERA UM  E RETORNA > 1.
VC TEM DUAS SOLUÇÕES OU CORRIGE O SELECT PARA TRAZER UM RESULTADO SÓ, OU 
COLOCAR O SELECT EM UM FOR


joseluiz em medeirosinfor.com escreveu:
> Amigo, desculpa a minha ignorancia mas ainda tenho o mesmo erro:
>
> Testei assim e continua dando o erro: Execute procedure
SP_calculacd(select id from clientes);
>
> o erro é:   multiple rows in singleton select
>
>
>
> CREATE PROCEDURE SP_CALCULACD (
>
>     id integer)
>
>  returns (
>
>     apagar numeric(12,2),
>
>     areceber numeric(12,2),
>
>     situacao numeric(12,2))
>  as
>
>  declare variable debito numeric(12,2);
>
>  declare variable credito numeric(12,2);
>  begin
> for
>     select cli_codigo
>   from clientes
>   into :wcodcli
>   do
>     begin
>         select sum(d.valor_parcela)
>   from contasreceber d
>   where d.id_cliente = :wcodcli
>   into :debito;
>
>  select sum(c.valor)
>
>   from caixa c
>
>   where c.id_cliente = :wcodcli
>
>   into :credito;
>     end
>
>   apagar = :debito;
>
>  areceber = :credito;
>
>  situacao = :debito - :credito;
>
>  suspend;
>
>  end^
>
>
> Grato: Jose Luiz
> ----- Original Message -----
> From: NextCorp Informática
> To:  "FireBase" <lista em firebase.com.br>
> Sent:  Fri, 5 Feb 2010 09:56:08 -0200
> Subject: Re: [firebase-br] Procedure
>
> OI Jose Luiz
>
> Coloca na sua SP. Dá uma olhada abaixo.
>
> Não testei.
>
> Washington
>
> CREATE PROCEDURE SP_CALCULACD (
>   
>>>    id integer)
>>>
>>> returns (
>>>
>>>    apagar numeric(12,2),
>>>
>>>    areceber numeric(12,2),
>>>
>>>    situacao numeric(12,2))
>>>
>>> as
>>>
>>> declare variable debito numeric(12,2);
>>>
>>> declare variable credito numeric(12,2);
>>>
>>> begin
>>>
>>>       
>  for
>     select cli_codigo
>    from clientes
>    into :wcodcli
>   do
>      begin
>          select sum(d.valor_parcela)
>   
>>>   from contasreceber d
>>>
>>>   where d.id_cliente = :wcodcli
>>>
>>>   into :debito;
>>>
>>>
>>>
>>> select sum(c.valor)
>>>
>>>   from caixa c
>>>
>>>   where c.id_cliente = :wcodcli
>>>
>>>   into :credito;
>>>       
>     end
>   
>>> apagar = :debito;
>>>
>>> areceber = :credito;
>>>
>>> situacao = :debito - :credito;
>>>
>>> suspend;
>>>
>>> end^
>>>       
>
>
> --------------------------------------------------
> From: <joseluiz em medeirosinfor.com>
> Sent: Friday, February 05, 2010 8:53 AM
> To: <lista em firebase.com.br>
> Subject: [firebase-br] Procedure
>
>   
>> Washington, obrigado pelta atenção..
>>
>> Eu colocaria o for select do na procedure ou na execução dela?
>>
>>
>> Grato:
>> Jose Luiz
>>
>> ----- Original Message -----
>> From: NextCorp Informática
>> To:  "FireBase" <lista em firebase.com.br>
>> Sent:  Fri, 5 Feb 2010 01:59:41 -0200
>> Subject: Re: [firebase-br] (sem assunto)
>>
>> Caro colega
>>
>> Tenta assim
>>
>> for
>>    select cli_codigo
>> from clientes
>> into :wcodcli
>> do
>>   begin
>>            select sum(d.valor_parcela)
>>            from contasreceber d
>>            where d.id_cliente = :wcodcli
>>            into :debito
>>   end;
>>
>> assim ele le a sua tabela de clientes e dentro do begin end vc executa os
>> selects
>>
>> Atenciosamente
>>
>> Washington André Muller da silva
>>
>> #######################
>> NextCorp Informática Ltda
>> www.nextcorp.com.br
>> nextcorp em nextcorp.com.br
>> nextcorp em terra.com.br
>> 0xx-(51)-3037-6605
>> #######################
>> --------------------------------------------------
>> From: "Jose Luiz de Medeiros" <joseluiz em medeirosinfor.com>
>> Sent: Thursday, February 04, 2010 11:45 PM
>> To: "lista em firebase. com. br" <lista em firebase.com.br>
>> Subject: [firebase-br] (sem assunto)
>>
>>     
>>> Colegas.
>>>
>>>
>>>
>>> Tenho essa procedure:
>>>
>>>
>>>
>>> SET TERM ^ ;
>>>
>>>
>>>
>>>       
>>> SET TERM ; ^
>>>
>>>
>>>
>>> Preciso saber a situação de todos os clientes de uma vez, nessa
procedure
>>> coloco o id de um cliente ela me retorna
>>>
>>> O debito o credito e a situação daquele cliente.
>>>
>>> Sera que teria jeito de saber a situação de todos de uma vez?
>>>
>>>
>>>
>>> Tentei assim mas não deu:
>>>
>>>
>>>
>>> Execute procedure SP_calculacd(select id from clientes);
>>>
>>>
>>>
>>> Como sou meio cru em firebird, alguém poderia me dar uma força?
>>>
>>>
>>>
>>>
>>>
>>> Grato:
>>>
>>> Jose Luiz
>>>
>>>
>>>
>>>
>>>
>>> ______________________________________________
>>> 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
>>>
>>> E-mail verificado pelo Terra Anti-Spam.
>>> Para classificar esta mensagem como spam ou não spam, visite
>>>
http://ecp.terra.com.br/cgi-bin/reportspam.cgi?+_d=SCY0NzQ4MTEjcGVybSF0ZXJyY
SYxLDEyNjUzMzUyMjYuOT
>>>       
> Y
>   
>> 5NTk1LjQ1MjAuY2FicmV0b24udGVycmEuY29tLDQzMzE=TerraMail
>>     
>>> Verifique periodicamente a pasta Spam para garantir que apenas mensagens
>>> indesejadas sejam classificadas como Spam.
>>>
>>>
>>>       
>>
>>     
>>> No virus found in this incoming message.
>>> Checked by AVG - www.avg.com
>>> Version: 8.5.435 / Virus Database: 271.1.1/2666 - Release Date: 02/03/10
>>> 19:35:00
>>>
>>>       
>> ______________________________________________
>> 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.p
>> hp?id=1107
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>>
>> E-mail verificado pelo Terra Anti-Spam.
>> Para classificar esta mensagem como spam ou não spam, visite
>>
http://ecp.terra.com.br/cgi-bin/reportspam.cgi?+_d=SCY0NzQ4MTEjcGVybSF0ZXJyY
SYxLDEyNjUzNjczNzMuNDA
>>     
> 2NjAuMzI0MDcucHJlc3Rvbi50ZXJyYS5jb20sNjgwNg==TerraMail
>   
>> Verifique periodicamente a pasta Spam para garantir que apenas mensagens
>> indesejadas sejam classificadas como Spam.
>>
>>     
>
>
>
>   
>> ______________________________________________
>> 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
>>     
>
>
>
>   
>> No virus found in this incoming message.
>> Checked by AVG - www.avg.com
>> Version: 8.5.435 / Virus Database: 271.1.1/2669 - Release Date: 02/05/10 
>> 07:35:00
>>
>>     
>
> ______________________________________________
> 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.p
> hp?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


______________________________________________
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
 

__________ Information from ESET NOD32 Antivirus, version of virus signature
database 4839 (20100205) __________

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com
 
 

__________ Information from ESET NOD32 Antivirus, version of virus signature
database 4839 (20100205) __________

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com
 






Mais detalhes sobre a lista de discussão lista