[firebase-br] Duvidas SP
Zottis
zottissistemas em brturbo.com.br
Ter Fev 12 13:54:16 -03 2008
Eu Uso Direto no componente DATASET, mas acho que te ajuda
Select T2.Data,
coalesce( Sum (T2.Entrada), 0) as Entradas
,coalesce( Sum (T2.saida), 0 ) as saidas
,(select coalesce( Sum (C1.Entrada ), 0 ) from caixa C1 where
C1.data <= T2.data and C1.deletado = 'N' )
- (select coalesce( Sum (C1.Saida ), 0 ) from caixa C1 where
C1.data <= T2.data and C1.deletado = 'N' ) as Saldo
,(select coalesce( Sum (C1.Entrada ), 0 ) from caixa C1 where
C1.data < T2.data and C1.deletado = 'N' )
- (select coalesce( Sum (C1.Saida ), 0 ) from caixa C1 where
C1.data < T2.data and C1.deletado = 'N' ) as SaldoAnterior
>From Caixa T2
Group By T2.Data
Order by T2.Data
PS: eu utilizo um campo para as saídas e outro para as Entradas
Zottis
Zottis Sistemas - 2008 Ano XI
Programação Delphi/PHP/Firebird/MySQL
"Um homem só tem o direito de olhar
a um outro de cima para baixo, quando
vai ajuda-lo a levantar-se".
Gabriel Garcia Marquez
----- Original Message -----
From: "Andre Ricardo Bazan" <arbazan em gmail.com>
To: <lista em firebase.com.br>
Sent: Tuesday, February 12, 2008 1:30 PM
Subject: [firebase-br] Duvidas SP
Tenho uma Tabela de Caixa Diario com os seguintes campos:
RefCX
Data
Doc
Valor
Saldo
estou utilizando o seguinte procedimento para pegar o saldo anterior
CREATE PROCEDURE PEGA_SALDO_ANTERIOR (
DATACX TIMESTAMP)
RETURNS (
DATA TIMESTAMP,
VALOR FLOAT,
SALDO FLOAT,
D_C VARCHAR(7))
AS
DECLARE VARIABLE SALDOATUAL FLOAT;
begin
saldoatual = 0;
for
select c.data, c.valor, c.saldo, c.d_c
from caixa c
where c.data <= :datacx
Order by c.data, c.refcx
into
:data,
:valor,
:saldo,
:d_c
do
begin
if (:data is null) then
begin
suspend;
end else
begin
saldoatual = :saldo;
end
end
suspend;
end
como no select estou pedindo para ele pegar os lançamentos menores que a
data que eu digitei o ultimo lançamento, provavelmente quando este arquivo
estiver grande a busca do saldo anterior vai saturar meu servidor, entao
gostaria de saber se existe outra forma de eu pegar o saldo anterior.
______________________________________________
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