Ir para conteúdo
Fórum Script Brasil
  • 0

Cristal Reports 10


Guest Louiz

Pergunta

tenho o Cristal Reports 10, fiz um relatório, mas não sei como usar no VB 6.0. Alguém pode me ajudar ? Queria alguma orientação para fazer relatório do meu banco de dados. MO USAR O DATA REPORT ?

agradeço>

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

wink.gif Bem tem varias formas de fazer isto. Veja se isso resolve seu problema.

Private Sub mnuimprimir_Click()

Public rsp As Recordset

Set rsp = db.OpenRecordset("pedido", dbOpenSnapshot)

rsp.MoveLast

crtimpressao.ReportFileName = "Z:\SIDNEI\vb\Projeto - VB\pedidos.rpt"

crtimpressao.SelectionFormula = "{consulta_print.ped_numero} = " & rsp!ped_numero

crtimpressao.Action = 1

End Sub

você tem que colocar o componente em seu projeto do crystal reports.

Componente "Crystal32.ocx"

Qualquer coisa e só falar.

Link para o comentário
Compartilhar em outros sites

  • 0

Kara o Crystal 10 não trabalha com OCX, isso foi descontinuado...você utilizara uma outro componente... você tem que fazer seu relatório do jeito que era antes... so que para imprimir crie um form para visualizar o relatorio neste form coloque o componente crviewer,

olha como fica seu formvisualizador:

Option Explicit

Public oAP As CRAXDRT.Application

Public oRP As CRAXDRT.Report

Private Sub Form_Load()

Set oAP = New CRAXDRT.Application

Set oRP = New CRAXDRT.Report

Screen.MousePointer = vbHourglass

Set oRP = oAP.OpenReport("" & App.Path & "\" & NomeReport)

' nomereport receber valor no botao imprimir de grupos por exemplo nomereport = "rptgrupos.rpt"

oRP.SetUserPaperSize 2159, 2794

oRP.DiscardSavedData

oRP.Database.SetDataSource rsImpressora

'Recordset RST vai receber o conteudo do recordset em uso por ex.

crviewer1.ReportSource = oRP

crviewer1.ViewReport

crviewer1.Zoom 94

Do While crviewer1.IsBusy

DoEvents

Loop

Set rsImpressora = Nothing

Screen.MousePointer = vbDefault

End Sub

Private Sub Form_Resize()

If Me.WindowState <> 1 Then Me.WindowState = 2

crviewer1.Top = 0

crviewer1.Left = 0

crviewer1.Height = ScaleHeight

crviewer1.Width = ScaleWidth

End Sub

repare que você pode passar um recordset em tempo real... ou seja antes quando você passa por exemplo um intervalo de datas numa formula, sabe o que ele fazia... ele carregava o banco inteiro depois ia registro por registro validando o registro para imprimir ou não...se você fosse imprimir 1 registro apenas ele lia vamos supor todos os 3.000 que tinham na tabela... agora não você monta a sql no vb... e passa o resultado da sql a em um modulo do sistema por exemplo você tem que criar o rsImpressora

abaixo você chama o form assim é bem simples...

Private Sub cmdImprimehist_Click()

'nome do report a ser impresso

NomeReport = "rptLembretes.rpt"

'base de dados a ser impressa

Set rsImpressora = rsTemporario1

'chamando form vizualizador

FormVisualizador.Show 1

End Sub

duvidas é só me mandar um email

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...