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

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Relatorios com "GLOBAL32.bas"
JlArrais
VISEU
PT - PORTUGAL
Postada em 04/09/2006 11:27 hs            
Oi pessoal!
Eu tou desenvolvendo uma aplicação em Visual Basic, com bases de dados em SQL e relatorios do Cristal 7.0.
Nos relatorios estou a utilizar o modulo "GLOBAL32.bas"(Visual Basic Declarations of CRPE32.DLL), até aqui tenho conseguido meter tudo a funcionar, mas agora tenho um relatorio diferente, onde utilizo um Sub Report, mas não consigo que ele funcione.
Se criar o relatorio no servidor "A" e se depois o abrir no servidor "B" através da minha aplicação ele já não funciona pq eu tenho que lhe mudar o nome do servidor através de código, mas isso eu não sei fazer!
Se alguém souber a parte de código que me falta e me puder ajudar eu agradeço.
Valeu pessoal.
Código Actual:
*********************
        NovoRelatorio (RfileName), conexao_simp.DefaultDatabase *
        rc = PEOutputToWindow(PJ, "Relatório", 50, 50, 500, 700, 12582912 Or 8388608 Or 16777216 Or 65536 Or 524288 Or 131072, preview.hwnd)
        SubRep = PEOpenSubreport(PJ, "Comp311")
        PESetSelectionFormula SubRep, "{@Data} >= Date(" & Data1 & ") and {@Data} <= Date(" & Data2 & ")"
        PESetWindowOptions PJ, wo
        If rc <> 1 Then
            MsgBox Str(PEGetErrorCode(PJ)), , "PEOutputToWindow"
            Unload preview
        Else
            rc = PEStartPrintJob(PJ, True)
            If rc <> 1 Then
                MsgBox Str(PEGetErrorCode(PJ)), , "PEStartPrintJob"
                Unload preview
            End If
        End If
**********************
*Public Sub NovoRelatorio(RfileName As String, Optional BD As String)
Dim Locals As PETableLocation
Dim Tabela As String
Dim Tabela_Aux As String
Dim i As Integer
i = 0
Tabela_Aux = ""
rc = PEOpenEngine()
hasRangeParams = False
PJ = PEOpenPrintJob(App.Path & "Mapas" & RfileName & ".rpt")
LINFO.StructSize = Len(LINFO)
With LINFO
    .ServerName = Servidor & Chr(0)
    If Len(BD) > 0 Then
        .DatabaseName = BD & Chr(0)
        If BD <> "WGG_link" Then
            Do
                Locals.StructSize = Len(Locals)
                PEGetNthTableLocation PJ, i, Locals
                If Tabela_Aux = Trim(Locals.Location) Then Exit Do
                Tabela_Aux = Trim(Locals.Location)
                Tabela = Replace(Locals.Location, "WGG_163", conexao_simp.DefaultDatabase, 1, , vbTextCompare)
                Locals.Location = Tabela
                PESetNthTableLocation PJ, 0, Locals
                i = i + 1
            Loop Until Len(Locals.Location) = 0
        End If
    End If
    .UserID = utilizadores & Chr(0)
    .password = Pass_Acesso & Chr(0)
End With
rc = PESetNthTableLogOnInfo(PJ, 0, LINFO, True)
End Sub
     
JlArrais
VISEU
PT - PORTUGAL
Postada em 05/09/2006 10:41 hs            
Então ninguém sabe como fazer???eu não sei!
obrigado!
     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



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