Query com duas tabelas

Delphi

12/03/2003

Bem, estou apanhando para fazer um relatório que conste as contas a pagar e contas e receber.
Para isto estou usando o Qreport. O QReport está apontando para uma query cuja SQL é:
select * from receber, pagar.
No Onclick do botão imprimir tem o seguinte código:

Query.active := false;
Query.Sql.clear;
Query.SQL.Add(´Select * from receber, pagar where ((vencimento >= ´+#39+ maskedit1.text+ 39+´) and (vencimento <= ´+39+ maskedit2.text+ 39+´)) and ((venccli >= ´+39+ maskedit1.text+ 39+´) and (venccli <= ´+39+ maskedit2.text+ 39+´))´);
Query.active:= true;

Onde ´vencimento´ é o vencimento das contas a pagar e ´venccli´ é o vencimento das contas a receber.

O que eu quero é que de um lado mostre somente as contas a pagar e do outro mostre as contas a receber no QREport.

Desde já agradeço a atenção


Anonymous

Anonymous

Curtidas 0

Respostas

Leonardo Wolf

Leonardo Wolf

12/03/2003

Olha Alexandre no meu pouco entendimento acho que vc esta indo pelo caminho errado. Ao fazer uma select com duas tabelas totamente distintas em uma Query.
Geralmente eu utilizo duas tabelas somente quando elas são relacionadas
as famosas ´joins´ no seu caso as tabelas são totalmente diferentes , não
existe nenhum tipo de referência de uma com a outra.

Creio que o melhor que vc poderia fazer é criar duas querys distintas
uma para cada tabela e utilizar paramentros para passar os valores da
data. Procure utilizar componentes de data tipo o DateTimePicker na Pasta Win32. vc não irá precisar usar maskEdit e pode passar o valor diretamente.

with qr.Sql do
begin
qr.Clear;
qr.Add(´Select * from contas_pagar´)
qr.Add(´where´);
qr.Add(´dt_vencimento >=:dt_inicio and´);
qr.Add(´dt_vencimento < :dt_final´);
end;
qr.ParamByName(´dt_inicio´).AsDateTime := DateTimePicker1.Date;
qr.ParamByName(´dt_final´).AsDateTime := DateTimePicker2.Date + 1;
qr.Open ou Active ;

faça o mesmo com a outra tabela



Qr.Close;


GOSTEI 0
POSTAR