quick Report - Mesma linha tabelas diferentes? Por favor!

23/03/2003

0

Srs,

Gostaria de vossa ajuda pois ainda não sei como resolver este probleminha no quick Report!

Tenho duas querys

1ª query - Produto.DB

[color=red:4f8adc1a20]Cod_Prdt[/color:4f8adc1a20]--|--Nome---|
----[color=red:4f8adc1a20]01[/color:4f8adc1a20]------|--xxxx----|
----[color=red:4f8adc1a20]02[/color:4f8adc1a20]------|---xxx----|

2ª query - Quantidade.DB

Cod_Qntd--|--[color=red:4f8adc1a20]Cod_Prdt[/color:4f8adc1a20]--|--Quantidade|
----xx-------|------[color=red:4f8adc1a20]01[/color:4f8adc1a20]------|-------aaa---|
----xx-------|------[color=red:4f8adc1a20]02[/color:4f8adc1a20]------|-------bbb---|

No relatório, preciso que cada linha contenha o produto seguido por sua respectiva quantidade. o problema é que a segunda query [quantidade] so vem a primeira linha, que fiaca altorepetindo.

Assim:

-Produto--------------------|Quantidade-|
Produto 01 ----------------|--aaa
Produto 02 ----------------|--aaa [qd deveria ser bbb]

Já tentei alguma resposta pareceida aqui no clube mas não consegui nada.
Não tenho a menor idéia de como faço isto.

Alguém pode me ajudar?

Obrigado

Uma abrço


Aurino003

Aurino003

Responder

Posts

23/03/2003

Thematrix:reloaded

O erro pode estar no comando SQL da sua Query, que deveria estar assim:

Select Q.Codido,P.Descricao,Q.Quantidade from Produto P, Quantidade Q
WHERE Q.CODIGO = P.CODIGO


Responder

23/03/2003

Anonymous

Sua query2 ficaria assim:

select Cod_Prdt, Quantidade
from Quantidade.DB
where Cod_Prdt = :Cod_Prdt


Conecte a propriedade DataSource da query2 ao datasource ligado a query1.

Agora sua query2 estara mostrando a quantidade referente ao produto posicionado na query1.


Responder

23/03/2003

Aurino003

Sua query2 ficaria assim: select Cod_Prdt, Quantidade from Quantidade.DB where Cod_Prdt = :Cod_Prdt Conecte a propriedade DataSource da query2 ao datasource ligado a query1. Agora sua query2 estara mostrando a quantidade referente ao produto posicionado na query1.


Gente, valeu pela dica mas não funcionou de alguma forma o programa insiste que o parâmetro :co_prdt não existe; o problema é que existe...

veleu


Responder

23/03/2003

Anonymous

no teu caso vai ter que utilizar a dica dada por TheMatrix:Reloaded


Select Q.Codido,P.Descricao,Q.Quantidade from Produto P, Quantidade Q
WHERE Q.CODIGO = P.CODIGO


Responder

23/03/2003

Bilouro

Manda a sua script que nós dá um geitin...

[]´s


Responder

23/03/2003

Adilsond

[quote:caafa8bf8b=´Anonymous´]Sua query2 ficaria assim: select Cod_Prdt, Quantidade from Quantidade.DB where Cod_Prdt = :Cod_Prdt Conecte a propriedade DataSource da query2 ao datasource ligado a query1. Agora sua query2 estara mostrando a quantidade referente ao produto posicionado na query1.


Gente, valeu pela dica mas não funcionou de alguma forma o programa insiste que o parâmetro :co_prdt não existe; o problema é que existe...

veleu[/quote:caafa8bf8b]

Cod_Prdt é o campo que se encontra na query1. Se não for este o nome então vove deve colocar após os : o nome do campo que indica o código do produto na query1.


Responder

23/03/2003

Aurino003

[quote:9817e6eff5=´aurino003´][quote:9817e6eff5=´Anonymous´]Sua query2 ficaria assim: select Cod_Prdt, Quantidade from Quantidade.DB where Cod_Prdt = :Cod_Prdt Conecte a propriedade DataSource da query2 ao datasource ligado a query1. Agora sua query2 estara mostrando a quantidade referente ao produto posicionado na query1.


Gente, valeu pela dica mas não funcionou de alguma forma o programa insiste que o parâmetro :co_prdt não existe; o problema é que existe...

veleu[/quote:9817e6eff5]

Cod_Prdt é o campo que se encontra na query1. Se não for este o nome então vove deve colocar após os : o nome do campo que indica o código do produto na query1.[/quote:9817e6eff5]


Obrigado pelo toque mas isto já foi corrigido o campo é Cod_marca, mas o problema persiste.

Obrigado pela ajuda.

o Código completo é:

As tabelas Paradox7 contém este campos:

Produtos.DB

Cod_marca
Numero_Lote
Empresa
Nome_Fantasia
Numero_Serie
Concentração
UI_Dose
Data_Fabricacao
Data_Validade
Reg_em_Data
Reg_em_Hora
Reg_Por




QuantidadeFlex.DB

Cod_Quant_Flex
Cod_Produto3
Quantidade_Flex




Se relacionam pelo Cod_marca e Cod_Produto3, respectivamente.


Já tentei várias formas de solucionar a questão mas não consegui!

um detalhe, sou meio novo nesta área...




[ QRelatorio1 - DSRelatorio1 e QRelatorio2 - DSRelatorio2]


procedure TfrmCONTROLE_RELAT.btnVERClick(Sender: TObject);

Var V1 : Integer;

begin

V1 := rdgOPCAO.ItemIndex;

Case V1 of

0 : begin
with DM.QRelatorio1 do
begin
Active:=False;
SQL.Clear;
SQL.Add(´Select * From Produto.DB´);
Active:=True;

end;

with DM.QRelatorio2 do
begin
Active:=False;
SQL.Clear;
SQL.Add(´Select * From QuantidadeFlex.DB Where Cod_Produto3 = :Cod_marca´);
Active:=True;
end;

frmRelat_Fator_Reg.qkrtFATOR_REG.Preview;

end

else

end;

end;


Um abraço!


Responder

23/03/2003

Adilsond

O problema é que voce não adicionou os fields em sua query. Coloque o sql na propriedade sql de sua query1. Clique com o botão direito sobre a mesma e clique em add fields, adicone os campos e pronto.


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar