Como Montar essa SQL?

Delphi

21/10/2005

Olá pra todos

Preciso de ajuda pra montar uma SQL desse modo:
Quero que limpe a minha tabela de vendas onde as contas estão quitadas, porém existem algumas vendas que estão parceladas e o campo de parcelas está desse jeito [b:bdeff33224]01/03[/b:bdeff33224], ou seja a parcela a ser paga, com o total de parcelas, além disso, à uma data limite pra limpeza, que o usuário cita antes de começar a limpeza, e não existe nenhum campo onde me diz que a conta está quitada.

Estou usando query
D5 e Paradox


Facc

Facc

Curtidas 0

Respostas

Firekiller

Firekiller

21/10/2005

Mas então como é que você faz pra saber se a conta tá paga ou não??? Verifica o campo valor pago???


GOSTEI 0
Dart

Dart

21/10/2005

Mas vc quer apagar as pagas.
Tipo
Se vc quizer saber quando foi paga, quanto ele pago. se vc apagar nao tem como saber.
Para fazer isso vc tera de criar uma rotina nao so em SLQ.
1º Verificar se elas tem parcelas, e quantas sao.
2º Criar um novo registro dessa parcela, e dimiir o numero das parcelas
O se seja vc so ira apagar ela quando nao tiver + parcelas.

Instalo um programa feito em clipper :( (sou obrigado) q usa essa ideia.


Mas pra que vc quer apagar?


GOSTEI 0
Facc

Facc

21/10/2005

quero apagar contas quitadas, por exemplo as de 2003, mas tenho que manter akelas que ainda tem parcelas em aberto, mesmo sendo contas antigas.

realmente possuo um campo que me diz o valor a ser pago (por parcelas) e o valor quitado (tbm em parcelas), daí eu pensei, é só comparar os valores, qndo estiverem iguais limpa, se não mantem. Mas essa lógica iria limpar clientes que possuem parcelas quitadas e parcelas a serem pagas, e eu quero que qndo o cliente tiver parcela em aberto, mantenha (em contas a receber e contas recebidas) esse cliente.

Será que consegui me explicar melhor? :roll:


GOSTEI 0
Emerson Nascimento

Emerson Nascimento

21/10/2005

deveria ser algo mais ou menos assim:

delete 
from tabelaparcelas
where cliente not in
  (select distinct cliente
   from tabelaparcelas
   where isnull(valorquitado,0)=0)


se estiver usando FB, a partir de 1.5, use coalesce() ao invés de isnull().


GOSTEI 0
Facc

Facc

21/10/2005

deveria ser algo mais ou menos assim:
delete 
from tabelaparcelas
where cliente not in
  (select distinct cliente
   from tabelaparcelas
   where isnull(valorquitado,0)=0)
se estiver usando FB, a partir de 1.5, use coalesce() ao invés de isnull().


Esse SQL se aplica ao Paradox tbm??


GOSTEI 0
Facc

Facc

21/10/2005

deveria ser algo mais ou menos assim:
delete 
from tabelaparcelas
where cliente not in
  (select distinct cliente
   from tabelaparcelas
   where isnull(valorquitado,0)=0)
se estiver usando FB, a partir de 1.5, use coalesce() ao invés de isnull().



aproveitando o gancho, teria como mostrar num gauge ou progressbar o processo do SQL/Query???

Já procurei no forum, achei algumas dicas mas não funcionaram


GOSTEI 0
POSTAR