USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  [Printer] - Parte III
Nortuno
SÃO PAULO
SP - BRASIL
Postada em 07/05/2004 21:02 hs            
Eu tenho o seguinte código:
Private Sub cmdImprimir_Click()
    Dim m_NOME As String
    Dim m_PAGAMENTO As String
    Dim m_DESCRICAO As String
    Dim m_VENCIMENTO As String
    Dim m_VALOR As String
    Dim Linha As String
   
    If MsgBox("Iniciar Impressão?", 36, "Aviso do Sistema") = 7 Then
    Exit Sub
    End If
   
    Linha = 1
    Data1.DatabaseName = (App.Path & "\cyberbase.mdb")
    Data1.RecordSource = "SELECT CLIENTE.CODIGO, CLIENTE.NOME, PARCELAS.* FROM CLIENTE INNER JOIN PARCELAS ON CLIENTE.CODIGO = PARCELAS.CODIGO_ALUNO WHERE PARCELAS.CODIGO_ALUNO = " & txtCodAluno.Text & " AND (STATUS = " & cboStatus.Text & ")"
    Data1.Refresh
       
    Printer.FontName = "Arial"
    Printer.FontSize = 8
   
    Do While Not Data1.Recordset.EOF = True
   
    If Linha = 1 Then
        Cabeçalho
    End If
   
    m_NOME = Data1.Recordset.Fields("NOME")
    m_PAGAMENTO = Data1.Recordset.Fields("PAGAMENTO")
    m_DESCRICAO = Data1.Recordset.Fields("DESCRICAO")
    m_VENCIMENTO = Data1.Recordset.Fields("VENCIMENTO")
    m_VALOR = Data1.Recordset.Fields("VALOR")
   
    Printer.CurrentX = 130
    Printer.Print Tab(3); m_NOME;
    Printer.Print Tab(60); m_PAGAMENTO;
    Printer.Print Tab(80); m_DESCRICAO;
    Printer.Print Tab(100); m_VENCIMENTO;
    Printer.Print Tab(120); Format(m_VALOR, "R$ #,##0.00;(R$ #,##0.00)")
   
    Linha = Linha + 1
    Data1.Recordset.MoveNext
   
    If Linha >= 80 Then
    Printer.NewPage
    Linha = 1
    End If
    Loop
Printer.EndDoc
 
Quando é impresso aparece assim:
 
NOME                        PAGAMENTO     DESCRIÇÃO     VENCIMENTO    VALOR
=============================================================
RAIMUNDO                 28/01/04          MATRICULA      15/01/04        R$ 10,00
RAIMUNDO                 14/02/04          FEVEREIRO       15/02/04        R$ 30,00
RAIMUNDO                 15/03/04          MARÇO            15/03/04        R$ 30,00
RAIMUNDO                 17/04/04          ABRIL              15/04/04        R$ 30,00
 
e eu queria que aparecesse assim:
 
RAIMUNDO
===============================================================
PAGAMENTO     DESCRIÇÃO     VENCIMENTO    VALOR
===============================================================
28/01/04          MATRICULA      15/01/04        R$ 10,00
14/02/04          FEVEREIRO       15/02/04        R$ 30,00
15/03/04          MARÇO            15/03/04        R$ 30,00
17/04/04          ABRIL              15/04/04        R$ 30,00
 
ou seja, inves de aparecer diversas vezes o nome dele, aparece somente uma e essa unica vez deverá fica uma linha acima da linhas que mostrará as mensalidades que ele pagou. IGUAL AO EXEMPLO
     
Vaughyman
RIO DE JANEIRO
RJ - BRASIL
Postada em 08/05/2004 09:31 hs            
If Linha = 1 Then
  m_NOME = Data1.Recordset.Fields("NOME") 'retire essa linha do bloco onde estão as variaveis e coloque aqui.
        Cabeçalho 'Reformate seu cabeçalho para que não tenha a parte Nome
    End If

     
MasterPrint
MIRANDOPOLIS
SP - BRASIL
ENUNCIADA !
Postada em 08/05/2004 13:02 hs            
Coloque o campo referente ao nome do cliente antes do loop.
 
   
Página(s): 1/1    

CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página