[firebase-br] sql pra movimentação de caixa

Reijanio Nunes Ribeiro rnribeiro em gmail.com
Sex Mar 6 09:40:28 -03 2009


desculpe depois que postei é que fui prestar atenção que nessa parte
"está ligada na Query Diario pelo DataSource."

2009/3/6 Andrei Luís <compuvale.software em gmail.com>

> Reijanio, não é campo, T2 é o alias da tabela caixa.
>
> []
> Andrei
>
> 2009/3/6 Reijanio Nunes Ribeiro <rnribeiro em gmail.com>
>
> > t2  a que champo se refere esse nome
> >
> > 2009/3/6 Zottis <zottissistemas em brturbo.com.br>
> >
> > > eu uso assim:
> > >
> > > CREATE GENERATOR GEN_CAIXA_ID;
> > >
> > > CREATE TABLE CAIXA (
> > >   CAIXANO        PK /* PK = INTEGER NOT NULL */,
> > >   DATA           DATAS /* DATAS = DATE */,
> > >   LOJANO         PK /* PK = INTEGER NOT NULL */,
> > >   USUARIONO      PK /* PK = INTEGER NOT NULL */,
> > >   REGISTRONO     PK /* PK = INTEGER NOT NULL */,
> > >   DESCRIMINACAO  VAR_CHAR_180 /* VAR_CHAR_180 = VARCHAR(180) */,
> > >   ENTRADA        MOEDA DEFAULT 0 /* MOEDA = NUMERIC(15,2) */,
> > >   SAIDA          MOEDA DEFAULT 0 /* MOEDA = NUMERIC(15,2) */,
> > >   HORARIO        VARCHARTIME /* VARCHARTIME = VARCHAR(8) */,
> > >   EXCLUIDO_POR   INTEIRO /* INTEIRO = INTEGER */,
> > >   DATA_EXCLUSAO  DATAS /* DATAS = DATE */,
> > >   HORA_EXCLUSAO  TEMPO /* TEMPO = TIME */,
> > >   DELETADO       PAGO_NOT_NULL /* PAGO_NOT_NULL = VARCHAR(1) DEFAULT
> 'N'
> > > NOT NULL CHECK (value in ('N' , 'S')) */,
> > >   REVERSO_NO     INTEIRO /* INTEIRO = INTEGER */
> > > );
> > >
> > >
> > >
> > >
> > >
> > > ALTER TABLE CAIXA ADD CONSTRAINT PK_CAIXA PRIMARY KEY (CAIXANO);
> > >
> > > ALTER TABLE CAIXA ADD CONSTRAINT FK_CAIXA_REG_NO FOREIGN KEY
> (REGISTRONO)
> > > REFERENCES REGISTROS (REGISTRONO) ON UPDATE CASCADE;
> > >
> > >
> > > CREATE INDEX CAIXA_IDX_DATA ON CAIXA (DATA);
> > > CREATE INDEX CAIXA_IDX_REVERSO ON CAIXA (REVERSO_NO);
> > >
> > > SET TERM ^ ;
> > >
> > >
> > >
> > > /* Trigger: CAIXA_BI */
> > > CREATE TRIGGER CAIXA_BI FOR CAIXA
> > > ACTIVE BEFORE INSERT POSITION 0
> > > AS
> > > BEGIN
> > >  IF (NEW.CAIXANO IS NULL) THEN
> > >   NEW.CAIXANO = GEN_ID(GEN_CAIXA_ID,1);
> > > END
> > > ^
> > >
> > >
> > > SET TERM ; ^
> > >
> > > e na busca faço assim:
> > > tenho uma query com os saldos(Calculos) e outra com os lançamentos do
> dia
> > >
> > > o SQL do  Diario:
> > >
> > > 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
> > >>
> > > Where  T2.DELETADO = 'N' and T2.Data = :DataInicial
> > > Group By T2.Data
> > > Order by T2.Data
> > >
> > > e o Sql do Caixa:
> > >
> > > select C.CAIXANO,
> > >          C.DATA,
> > >          C.LOJANO,
> > >          C.USUARIONO,
> > >          C.REGISTRONO,
> > >          C.DESCRIMINACAO,
> > >          C.ENTRADA,
> > >          C.SAIDA,
> > >          C.HORARIO,
> > >          S.LOGIN AS USUARIO,
> > >          C.EXCLUIDO_POR,
> > >          C.DATA_EXCLUSAO,
> > >          C.HORA_EXCLUSAO,
> > >          C.DELETADO,
> > >          C.REVERSO_NO
> > >
> > > from CAIXA C,  SENHAS S
> > > where  C.USUARIONO = S.SENHANO AND
> > > C.data =:data AND C.DELETADO = 'N'
> > > order by C.Horario
> > > está ligada na Query Diario pelo DataSource.
> > >
> > > Espero que te ajude.
> > >
> > >
> > >
> > >
> > >
> > > Zottis(TeamFB Users)
> > >
> > > 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: "Reijanio Nunes Ribeiro" <
> > > rnribeiro em gmail.com>
> > > To: "FireBase" <lista em firebase.com.br>
> > > Sent: Friday, March 06, 2009 9:09 AM
> > > Subject: Re: [firebase-br] sql pra movimentação de caixa
> > >
> > >
> > >
> > > isso mesmo
> > >
> > > 2009/3/5 Zottis <zottissistemas em brturbo.com.br>
> > >
> > >  o que vc quer saber?
> > >> tipo, saldo anterior, saldo atual, total de entradas, saidas, etc?
> > >>
> > >> Zottis(TeamFB Users)
> > >>
> > >> 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: "Reijanio Nunes Ribeiro" <
> > >> rnribeiro em gmail.com>
> > >> To: "FireBase" <lista em firebase.com.br>
> > >> Sent: Thursday, March 05, 2009 10:37 AM
> > >> Subject: [firebase-br] sql pra movimentação de caixa
> > >>
> > >>
> > >> alguem poderia me dar uma ideia de como, de como se faze um sql pra
> > >> movimentação de caixa
> > >> pois to apnhando disso, grato pela atenção
> > >> ______________________________________________
> > >>
> >
> ______________________________________________
> 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