Ir para conteúdo
Fórum Script Brasil
  • 0

(RESOLVIDO)Duvidas em bd para carregar campos com ListBox


Fabin

Pergunta

e aew galera bom dia pra vocês!

to com a seguinte duvida refrente a carregar dados do banco em uma combobox

tenho um form de cadstro de instituiçao, uma de curso e ouro de estagiarios sendo que a de estagiario engloba instituiçao e curso..

então vamos la explicar o que estou tentando fazer..

o usuario irá cadstrar a instituiçao ( essa conseguir fazer sem problema)

o usuário escolhe a opçao de cadstrar curso, então é aberto o form neste form contem uma combox que vai listar as faculdades cadastradas o usuário vai escolher a instituiçao em que estuda e logo em seguida vai digitar o curso que faz ( este seria meu primeiro problema em relaçao a combobox para carregar as instituiçoes de ensino, e no meu relacionamento esta para ocódigo da afculdade tem como na hora que for visualizar não visualiza pelo codigo e sim pelo nome essa seria outra duvida??)

e no form de cadstro de estagiario o usuario quando for cadstra o usuario há duas combobox a de instiuiçao e a de curso, o usuario vai escolher a instituiçao e na combo do curso vai listar somente os cursos referente a instituiçao que o usuario escolheu na combo instituiçao entenderam???

são essas as minhas duvidas

se alguém souber como me ajudar ficarei muito agradecido

abraço a todos

valews

t+ :wacko:

Editado por Fabin
Evite postar títulos em caixa alta (Jonathan)
Link para o comentário
Compartilhar em outros sites

  • Respostas 51
  • Created
  • Última resposta

Top Posters For This Question

Posts Recomendados

  • 0
antes de preencher a combo.

1 - coloca o da cboInst no Form_Load

2 - coloca o da cboCurso no cboInst_click

raphael é o seguinte quando é clicado na cboCurso lista todos os cursos cadstrados ao invés de listar somente o de acordo com a faculdade escolhida....

sera que deve ser por falta da cboClear???

onde eu coloco essa cboClear?? e qual seria a cboClear??cboInstituiçao.clear ou cboCurso.clear??

vou mandar o codigo pra voce da uma olhada

isso cboClear = nomeCombo.Clear

você vai colocar onde está indicado no post anterior

Private Sub cboInstituiçao_Click()
Dim cnnComando As New ADODB.Command
Dim codInst As Integer

cboCurso.clear  ' <------- limpa a combo antes de preencher

    With cnnComando
        .ActiveConnection = conexao
        .CommandType = adCmdText
        .CommandText = "SELECT * FROM Instituiçao WHERE Nome = '" & cboInstituiçao.Text & "'"
        Set rsSeleçao = .Execute
    End With
    codInst = rsSeleçao("codInst")
    If rsSeleçao.Status = 1 Then rsSeleçao.Close

    With cnnComando
        .ActiveConnection = conexao
        .CommandType = adCmdText
        .CommandText = "SELECT NomeCurso FROM Curso WHERE CodInst = codInst"
        Set rsSeleçao = .Execute
    End With
   
 With rsSeleçao
        Do While Not rsSeleçao.EOF
            If Not IsNull(rsSeleçao!NomeCurso) Then
                cboCurso.AddItem rsSeleçao!NomeCurso
            End If
            rsSeleçao.MoveNext
        Loop
    End With
End Sub

Private Sub Form_Load()

Preenche_Combo_chefia
Preenche_combo_turno
Preenche_combo_instituiçao

End Sub

Private Sub Preenche_combo_turno()
Dim cnnComando As New ADODB.Command
    With cnnComando
        .ActiveConnection = conexao
        .CommandType = adCmdText
        .CommandText = "SELECT Turno FROM Turno"
        Set rsSeleçao = .Execute
    End With
    With rsSeleçao
        Do While Not rsSeleçao.EOF
        If Not IsNull(rsSeleçao!Turno) Then
        cboTurno.AddItem rsSeleçao!Turno
        End If
        rsSeleçao.MoveNext
        Loop
    End With
End Sub

Private Sub Preenche_combo_instituiçao()
Dim cnnComando As New ADODB.Command

cboInstituicao.clear  ' <------- limpa a combo antes de preencher
    With cnnComando
        .ActiveConnection = conexao
        .CommandType = adCmdText
        .CommandText = "SELECT Nome FROM Instituiçao"
        Set rsSeleçao = .Execute
    End With
    With rsSeleçao
        Do While Not rsSeleçao.EOF
        If Not IsNull(rsSeleçao!Nome) Then
        cboInstituiçao.AddItem rsSeleçao!Nome
        End If
        rsSeleçao.MoveNext
        Loop
    End With
End Sub
a certo agora sim não ta tendo duplicaçao an combo do curso não mas ta tendo o seguiinte problema ta listando todas a sfaculdades cadstradas e não por instituiçao escolhida ou seja na a hoar q escolhe a instituiçao todos oos cursos são listados e eu estava qrenndo que fosse listado somente o curso que foi cadstrado especifico para a instituiçao e o que pode esta ocorrendo abraço t+
antes de preencher a combo. 1 - coloca o da cboInst no Form_Load 2 - coloca o da cboCurso no cboInst_click
raphael é o seguinte quando é clicado na cboCurso lista todos os cursos cadstrados ao invés de listar somente o de acordo com a faculdade escolhida.... sera que deve ser por falta da cboClear??? onde eu coloco essa cboClear?? e qual seria a cboClear??cboInstituiçao.clear ou cboCurso.clear?? vou mandar o codigo pra voce da uma olhada
isso cboClear = nomeCombo.Clear você vai colocar onde está indicado no post anterior
Private Sub cboInstituiçao_Click()
Dim cnnComando As New ADODB.Command
Dim codInst As Integer

cboCurso.clear  ' <------- limpa a combo antes de preencher

    With cnnComando
        .ActiveConnection = conexao
        .CommandType = adCmdText
        .CommandText = "SELECT * FROM Instituiçao WHERE Nome = '" & cboInstituiçao.Text & "'"
        Set rsSeleçao = .Execute
    End With
    codInst = rsSeleçao("codInst")
    If rsSeleçao.Status = 1 Then rsSeleçao.Close

    With cnnComando
        .ActiveConnection = conexao
        .CommandType = adCmdText
        .CommandText = "SELECT NomeCurso FROM Curso WHERE CodInst = codInst"
        Set rsSeleçao = .Execute
    End With
   
 With rsSeleçao
        Do While Not rsSeleçao.EOF
            If Not IsNull(rsSeleçao!NomeCurso) Then
                cboCurso.AddItem rsSeleçao!NomeCurso
            End If
            rsSeleçao.MoveNext
        Loop
    End With
End Sub

Private Sub Form_Load()

Preenche_Combo_chefia
Preenche_combo_turno
Preenche_combo_instituiçao

End Sub

Private Sub Preenche_combo_turno()
Dim cnnComando As New ADODB.Command
    With cnnComando
        .ActiveConnection = conexao
        .CommandType = adCmdText
        .CommandText = "SELECT Turno FROM Turno"
        Set rsSeleçao = .Execute
    End With
    With rsSeleçao
        Do While Not rsSeleçao.EOF
        If Not IsNull(rsSeleçao!Turno) Then
        cboTurno.AddItem rsSeleçao!Turno
        End If
        rsSeleçao.MoveNext
        Loop
    End With
End Sub

Private Sub Preenche_combo_instituiçao()
Dim cnnComando As New ADODB.Command

cboInstituicao.clear  ' <------- limpa a combo antes de preencher
    With cnnComando
        .ActiveConnection = conexao
        .CommandType = adCmdText
        .CommandText = "SELECT Nome FROM Instituiçao"
        Set rsSeleçao = .Execute
    End With
    With rsSeleçao
        Do While Not rsSeleçao.EOF
        If Not IsNull(rsSeleçao!Nome) Then
        cboInstituiçao.AddItem rsSeleçao!Nome
        End If
        rsSeleçao.MoveNext
        Loop
    End With
End Sub

a certo agora sim não ta tendo duplicaçao an combo do curso não mas ta tendo o seguiinte problema

ta listando todas a sfaculdades cadstradas e não por instituiçao escolhida ou seja na a hoar q escolhe a instituiçao todos oos cursos são listados e eu estava qrenndo que fosse listado somente o curso que foi cadstrado especifico para a instituiçao

e o que pode esta ocorrendo

abraço

t+

opa achei o erro aqui raphael é que falatava isso aqui na linha

.CommandText = "SELECT NomeCurso FROM Curso WHERE CodInst = " & codInst & ""

falatava o " & .... & ""

agora deucerto hehehe

este tópico aqui agora vou fechar que ele ta bem extenso hehehe

qualquer duvido coloco em outro tópico

ou você é o cara hein raphael sabe tudo

valews pela ajuda brother

abraço

t+

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.




  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...