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

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  duvidas - comecando a usar o crviewer
Futura
PORTO FERREIRA
SP - BRASIL
Postada em 10/05/2006 08:54 hs            
depois de muita luta, e ajuda de amigos aqui do fórum, consegui colocar o crviewer na aplicação, agora estou com algumas duvidas iniciais, que são:

1) ele substitui totalmente o componente crystl32.ocx ?

2) no crystl32.ocx tinha o botão para selecionar a impressora, no crviewer não, pelo menos no 8.5 não tem, então como fazer para implantar esta opção ?

3) deixei um formulario com o componente crviewer, e de qualquer tela do sistema passo o parametro, e informo qual relatório carregar, esta seria a opção mais correta ?

4) o motivo pelo qual quero usar o crviewer, é porque o selectionformula
em tabelas com muitos registros, fica lento demais, e o crviewer dizem que tem a opção de usar a sqlquery, só que testei e não funcionou, ou seja ele não respeita a sql, e trz a tabela toda, como resolver isto ?.

OBS: ABAIXO COMO FAÇO PARA EXIBIR O RELATÓRIO:

AQUI DE UM FORM QUALQUER CHAMANDO O FORM DO RELATÓRIO E PASSANDO PARAMETROS:

frmreport.Imprimir App.Path & "listacli.rpt"
frmreport.Show 1

E AQUI O FORM QUE EXIBE O RELATÓRIO:

Public Sub Imprimir(Relatorio As String)
Dim Aplicacao As New CRAXDRT.Application
Dim Report As New CRAXDRT.Report
Set Report = Aplicacao.OpenReport(Relatorio)
Report.SQLQueryString ="select * from clientes where Tipo='Fornecedor'"
CRViewer1.ReportSource = Report
CRViewer1.ViewReport
End Sub

Private Sub Form_Resize()
CRViewer1.Top = 0
CRViewer1.Left = 0
CRViewer1.Height = ScaleHeight
CRViewer1.Width = ScaleWidth
End Sub
     
Daniel
Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 10/05/2006 09:49 hs            
1) sim ele substitui p crvystl32.ocx
2) No formulário do crviewer coloque:
Private Sub CRViewer9_PrintButtonClicked(UseDefault As Boolean)
    Report.PrinterSetup (hwnd)
End Sub
3) sim só que cuidado com os usuários que gostam de ficar abrindo um monte de relatórios ao mesmo tempo isso irá com certeza dar problema, se vc tiver apenas um form de crviewer
 
A 4 questão eu vou passar, porque crio tabelas temporárias que serão acessadas pelos relatórios, dessa forma não utilizo a querystring

dsmn
     
Futura
PORTO FERREIRA
SP - BRASIL
Postada em 10/05/2006 10:02 hs            
daniel, eu havia colocado o crviewer do crystal 8.5, mas agora ja passei para o 9, mas da erro, diz que naum acha o banco. falta alguma coisa no codigo acima
     
Daniel
Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 10/05/2006 10:10 hs            
A base esta na mesma pasta do relatório?, se sim configura o crystal no database -- set location --- como SAME AS REPORT

dsmn
     
Futura
PORTO FERREIRA
SP - BRASIL
Postada em 10/05/2006 10:20 hs            
mas ja esta assim.
     
Cardoso G
Pontos: 2843 Pontos: 2843
PATOS DE MINAS
MG - BRASIL
Postada em 10/05/2006 10:22 hs            
faço isso e funciona perfeitamente
'****Esta a a Função de impressão para o REPORT VIEW CONTROL da Seagate
Public Sub Imprimir(Relatorio As String)
    Set Report = Aplicacao.OpenReport(Relatorio) '***Setamos a Variavel do relatorio para pegar o Arquivo no Disco
    Report.SQLQueryString = "select * from categories where categoryid=1"
    CRViewer1.ReportSource = Report '*** Estamos assumindo que "CRViewer1" e o Nome do Controle no Form1
    CRViewer1.ViewReport            '*** O Relatorio será Visualizado entes de ser Impresso
End Sub
     
Página(s): 1/2      PRÓXIMA »

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