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

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Active Report
MARCONE
Pontos: 2843
BRASÍLIA
DF - BRASIL
Postada em 08/12/2004 14:14 hs            
'**Uma forma mais fácil e rápida de trabalhar com o active é a seguinte:
'a) crie um novo designe active reports (Name: ActiveReport1);
'b) insira os campos necessários que serão visualizados no relatório;
'c) insira um controle ADO (Name: DataControl1)
'd) em references, selecione o Microsoft ADO 2.5 ou superior
'*****Em um botão de comando faça:
Private Sub Command1_Click()
Me.MousePointer = 11
Dim cn As New ADODB.Connection
Dim rst As New ADODB.Recordset
Dim sPath As String
Dim CodPesq As Long
Dim strSQLRpx As String
CodPesq = 10
strSQLRpx = "Select * From Tbl_Apartamentos WHERE Código=" & CodPesq & "" ' Código Numérico
strSQLRpx = "Select * From Tbl_Apartamentos WHERE Código='" & CodPesq & "'" ' Código String
'(não esqueça de testar esta string SQL  - veja se está retornando dados)
'***Conectando com o banco de dados--------------------------------------------------
    sPath = App.Path & "SeuBd.MDB"
    cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sPath
    cn.Open
'***Concluída a conecção com o banco de dados----------------------------------------
    Set rst.ActiveConnection = cn 'passando a conecção para o active reports
    rst.CursorLocation = adUseClient
    rst.Open strSQLRpx, , adOpenStatic, adLockBatchOptimistic
    rst.ActiveConnection = Nothing
    Dim rpt As New ActiveReport1 'instanciando o relatório
    Set rpt = New ActiveReport1
    rpt.DataControl1.Recordset = rst
    rpt.Show 1 'visualizando o relatório
End Sub
'**Creio que isso resolverá seu problema; qualquer dúvida, é só postar..Emoções

MarconeEmoções

 

     
Korn
Pontos: 2843
SAO PAULO
SP - BRASIL
Postada em 10/12/2004 11:06 hs            
mais alguma sugestao

Jesus Cristo é O Senhor!!!
     
Korn
Pontos: 2843
SAO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 13/12/2004 12:07 hs            
ae vei So q esse filtro nao esta funcionando, estda dando erro de overflow, por favor alguem pode me ajudar

Jesus Cristo é O Senhor!!!
   
MARCONE
Pontos: 2843
BRASÍLIA
DF - BRASIL
Postada em 13/12/2004 13:29 hs            
Dim CodPesq As Long
 
strSQLRpx = "Select * From Tbl_Apartamentos WHERE Código=" & CodPesq & "" ' Código Numérico
strSQLRpx = "Select * From Tbl_Apartamentos WHERE Código='" & CodPesq & "'" ' Código String

O problema é que você está usando a mesma variável duas vezes; uma passando um valor numérico e a outra passando uma string. O erro ocorre porque você está atribuindo uma string a uma variável numérica (CodPesq).



MarconeEmoções

 

TÓPICO EDITADO
   
Korn
Pontos: 2843
SAO PAULO
SP - BRASIL
Postada em 13/12/2004 16:18 hs            
eu estou com dois codigos aki pra faze a mesmo coisa veio um e esse q da erro tipo asim type mysmatch, e aponta akele codigo " CodPesq= select.......
 
Private Sub Command1_Click()
Me.MousePointer = 11
Dim Bdimobiliaria As New ADODB.Connection
Dim rst As New ADODB.Recordset
Dim sPath As String
Dim CodPesq As Long
Dim strSQLRpx As String
CodPesq = 10
CodPesq = "Select * From Tbl_Apartamentos WHERE Código=" & CodPesq & "" ' Código Numérico
strSQLRpx = "Select * From Tbl_Apartamentos WHERE Código='" & CodPesq & "'" ' Código String
'(não esqueça de testar esta string SQL  - veja se está retornando dados)
'***Conectando com o banco de dados--------------------------------------------------
    sPath = App.Path & "Bdimobiliaria.mdb"
    Bdimobiliaria.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sPath
    Bdimobiliaria.Open
'***Concluída a conecção com o banco de dados----------------------------------------
    Set rst.ActiveConnection = Bdimobiliaria 'passando a conecção para o active reports
    rst.CursorLocation = adUseClient
    rst.Open strSQLRpx, , adOpenStatic, adLockBatchOptimistic
    rst.ActiveConnection = Nothing
    Dim rpt As New ActiveReport1 'instanciando o relatório
    Set rpt = New ActiveReport1
    rpt.DataControl1.Recordset = rst
    rpt.Show 1 'visualizando o relatório
End Sub
 
e estou usando esse marcone q da erro de overflow, ate entra no formulario ele pega o registro pra imprimir q esta selecionado no form , somente esse registro fica pra imprimir no relatorio , mas quando eu saio do relatorio e volto para o form o mause fica q nem uma ampulheta e se eu saio do form e depois volta da esse erro de overflow , eu nao entendi o pq teve q no formulario menu tirar a conexao do banco mudou a estrutura do meu program
 
Private Sub cmdimprimRelApart_Click()
Me.MousePointer = 11
    Dim cn As New ADODB.Connection
    Dim rst As New ADODB.Recordset
    Dim sPath As String
    Dim sSql As String
    sPath = App.Path & "BdImobiliaria.MDB"
If rst.State = adStateOpen Then '***Se o recordset estiver aberto, feche-o
rst.Close
Set rst = Nothing
End If
sSql = "select * from tbl_Apartamentos WHERE CodigoImo ='" & Me.txtcodimo & "'"
    cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sPath
    cn.Open
    Set rst.ActiveConnection = cn
    rst.CursorLocation = adUseClient
    rst.Open sSql, , adOpenStatic, adLockBatchOptimistic
   
    rst.ActiveConnection = Nothing
   
   
    Dim rpt As New ActiveReport1
    Set rpt = New ActiveReport1
    rpt.DataControl1.Recordset = rst
    rpt.Show 1
End Sub

Jesus Cristo é O Senhor!!!
     
MARCONE
Pontos: 2843
BRASÍLIA
DF - BRASIL
Postada em 13/12/2004 17:00 hs            
CodPesq = 10
CodPesq = "Select * From Tbl_Apartamentos WHERE Código=" & CodPesq ' Código Numérico
Você pode usar apenas o código acima, não precisa usar os dois códigos do SQL que retornarão a mesma coisa. Com relação à ampulheta, faça o seguinte:
 
no form onde ela aparece, coloque o seguinte código no evento ACTIVATE do mesmo:
 
screen.mousepointer=0
 
isso resolverá o problema

MarconeEmoções

 

     
Página(s): 2/4     « ANTERIOR    PRÓXIMA »

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