QuickReport como fazer um subdetail usando query?
Boa noite amigos....
vejam se podem me ajudar...
Sempre utilizei table para gerar meus relatórios, mas agora estou precisando utilizar queryes.
Enquanto utilizava table, na banda subdetail eu setava o dataset para o table (detalhe) colocava um data source no form que apontava para a tabela mestre e indicava na tabela filho para este datasource.
No componente table tinha uma propriedade masterfield que fazia a tabela(filho) se relacionar com a tabela (pai), mas na query não existe esta propriedade.
Então estou fazendo na query filho: Propr. SQL
Select * from Empresas where Cod_escritorio = :Escritorio
Na query mestre
Select * from Escritorios
Antes de abrir as queryes antes e dar o show do form(quickreport)
eu passo o seguinte valor para o paramento (:Escritorio)
frmRelatorio.qryFilha.Params[0].AsInteger := frmRelatorio.qryPaiCodigo.AsInteger;
Desta forma ao inves de aparecer todos os fornecedores e os produtos do mesmos, aparece somente um fornecedor e o produto dele, e fica repetindo no relaório todo, estes mesmo fornecedor, o numero de registros que a tabela possui.
Se puderem me ajudar com este erro ficarei muito grato.
Um grande abraço a todos...
Pablo - Marília/SP
vejam se podem me ajudar...
Sempre utilizei table para gerar meus relatórios, mas agora estou precisando utilizar queryes.
Enquanto utilizava table, na banda subdetail eu setava o dataset para o table (detalhe) colocava um data source no form que apontava para a tabela mestre e indicava na tabela filho para este datasource.
No componente table tinha uma propriedade masterfield que fazia a tabela(filho) se relacionar com a tabela (pai), mas na query não existe esta propriedade.
Então estou fazendo na query filho: Propr. SQL
Select * from Empresas where Cod_escritorio = :Escritorio
Na query mestre
Select * from Escritorios
Antes de abrir as queryes antes e dar o show do form(quickreport)
eu passo o seguinte valor para o paramento (:Escritorio)
frmRelatorio.qryFilha.Params[0].AsInteger := frmRelatorio.qryPaiCodigo.AsInteger;
Desta forma ao inves de aparecer todos os fornecedores e os produtos do mesmos, aparece somente um fornecedor e o produto dele, e fica repetindo no relaório todo, estes mesmo fornecedor, o numero de registros que a tabela possui.
Se puderem me ajudar com este erro ficarei muito grato.
Um grande abraço a todos...
Pablo - Marília/SP
Pablo_lima
Curtidas 0
Respostas
Joilson_gouveia
27/10/2003
RodLima,
Eu faço o seguinte:
1- Elaboro UMA ÚNICA query com todos os campos que vou precisar, tanto na QRBand Mestre (QRGroup) quanto na QRBand Detail, na ordem do Campo Mestre;
2-Na propriedade Expression da QRGroup eu seto o campo mestre escolhido;
3-Na QRGroup coloco os campos mestres;
4-Na QRBand Detail coloco os campos detalhes;
5-Insiro um QRBand Group Footer para os somatórios intermediários;
6-Insiro um QRBand Sumary para os somatórios globais (finais);
Eu faço o seguinte:
1- Elaboro UMA ÚNICA query com todos os campos que vou precisar, tanto na QRBand Mestre (QRGroup) quanto na QRBand Detail, na ordem do Campo Mestre;
2-Na propriedade Expression da QRGroup eu seto o campo mestre escolhido;
3-Na QRGroup coloco os campos mestres;
4-Na QRBand Detail coloco os campos detalhes;
5-Insiro um QRBand Group Footer para os somatórios intermediários;
6-Insiro um QRBand Sumary para os somatórios globais (finais);
GOSTEI 0
Rvano
27/10/2003
Como você configura esse Group Footer? Fiz o mesmo no meu, mas ele fica invisível no relatório!!
Obrigado
Obrigado
GOSTEI 0
Rvano
27/10/2003
Descobri...
- Coloquei um Group Footer
- Na propriedade Footer band do Group Header coloquei o nome do Group Footer recém-criado.
- Coloquei um Group Footer
- Na propriedade Footer band do Group Header coloquei o nome do Group Footer recém-criado.
GOSTEI 0