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

 

  Dicas

  Visual Basic    (ActiveX/Controles/DLL)

Título da Dica:  Carregando um combo com uma linha de comando
Postada em 27/6/2007 por Jailton Sampaio      Clique aqui para enviar email para o autor  jailton_sampaio@hotmail.com
'Olhe como se chama
'CarregarComboBox "cliente", "nome", "cliente_id", cboCliente, , , , False, "nome"
  
Public Sub CarregarComboBox(nmTabela As String, nmCampo As String, cdCampo As String, Pcmb As ComboBox, Optional SetarInicio As Boolean, Optional ComTodos As Boolean, Optional Filtro As String, Optional ComSeleciona As Boolean, Optional CampoOrderBy As String)
    '(nmTabela As String, nmCampo As String, As String, Pcmb As ComboBox, Optional SetarInicio As Boolean, Optional ComTodos As Boolean, Optional Filtro As String, Optional ComSeleciona As  Boolean )
    Dim rs As ADODB.Recordset
    '*--- Procedure criada para carregar combobox
    ' ligando ampulheta
    Screen.MousePointer = vbHourglass
    ' motando sql
    glSql = "select distinct " & cdCampo & "," & nmCampo & " from " & nmTabela & " where " & nmCampo & " = " & nmCampo
    ' se precisar de filtro
    If Filtro <> "" Then
        glSql = glSql + " and " & Filtro
    End If
    If CampoOrderBy <> "" Then
        glSql = glSql & " order by " & CampoOrderBy
    Else
        glSql = glSql & " order by " & nmCampo
    End If
    
    ' executando
    Set rs = cnConn.Execute(glSql)
    Pcmb.Clear
    ' se quiser acrescentar <TODOS>
    If ComTodos Then Pcmb.AddItem "<TODOS>"
    If ComSeleciona Then Pcmb.AddItem "<SELECIONE>"
    While Not rs.EOF
        ' Nome do registro
        Pcmb.AddItem rs.Fields(nmCampo).Value
        ' Chave do registro
        Pcmb.ItemData(Pcmb.NewIndex) = rs.Fields(cdCampo).Value
        rs.MoveNext
    Wend
    ' setando pra o primeiro
    If SetarInicio Then If Pcmb.ListCount > 0 Then Pcmb.ListIndex = 0
    ' desligando ampulheta
    Screen.MousePointer = vbNormal
    rs.Close
End Sub
 


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