Guest Deborah Postado Julho 17, 2003 Denunciar Share Postado Julho 17, 2003 Tenho um sistema que apresenta três combox.Nessas combox elas já exibem dados de uma determinada tabela.Como faço para que elas mostrem dois dados de duas tabelas diferentes numa mesma combox.Assim: Combox1 exibe seus dados assim: 000 - nome Sendo "000" um dado do tipo número de uma determinada tabela, e nome um dado do tipo texto de outra tabela?Ps: utilizei um filtro para isto e ele me alega erro. O código usado foi:Private Sub CMDConsultar_Click()'Rotina de consultaCMDConsultar.Tag = "con"If Geroevb.database.Rsocupamnte.State = 1 Then Geroevb.database.Rsocupamnte.Close Geroevb.database.Rsocupamnte.Open "select * from Ocupante order by Nomocup1"If (Geroevb.database.Rsocupamnte.BOF And Geroevb.database.Rsocupamnte.EOF) Then MsgBox "A tabela está vazia.", vbExclamation, "Fechada!" Exit SubEnd IfIf Geroevb.database.Rsconjunto.State = 1 Then Geroevb.database.Rsconjunto.Close Geroevb.database.Rsconjunto.Open "select * from Conjunto order by nome"If (Geroevb.database.Rsconjunto.BOF And Geroevb.database.Rsconjunto.EOF) Then MsgBox "A tabela está vazia.", vbExclamation, "Vazia!" Exit SubEnd IfIf Geroevb.database.RsEstCivil.State = 1 Then Geroevb.database.RsEstCivil.Close Geroevb.database.RsEstCivil.Open "select * from Estcivil order by nomestciv"If (Geroevb.database.RsEstCivil.BOF And Geroevb.database.RsEstCivil.EOF) Then MsgBox "A tabela está vazia.", vbExclamation, "Vazia!" Exit SubEnd If'-----------------------'Para Filtro em lstEstCivil1(Estado Civil do 1º Ocupante)nomestadoc = Geroevb.database.RsEstCivil!codestcivnomestadoumc = Geroevb.database.RsEstCivil!nomestcivnumestadoumc = Geroevb.database.Rsocupamnte!codestciv1lstEstCivil1.Text = numestadoumc & " - " & nomestadoumcCode = "" & lstEstCivil1.TextIf Geroevb.database.RsEstCivil.State = 0 Then Geroevb.database.RsEstCivil.Open "select * from Estcivil order by nomestciv"End IfGeroevb.database.RsEstCivil.Filter = "numestadoumc = '" & nomestadoumc & "'"If Not Geroevb.database.RsEstCivil.EOF Then lstEstCivil1.Text = numestadoumc & " - " & nomestadodoiscEnd IfGeroevb.database.RsEstCivil.Filter = ""lstEstCivil1.Text = numestadoumc & " - " & Geroevb.database.RsEstCivil!nomestciv'----------------------------'Para filtro em lstEstCivil2(Estado Civil do 2º ocupante)numestadodoisc = Geroevb.database.Rsocupamnte!codestciv2nomestadodoisc = Geroevb.database.RsEstCivil!nomestcivlstEstCivil2.Text = numestadodoisc & " - " & nomestadodoiscCodes = "" & lstEstCivil2.TextIf Geroevb.database.RsEstCivil.State = 0 Then Geroevb.database.RsEstCivil.Open "select * from Estcivil order by nomestciv"End IfGeroevb.database.RsEstCivil.Filter = "numestadodoisc = '" & nomestadodoisc & "'"If Not Geroevb.database.RsEstCivil.EOF Then lstEstCivil2.Text = numestadodoisc & " - " & nomestadodoiscEnd IfGeroevb.database.RsEstCivil.Filter = ""lstEstCivil2.Text = numestadodoisc & " - " & Geroevb.database.RsEstCivil!nomestciv'----------------------------'Para filtro em lstNomeConj(para nome do conjunto)conjuntocod = Geroevb.database.Rsocupamnte!codconjuntonomeconjunto = Geroevb.database.Rsconjunto!nomelstNomeConj.Text = conjuntocod & " - " & nomeconjuntoCod = "" & lstNomeConj.TextIf Geroevb.database.Rsocupamnte.State = 0 Then Geroevb.database.Rsocupamnte.Open "select * from Ocupante", Geroevb.database.ConjConnEnd IfGeroevb.database.Rsconjunto.Filter = "conjuntocod = '" & nomeconjunto & "'"If Not Geroevb.database.Rsocupamnte.EOF Then lstNomeConj.Text = conjuntocod & " - " & nomeconjuntoEnd IfGeroevb.database.Rsocupamnte.Filter = ""lstNomeConj.Text = conjuntocod & " - " & Geroevb.database.Rsconjunto!nome'--------------------------'Rotina de consultaGeroevb.database.Rsocupamnte.MoveFirstlstNomeConj = Geroevb.database.Rsocupamnte!codconjuntolstNomeOcup = Geroevb.database.Rsocupamnte!Nomocup1TXTIdent1 = Geroevb.database.Rsocupamnte!identocup1TXTOrgExp1 = Geroevb.database.Rsocupamnte!orgexp1lstEstCivil1 = Geroevb.database.Rsocupamnte!codestciv1TXTEndereco = Geroevb.database.Rsocupamnte!endereco1TXTNomeOcup = Geroevb.database.Rsocupamnte!nomocup2TXTIdent2 = Geroevb.database.Rsocupamnte!identocup2TXTOrgExp2 = Geroevb.database.Rsocupamnte!orgexp1lstEstCivil2 = Geroevb.database.Rsocupamnte!codestciv2Já grata pela ajuda,Déborah. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 resopi Postado Agosto 1, 2003 Denunciar Share Postado Agosto 1, 2003 Isso eu faria NO VB 6 não sei se vai te ajudar mudar sua lógica!OLha as tebelas tem relacionamento entre si??? acso aja não precisa nada disso!! apenas fassa um select com inner join na outra tabela e concatene os resultado ex:Combo1.AddItem string(rs.fields("Numero")) & " - " & rs.fields("Dado2")mas pra você trazer os dados de tabela diferente em um mesmo recordset as tebelas necessitam de um relacionamento e você precisa saber fazer um select com inner join!!!Qualquer duvida estamos Aki!! :angry: Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest Deborah
Tenho um sistema que apresenta três combox.
Nessas combox elas já exibem dados de uma determinada tabela.
Como faço para que elas mostrem dois dados de duas tabelas diferentes numa mesma combox.
Assim:
Combox1 exibe seus dados assim:
000 - nome
Sendo "000" um dado do tipo número de uma determinada tabela, e nome um dado do tipo texto de outra tabela?
Ps: utilizei um filtro para isto e ele me alega erro. O código usado foi:
Private Sub CMDConsultar_Click()
'Rotina de consulta
CMDConsultar.Tag = "con"
If Geroevb.database.Rsocupamnte.State = 1 Then Geroevb.database.Rsocupamnte.Close
Geroevb.database.Rsocupamnte.Open "select * from Ocupante order by Nomocup1"
If (Geroevb.database.Rsocupamnte.BOF And Geroevb.database.Rsocupamnte.EOF) Then
MsgBox "A tabela está vazia.", vbExclamation, "Fechada!"
Exit Sub
End If
If Geroevb.database.Rsconjunto.State = 1 Then Geroevb.database.Rsconjunto.Close
Geroevb.database.Rsconjunto.Open "select * from Conjunto order by nome"
If (Geroevb.database.Rsconjunto.BOF And Geroevb.database.Rsconjunto.EOF) Then
MsgBox "A tabela está vazia.", vbExclamation, "Vazia!"
Exit Sub
End If
If Geroevb.database.RsEstCivil.State = 1 Then Geroevb.database.RsEstCivil.Close
Geroevb.database.RsEstCivil.Open "select * from Estcivil order by nomestciv"
If (Geroevb.database.RsEstCivil.BOF And Geroevb.database.RsEstCivil.EOF) Then
MsgBox "A tabela está vazia.", vbExclamation, "Vazia!"
Exit Sub
End If
'-----------------------
'Para Filtro em lstEstCivil1(Estado Civil do 1º Ocupante)
nomestadoc = Geroevb.database.RsEstCivil!codestciv
nomestadoumc = Geroevb.database.RsEstCivil!nomestciv
numestadoumc = Geroevb.database.Rsocupamnte!codestciv1
lstEstCivil1.Text = numestadoumc & " - " & nomestadoumc
Code = "" & lstEstCivil1.Text
If Geroevb.database.RsEstCivil.State = 0 Then
Geroevb.database.RsEstCivil.Open "select * from Estcivil order by nomestciv"
End If
Geroevb.database.RsEstCivil.Filter = "numestadoumc = '" & nomestadoumc & "'"
If Not Geroevb.database.RsEstCivil.EOF Then
lstEstCivil1.Text = numestadoumc & " - " & nomestadodoisc
End If
Geroevb.database.RsEstCivil.Filter = ""
lstEstCivil1.Text = numestadoumc & " - " & Geroevb.database.RsEstCivil!nomestciv
'----------------------------
'Para filtro em lstEstCivil2(Estado Civil do 2º ocupante)
numestadodoisc = Geroevb.database.Rsocupamnte!codestciv2
nomestadodoisc = Geroevb.database.RsEstCivil!nomestciv
lstEstCivil2.Text = numestadodoisc & " - " & nomestadodoisc
Codes = "" & lstEstCivil2.Text
If Geroevb.database.RsEstCivil.State = 0 Then
Geroevb.database.RsEstCivil.Open "select * from Estcivil order by nomestciv"
End If
Geroevb.database.RsEstCivil.Filter = "numestadodoisc = '" & nomestadodoisc & "'"
If Not Geroevb.database.RsEstCivil.EOF Then
lstEstCivil2.Text = numestadodoisc & " - " & nomestadodoisc
End If
Geroevb.database.RsEstCivil.Filter = ""
lstEstCivil2.Text = numestadodoisc & " - " & Geroevb.database.RsEstCivil!nomestciv
'----------------------------
'Para filtro em lstNomeConj(para nome do conjunto)
conjuntocod = Geroevb.database.Rsocupamnte!codconjunto
nomeconjunto = Geroevb.database.Rsconjunto!nome
lstNomeConj.Text = conjuntocod & " - " & nomeconjunto
Cod = "" & lstNomeConj.Text
If Geroevb.database.Rsocupamnte.State = 0 Then
Geroevb.database.Rsocupamnte.Open "select * from Ocupante", Geroevb.database.ConjConn
End If
Geroevb.database.Rsconjunto.Filter = "conjuntocod = '" & nomeconjunto & "'"
If Not Geroevb.database.Rsocupamnte.EOF Then
lstNomeConj.Text = conjuntocod & " - " & nomeconjunto
End If
Geroevb.database.Rsocupamnte.Filter = ""
lstNomeConj.Text = conjuntocod & " - " & Geroevb.database.Rsconjunto!nome
'--------------------------
'Rotina de consulta
Geroevb.database.Rsocupamnte.MoveFirst
lstNomeConj = Geroevb.database.Rsocupamnte!codconjunto
lstNomeOcup = Geroevb.database.Rsocupamnte!Nomocup1
TXTIdent1 = Geroevb.database.Rsocupamnte!identocup1
TXTOrgExp1 = Geroevb.database.Rsocupamnte!orgexp1
lstEstCivil1 = Geroevb.database.Rsocupamnte!codestciv1
TXTEndereco = Geroevb.database.Rsocupamnte!endereco1
TXTNomeOcup = Geroevb.database.Rsocupamnte!nomocup2
TXTIdent2 = Geroevb.database.Rsocupamnte!identocup2
TXTOrgExp2 = Geroevb.database.Rsocupamnte!orgexp1
lstEstCivil2 = Geroevb.database.Rsocupamnte!codestciv2
Já grata pela ajuda,
Déborah.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
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.