ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

relatorio delphi 2 ibquery

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
fabiodurgante
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 8 de Novembro de 2013
Mensagens: 197

MensagemEnviada: Seg Ago 07, 2017 4:39 pm    Assunto: relatorio delphi 2 ibquery Responder com Citação

ola para ferar relatorio faço o seguinte
Código:


       form2.IBQuery1.close;
       form2.IBQuery1.SQL.Clear;
       form2.IBQuery1.SQL:=IBQuery1.SQL;
       form2.IBQuery1.Prepare;
        form2.IBQuery1.open;
        Form2.QRPQuickrep1.Prepare;
        Form2.QRLabel2.Caption := ' /  '+IntToStr(Form2.QRPQuickrep1.QRPrinter.PageCount);
        Form2.QRLabel3.Caption := IntToStr(ibquery1.RecordCount);
        Form2.QRLabel7.Caption := DateToStr(DateTimePicker1.Date)+' ate '+DateToStr(DateTimePicker2.Date);
        Form2.QRPQuickrep1.preview;




tudo OK na IBQuery1 tenho o sql que retorna as notas pelo cliente fabio, exemplo fabio1 numero nota data valor total
fabio2 numero nota data valor total
fabio 3 numero nota data valor total
gera relatorio com esses dados OK

a ibquery2 faco um select dos produtos que tem na nota fabio1 pel numero da nota porem so ostra os produtos da nota fabio1 tem 4 pordutos, mas fabio2 tem 2 produtosm fabio3 tem 3 produtos como poderia fazer relatorio
fabio1
produto1
produto2
produto3
produto4

fabio2
produto1
produto2

fabio3
produto1
produto2
produto3

tenho que enviar para o form2 a ibquery1 e ibquery2 ??
so que a ibquery2 precisa pegar o numero nota do dbgrid nmumero por numero feito na pesquiza do ibquery1 como fazer esse relatorio ???
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
fabiodurgante
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 8 de Novembro de 2013
Mensagens: 197

MensagemEnviada: Ter Ago 08, 2017 3:09 pm    Assunto: Responder com Citação

quero que fique relatorio assim achei na net

Código:

+- Detail ----------------------------------------------------+
| Cliente: Francisco Almeida
| CNPJ: 999999
| Endereço: xccvcvcv cvvxv x
|-------------------------------------------------------------
| Qrd.  Und  Descrição           Valor
+- SubDetail - Itens -----------------------------------------+
| 50,00      Bolacha            R$ 65,00
| 20,00      Suco daFruta       R$ 60,00
| 15,00 Cx   Bombom            R$ 100,00
+- SubDetail - HeaderBand ------------------------------------+
| Vencimento   Valor
+- SubDetail - Parcela ---------------------------------------+
| 20/10/2008   R$ 75,00
| 20/11/2008   R$ 75,00
| 20/12/2008   R$ 75,00
+-------------------------------------------------------------+


IMEX disse isso
- QuickReport: DataSet = QueryEmpresas
- Primeira banda: PageHeader
- Segunda banda: QRBand do tipo Detail com QRDBText imprimindo dados de QueryEmpresas
- Terceira banda: QRBand do tipo GroupHeader, Name = BandaGrupo
- Quarda banda: QRSubDetail com DataSet = QueryFuncionarios, HeaderBand = BandaGrupo, imprimindo dados dos funcionários

A propriedade LinkBand de todas as bandas em branco.

Da forma acima o QuickReport le o DataSet QueryEmpresas e para cada registro imprime um Detail (segunda banda), um GroupHeader (terceira banda), e um SubDetail para cada funcionário da empresa.

eu fiz isso porem lista todos as vendas mas os itens das vendas lista somente o 1 item a ibquery2 nao vai pra frente junto com a ibquery1 entende, venda 1 venda 2 10 vendas somente com o item da ibquery2 teria q ter um while na query 2 para listar todos os itens ???
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
imex
Moderador
Moderador


Registrado: Sexta-Feira, 7 de Janeiro de 2011
Mensagens: 11666

MensagemEnviada: Qua Ago 09, 2017 3:15 pm    Assunto: Responder com Citação

Boa tarde,

Não sei qual tópico você viu, mas pelo que você disse me parece que está faltando fazer a ligação da IBQuery2 (através da propriedade DataSource) com a IBQuery1. Acho que deve ter alguma coisa nesse tópico que você viu sobre isso.
E o While não é utilizado nesse caso, a própria QRSubDetail vai varrer os registros do DataSet do início ao fim.

Espero que ajude


Editado pela última vez por imex em Seg Dez 04, 2023 11:51 am, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
fabiodurgante
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 8 de Novembro de 2013
Mensagens: 197

MensagemEnviada: Qua Ago 09, 2017 3:25 pm    Assunto: Responder com Citação

essa ligacao ibquery1 com a ibquery2 pelo datasource nao fiz vou tentar
ta mas tipo assim minha ibquery1 tem select vendas lista dbgrid venda cliente data valor, quando 2x dbgrid abre outro form e lista os produtos referente a linha dbgrid clicaco eu passo o id venda para o form2 ibqyery2 para fazer select referente aquele id_venda, com 1 2x clique funciona porque passo o ID_venda, porem quando filtro e mostraas vendas do fabio tem 3 vendas 2 produtos cada venda, tenho q passar o id-venda 3x para o form2 entendeu nao sei como passar as 3 linhas do form1 dbgrid, cada linha tenho que passar o id_venda porque sao vendas ids diferente como passar ???

eu juntei tudo em um unico sql 1 ibqyery somente mas deve existir uma maneira de passar os ids do dbgrid para o form2 ibquery2
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
imex
Moderador
Moderador


Registrado: Sexta-Feira, 7 de Janeiro de 2011
Mensagens: 11666

MensagemEnviada: Qua Ago 09, 2017 4:10 pm    Assunto: Responder com Citação

O parâmetro da IBQuery2 será preenchido automaticamente com o valor corrente na IBQuery1 configurando a propriedade DataSource da IBQuery2 com um DataSource da IBQuery1.

Espero que ajude
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB