Res: [delphi-br] Extrato bancário

2008-08-21 Por tôpico Luciano Calenzani Simões
Basta adaptar a setença abaixo para os nomes de tabela e campos que estão no 
seu banco. Essa setença foi testada em Sybase SQL Anywhere 9.
Outra coisa, se o campo de valor do débito já estiver com o sinal de negativo, 
basta trocar os - (sinal de subtração) por um + (sinal de adição).

select data, coalesce(sum(debito), 0) debito, 
coalesce(sum(credito),0) credito, 
coalesce((select sum(credito) - sum(debito)  from teste as testesaldo where 
data  teste.data ), 0) - debito + credito as saldo
from teste
group by data
order by data

 Luciano Calenzani Simões





- Mensagem original 
De: oscarnjr [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Quinta-feira, 21 de Agosto de 2008 9:25:32
Assunto: [delphi-br] Extrato bancário


Estou precisando fazer uma espécie de extrato bancário,
Na tabela valores tenho os campos tbCredito, tbdebito, etc

Gostaria de saber como posso mostrar no formato abaixo

Credito Debito  Saldo   Data
1000,00 Null  1000,00   05/08/2008
Null   200,00800,00  06/08/2008
300,00  Null   1100,00  10/08/2008

Eu não tenho o campo SALDO na tabela.
Como posso fazer isso?


  Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

[As partes desta mensagem que não continham texto foram removidas]



Res: [delphi-br] Extrato bancário

2008-08-21 Por tôpico Luciano Calenzani Simões
Alison, o saldo que o colega citou, é igual a um extrato de conta corrente, são 
os valores do dia somados aos valores de todos os dias anteriores. Da forma que 
você sugeriu, só será exibido a soma dos lançamentos do dia.

 Luciano Calenzani Simões





- Mensagem original 
De: Alison Zen [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Quinta-feira, 21 de Agosto de 2008 9:51:46
Assunto: Re: [delphi-br] Extrato bancário


Bom dia.

No próprio select vc pode mondar uma coluna com o nome de saldo.

faça assim:

select
credito,
debito,
(credito-debito) as saldo,
data
from
nome da tabela que conta os atibutos


  Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

[As partes desta mensagem que não continham texto foram removidas]



RES: [delphi-br] Extrato bancário

2008-08-21 Por tôpico Zote
Primeira coisa, qual o seu banco de dados?

É que podemos usar recursos do banco pra te ajudar. No sqlanywhere, seria
bem fácil.

 

Zote

http://gofrom.us

 

De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em
nome de oscarnjr
Enviada em: quinta-feira, 21 de agosto de 2008 09:26
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Extrato bancário

 

Estou precisando fazer uma espécie de extrato bancário,
Na tabela valores tenho os campos tbCredito, tbdebito, etc

Gostaria de saber como posso mostrar no formato abaixo

Credito Debito Saldo Data
1000,00 Null 1000,00 05/08/2008
Null 200,00 800,00 06/08/2008
300,00 Null 1100,00 10/08/2008

Eu não tenho o campo SALDO na tabela.
Como posso fazer isso?

 



[As partes desta mensagem que não continham texto foram removidas]



RES: [delphi-br] Extrato bancário

2008-08-21 Por tôpico Zote
Aproveitando que o Luciano também usa o ASA, montei o exemplo abaixo usando
a versão 9.

 

Nele, faço union all na mesma tabela (mas separando as linhas) pra simular o
uso de 2 tabelas conforme foi descrito.

Esse union, gera uma view virtual, chamada de f. Depois faço no select nesta
view usando as funções de OLAP.

 

select data, deb, cred, sum(coalesce(deb, cred)) over (order by id range
between unbounded preceding and current row) as saldo

from (

select id, data, null deb, valor cred

from Movimentos

where valor = 100.0

union all

select id, data, valor * -1 deb, null cred

from Movimentos

where valor  100.0

) f

 

Para testar, basta criar uma tabela com esta estrutura e fazer alguns
inserts:

Create table Movimentos

(

  id integer not null default autoincrement,

  Data date not null default current date,

  Valor numeric(10,2) not null default 0,

  Primary key (id)

)

 

Abraço

 

--

José Henrique (Zote)

Analista de TI

Bludata Software

 

De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em
nome de Luciano Calenzani Simões
Enviada em: quinta-feira, 21 de agosto de 2008 09:49
Para: delphi-br@yahoogrupos.com.br
Assunto: Res: [delphi-br] Extrato bancário

 

Basta adaptar a setença abaixo para os nomes de tabela e campos que estão no
seu banco. Essa setença foi testada em Sybase SQL Anywhere 9.
Outra coisa, se o campo de valor do débito já estiver com o sinal de
negativo, basta trocar os - (sinal de subtração) por um + (sinal de adição).

select data, coalesce(sum(debito), 0) debito, 
coalesce(sum(credito),0) credito, 
coalesce((select sum(credito) - sum(debito) from teste as testesaldo where
data  teste.data ), 0) - debito + credito as saldo
from teste
group by data
order by data

Luciano Calenzani Simões

- Mensagem original 
De: oscarnjr [EMAIL PROTECTED] mailto:oscarnjr%40yahoo.com.br 
Para: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br 
Enviadas: Quinta-feira, 21 de Agosto de 2008 9:25:32
Assunto: [delphi-br] Extrato bancário

Estou precisando fazer uma espécie de extrato bancário,
Na tabela valores tenho os campos tbCredito, tbdebito, etc

Gostaria de saber como posso mostrar no formato abaixo

Credito Debito Saldo Data
1000,00 Null 1000,00 05/08/2008
Null 200,00 800,00 06/08/2008
300,00 Null 1100,00 10/08/2008

Eu não tenho o campo SALDO na tabela.
Como posso fazer isso? 

Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

[As partes desta mensagem que não continham texto foram removidas]

 



[As partes desta mensagem que não continham texto foram removidas]



Res: RES: [delphi-br] Extrato bancário

2008-08-21 Por tôpico Leonardo Freitag
Olá pessoal!

Estou apanhando de um componente ListView que estou utilizando para mostrar um 
mapa de mesas no meu sistema. O que ocorre é que eu utilizava o código abaixo 
para formulár o mapa a cada alteração que uma mesa era adicionada ou alterada:

procedure TfrmFrente.CompoeMapa(Sender: TObject);
Var
  List: TStringList;
  List2: TStringList;
Var
  NewItem: TListItem;
  I: Integer;
begin
  // MONTAGEM DO ARQUIVO DE TEXTO
  sqlMapaMesasIni('N', '%');
  sqlMapaMesas.First;
  List := TStringList.Create;
  While Not (sqlMapaMesas.Eof) do
begin
  List.Add(sqlMapaMesas.FieldByName('MESA_CARTAO').AsString);
  If ((Time = (sqlMapaMesas.FieldByName('ULTIMO_LANCAMENTO').Value + 
dm.sqlConfig.FieldByName('CT_MINUTOS_ALERTA').Value))) then
  // se o tempo sem atendimento for igual ou maior que o definido no config
begin
  If (vPassada  1) then
  // se for a passada 1 coloca os ícones normais
begin
  If (sqlMapaMesas.FieldByName('STATUS').AsString = 'A') then
List.Add('@' + IntToStr(1))
  else
List.Add('@' + IntToStr(0));
end
  else
  // caso contrário coloca o ícone em branco
begin
  List.Add('@' + IntToStr(3));
end;
  // se houver mesas agrupadas... adiciona no mapa
  If Not (sqlMapaAgrupadas.IsEmpty) then
begin
  While Not (sqlMapaAgrupadas.Eof) do
begin
  // se para agrupadas também for passada 1 coloca ícone padrão 
de agrupamento
  If (vPassada  1) then
begin
  List.Add(sqlMapaAgrupadas.FieldByName('MESA').AsString);
  List.Add('@' + IntToStr(2));
end
  else
  // caso contrário ícone branco
begin
  List.Add(sqlMapaAgrupadas.FieldByName('MESA').AsString);
  List.Add('@' + IntToStr(3));
end;
  sqlMapaAgrupadas.Next;
end;
end;
  //sqlMapaMesas.Next;
end
  else
  // se não tiver excedido o tempo limite do config
begin
  If (sqlMapaMesas.FieldByName('STATUS').AsString = 'A') then
List.Add('@' + IntToStr(1))
  else
List.Add('@' + IntToStr(0));
  // se houver mesas agrupadas... adiciona no mapa
  If Not (sqlMapaAgrupadas.IsEmpty) then
begin
  While Not (sqlMapaAgrupadas.Eof) do
begin
  List.Add(sqlMapaAgrupadas.FieldByName('MESA').AsString);
  List.Add('@' + IntToStr(2));
  sqlMapaAgrupadas.Next;
end;
end;
  //sqlMapaMesas.Next;
end;
  sqlMapaMesas.Next;
end;
  If (vPassada  2) then
vPassada := 2
  else
vPassada := 1;
  List.SaveToFile(ExtractFilePath(Application.ExeName) + 'Mapa.txt');
  List.Free;

  
  // MONTAGEM DO MAPA NA TELA
  lvMesas.Items.Clear;
  lvMesas.ViewStyle := vsIcon;
  sqlMapaMesasIni('N', '%');
  
//***
  // aqui ele configura o listview
  
//***
  NewItem := Nil;
  lvMesas.Items.Clear;
  List2 := TStringList.Create;
  Try
List2.LoadFromFile(ExtractFilePath(Application.ExeName) + 'Mapa.txt');
For I := 0 to List2.Count - 1 do
  If (List2[I][1] = #9) then
NewItem.SubItems.Add(Trim(List2[I]))
  else if (List2[I][1] = '@') then
NewItem.ImageIndex := StrToIntDef(List2[I][2], 0)
  else
begin
  NewItem := lvMesas.Items.Add;
  NewItem.Caption := List2[I];
end;
  Finally
List2.Free;
  end;
end;

Acontece que agora quero fazer com que uma mesa que esteja sem atendimento a X 
minutos seja apresentada com o ícone intermitente, e confesso que toh apanhando.
Minha idéia era utilizar um Timer que a cada 500 (ciclo de tempo) faria a 
conferência das mesas abertas e apenas trocaria o ícone representantes por uma 
imagem em branco dando o efeito de intermitência. Mas não tah dando muito certo.

Se alguém puder me dar uma luz, fico agradecido.

Leonardo Vinicius Freitag



  Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

[As partes desta mensagem que não continham texto foram removidas]



RES: [delphi-br] Extrato bancário

2008-08-21 Por tôpico cicero
muito boa essa dica ... 
 
 

 
 
 
Cícero Fernandes
Eng. Eletricista
Eng. de Segurança do Trabalho
CREA-SC 27.958-0
P Antes de imprimir, pense em sua responsabilidade e compromisso com o MEIO
AMBIENTE! 
 

  _  

De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em
nome de Alison Zen
Enviada em: quinta-feira, 21 de agosto de 2008 09:52
Para: delphi-br@yahoogrupos.com.br
Assunto: Re: [delphi-br] Extrato bancário



Bom dia.

No próprio select vc pode mondar uma coluna com o nome de saldo.

faça assim:

select
credito,
debito,
(credito-debito) as saldo,
data
from
nome da tabela que conta os atibutos

2008/8/21 oscarnjr [EMAIL PROTECTED] mailto:oscarnjr%40yahoo.com.br com.br

 Estou precisando fazer uma espécie de extrato bancário,
 Na tabela valores tenho os campos tbCredito, tbdebito, etc

 Gostaria de saber como posso mostrar no formato abaixo

 Credito Debito Saldo Data
 1000,00 Null 1000,00 05/08/2008
 Null 200,00 800,00 06/08/2008
 300,00 Null 1100,00 10/08/2008

 Eu não tenho o campo SALDO na tabela.
 Como posso fazer isso?

 


[As partes desta mensagem que não continham texto foram removidas]



 


[As partes desta mensagem que não continham texto foram removidas]



Re: RES: [delphi-br] Extrato bancário

2008-08-21 Por tôpico oscarnjr
O problema é que o saldo sempre estará no registro anterior, 
Credito   Debito Saldo  Data
 1000,00  0  1000,00 05/08/2008
 0  200,00   800,00 06/08/2008

Veja que o cáculo ficou na segunda linha da seguinte forma
   1000 - 200 igual 800

select
credito,
debito,
(credito-debito anterior) as saldo,
data
from
nome da tabela que conta os atibutos




--- Em delphi-br@yahoogrupos.com.br, [EMAIL PROTECTED] escreveu

 muito boa essa dica ... 
  
  
 
  
  
  
 Cícero Fernandes
 Eng. Eletricista
 Eng. de Segurança do Trabalho
 CREA-SC 27.958-0
 P Antes de imprimir, pense em sua responsabilidade e compromisso 
com o MEIO
 AMBIENTE! 
  
 
   _  
 
 De: delphi-br@yahoogrupos.com.br [mailto:delphi-
[EMAIL PROTECTED] Em
 nome de Alison Zen
 Enviada em: quinta-feira, 21 de agosto de 2008 09:52
 Para: delphi-br@yahoogrupos.com.br
 Assunto: Re: [delphi-br] Extrato bancário
 
 
 
 Bom dia.
 
 No próprio select vc pode mondar uma coluna com o nome de saldo.
 
 faça assim:
 
 select
 credito,
 debito,
 (credito-debito) as saldo,
 data
 from
 nome da tabela que conta os atibutos
 
 2008/8/21 oscarnjr [EMAIL PROTECTED] mailto:oscarnjr%
40yahoo.com.br com.br
 
  Estou precisando fazer uma espécie de extrato bancário,
  Na tabela valores tenho os campos tbCredito, tbdebito, etc
 
  Gostaria de saber como posso mostrar no formato abaixo
 
  Credito Debito Saldo Data
  1000,00 Null 1000,00 05/08/2008
  Null 200,00 800,00 06/08/2008
  300,00 Null 1100,00 10/08/2008
 
  Eu não tenho o campo SALDO na tabela.
  Como posso fazer isso?
 
  
 
 
 [As partes desta mensagem que não continham texto foram removidas]
 
 
 
  
 
 
 [As partes desta mensagem que não continham texto foram removidas]





RES: [delphi-br] Extrato bancário

2008-08-21 Por tôpico Luciano Calenzani Simões
oscarnjr, se você fizer da forma que eu e o José Henrique sugerimos, irá 
funcionar.

 Luciano Calenzani Simões





- Mensagem original 
De: oscarnjr [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Quinta-feira, 21 de Agosto de 2008 20:27:40
Assunto: Re: RES: [delphi-br] Extrato bancário


O problema é que o saldo sempre estará no registro anterior, 
Credito   Debito Saldo  Data
1000,00  0  1000,00 05/08/2008
0  200,00   800,00 06/08/2008

Veja que o cáculo ficou na segunda linha da seguinte forma
1000 - 200 igual 800


  Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

[As partes desta mensagem que não continham texto foram removidas]