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

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Registro no VB6
diegocr
NOVA IGUAÇU
RJ - BRASIL
ENUNCIADA !
Postada em 02/06/2005 12:42 hs            

Estou fazendo um form no Visual Basic e preciso saber se tem como eu pegar registros de duas tabelas, isto é, como se fosse um linkmento. Exemplo disso é: Pegar na minha tabela de Inquilino e da tabela Fiador os respectivos nomes, telefones (comerciais, residenciais e celulares).

O meu form tem as seguintes informações:

2 frames

- Frame Inquilino
- Frame Fiador

No frame Inquilino tem os campos:

Nome, Telefone_Residencial, Telefone_comercial, Celular

No Frame Fiador tem os Campos:

Nome, Telefone_Residencial, Telefone_comercial, Celular

E os button's Imprimir, Fechar, Próximo, Anterior

Então resumidamente dizendo:

Desejo saber se tem como eu toda vez que passar de registro de inquilino o registro de Fiador segue conforme o seu linkamento?!! Inquilino correspondendo c/ Fiador!! Isso tem como fazer?!!

A Rotina que fiz está assim:

Option Explicit

Dim WithEvents rs_imobiliaria As ADODB.Recordset

Dim strsql As String

 

Private Sub apresentar_imobiliaria()

   

    Screen.MousePointer = 11

   

    Call AbrirConexaoAccess

 

    On Error GoTo trata_erro

   

    Set rs_imobiliaria = New ADODB.Recordset

    rs_imobiliaria.CursorLocation = adUseClient

'    strsql = "SELECT * FROM Proprietario WHERE Endereco_Residencial LIKE '%" _

'    & txt_consulta_Endereco.Text & "%'"

    strsql = "SELECT t1.*, t2.* FROM inquilino as t1, fiador as t2 where ((t1.idfiador=t2.id) and (t1.nome='%" & txt_Nome.Text & "%'))"

   

    rs_imobiliaria.Open strsql, cn_access, adOpenDynamic, adLockOptimistic

    rs_imobiliaria.ActiveConnection = Nothing

 

    Call FecharConexaoAccess

   

    Screen.MousePointer = 0

   

    Exit Sub

   

trata_erro:

 

    Call FecharConexaoAccess

    Screen.MousePointer = 0

    MsgBox Err.Number & vbCrLf & Err.Description

   

End Sub

 

Private Sub cmd_fechar_Click()

 

    Unload Me

 

End Sub

 

Private Sub cmd_imprimir_Click()

 

MsgBox ("Em Desenvolvimento! Arguarde!")

 

End Sub

 

Private Sub cmd_pag_anterior_Click()

rs_imobiliaria.MoveMax

End Sub

 

Private Sub cmd_pag_posterior_Click()

rs_imobiliaria.MoveNext

End Sub

 

Private Sub Form_Load()

         

         Me.Top = 590

         Me.Left = 0

        

         Call apresentar_imobiliaria

        

End Sub

 

Private Sub rs_imobiliaria_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, _

                                        ByVal pError As ADODB.Error, adStatus _

                                        As ADODB.EventStatusEnum, _

                                        ByVal pRecordset As ADODB.Recordset)

   

    On Error GoTo trata_erro

    Screen.MousePointer = 11

    If rs_imobiliaria.BOF = False _

    And rs_imobiliaria.EOF = False Then

        Screen.MousePointer = 11

        txt_Nome.Text = rs_imobiliaria!Nome

'        txt_Endereco_Residencial.Text = rs_imobiliaria!Endereco_Residencial

'        txt_Endereco_Trabalho.Text = rs_imobiliaria!Endereco_trabalho

        txt_Telefone_Residencial.Text = rs_imobiliaria!Telefone_residencial

        txt_Telefone_Comercial.Text = rs_imobiliaria!Telefone_comercial

        txt_Celular(0).Text = rs_imobiliaria!Celular

'        txt_Fax.Text = rs_imobiliaria!Fax

'        Cmb_Estado_Civil.Text = rs_imobiliaria!Estado_civil

'        txt_Identidade.Text = rs_imobiliaria!Identidade

'        txt_CPF.Text = rs_imobiliaria!CPF

'        txt_Profissao.Text = rs_imobiliaria!Profissao

    Else

    MsgBox "Registro não Encontrado!" & vbCrLf

            Call Limpar

    End If

    Screen.MousePointer = 0

    Exit Sub

trata_erro:

    Screen.MousePointer = 0

    MsgBox Err.Number & vbCrLf & Err.Description

   

End Sub

 

Private Sub Limpar()

 

'

'                    txt_Nome.Text = "----------"

'                    txt_Endereco_Residencial(0).Text = "----------"

'                    txt_Endereco_Trabalho.Text = "----------"

'                    txt_Telefone_Residencial.Text = "----------"

'                    txt_Telefone_Comercial.Text = "----------"

'                    txt_Celular.Text = "----------"

'                    txt_Fax.Text = "----------"

'                    Cmb_Estado_Civil.Text = "Escolha o Estado Civil"

'                    txt_Identidade.Text = "----------"

'                    txt_CPF.Text = "----------"

'                    txt_Profissao.Text = "----------"

 

End Sub

Obrigado desde já!!

   
Knight
GOIÂNIA
GO - BRASIL
ENUNCIADA !
Postada em 02/06/2005 16:44 hs         
Se entendi bem, toda vez q vc selecionar o inquilino vc quer mostra o fiador dele. E isso???
 
Se for ta ai:
Grava o inquilino e depois grava o fiador com o codigo do inquilino.
Ai toda vez q vc chamar o inquilino vc pega o codigo dele e busca todo fiador q tem codigo igual.
Blz???
Espero ter ajudado

Emoções Knight Emoções

http://host.csti.eti.br

CSTI WebHosting
Hospedando Idéias Emoções

   
JCarlos
Pontos: 2843
PRESIDENTE PRUDENTE
SP - BRASIL
ENUNCIADA !
Postada em 02/06/2005 17:06 hs            
strsql = "SELECT P.*,I.Nome as NomeFiador, I.Telefone_Residencial as TelResFiador, I.Telefone_Comercial as TelComFiador " & _
        "FROM Proprietario P inner join Inquilino I " & _
 "on I.CodProprietario=P.CodProprietario and I.CodImovel=P.CodImovel " & _
        "WHERE Endereco_Residencial LIKE '%" & _
         txt_consulta_Endereco.Text & "%'"
Observe que vc estará juntando as duas tabelas em um recordset só.
Não sei quais são os campos que ligarão as duas tabelas, mas fiz como suposição
  os campos CodPropretario e CodImovel, neste caso é só vc substituir pelos campos
  correposndentes que devem ser linkados. Como há coincidência de nomes de colunas, foi dado
  outro nome para as mesmas na tabela Inquilino (I.Telefone_Residencial as TelResFiador) neste caso,
  quando vc for tratar o fene residencial do fiador, vai usar:rs_imobiliaria!TelResFiador.
É só uasar este RS, o Resto é mover os campos corresp. para o form.
Espero ter ajudado. 
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

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

HTML DESLIGADO

     
 VOLTAR

  



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