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

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Botões VB
Álvaro
Pontos: 2843
GUARULHOS
SP - BRASIL
ENUNCIADA !
Postada em 26/10/2007 08:03 hs            
Edilene se os seus botões estiverem todos assim, estão errados um motivo, você está selecionando todos os registros dentro do mesmo botão e mandando ir para o registro anterior, nesse caso, e como você exibe o registro inicial não tem como ele mudar o registro, pois sempre que pressionar o botão ele irá fazer uma nova seleção geral do banco de dados
Cria as variáveis no [general] do form
    Dim ws As Workspace
    Dim db As Database
    Dim strconnection As String
    Dim consulta As Recordset

Para abrir o banco, você coloca o código no evento active ou load do form
    Set ws = DBEngine.Workspaces(0)
    strconnection = "ODBC;DSN=projeto"
    Set db = ws.OpenDatabase("", False, False, strconnection)

Em um text, onde queira fazer a consulta de um determinado registro ai coloca o comando de busca de dados

    Set consulta = Db.OpenRecordset("select * from CLIENTE")
    consulta.moveMin

No botão anterior deve ficar assim
cmdproximo.enable=true 'para abilitar o botão próximo
consulta.moveprevious
if consulta.bof then
   msgbox "Inicio de arquivo",vbinformation
   cmdAnterior.enable=false ' para que não seja pressionado o botão dando erro
else
    txtIdCliente = consulta(0)
    txtNome = consulta(1)
    txtCidade = consulta(2)
    txtRua = consulta(3)
    txtNum = consulta(4)
    txtBairro = consulta(5)
    txtEmail = consulta(6)
    txtFone1.Mask = consulta(7)
    txtFone2.Mask = consulta(8)
    txtObs = consulta(9)
    txtDataNasc.Mask = consulta(10)
    cmbUf = consulta(11)
    txtCpf.Mask = consulta(12)
    txtCep.Mask = consulta(13)
endif

No botão próximo deve ficar assim
cmdanterior.enable=true 'para abilitar o botão anterior
consulta.movenext
if consulta.eof then
   msgbox "Fim de arquivo",vbinformation
   cmdproximo.enable=false ' para que não seja pressionado o botão dando erro
else
    txtIdCliente = consulta(0)
    txtNome = consulta(1)
    txtCidade = consulta(2)
    txtRua = consulta(3)
    txtNum = consulta(4)
    txtBairro = consulta(5)
    txtEmail = consulta(6)
    txtFone1.Mask = consulta(7)
    txtFone2.Mask = consulta(8)
    txtObs = consulta(9)
    txtDataNasc.Mask = consulta(10)
    cmbUf = consulta(11)
    txtCpf.Mask = consulta(12)
    txtCep.Mask = consulta(13)
endif

Seria algo parecido com isso, para economizar código, você pode criar um mostradados no formulário.
Caso não saiba é simples
No (general) do form digite assim
public sub mostradados() e de um enter, quando fizer isso e vai criar algo assim

public sub mostradados()

end sub

Ai é só colocar o comando de exibição dos dados
public sub mostradados()
    txtIdCliente = consulta(0)
    txtNome = consulta(1)
    txtCidade = consulta(2)
    txtRua = consulta(3)
    txtNum = consulta(4)
    txtBairro = consulta(5)
    txtEmail = consulta(6)
    txtFone1.Mask = consulta(7)
    txtFone2.Mask = consulta(8)
    txtObs = consulta(9)
    txtDataNasc.Mask = consulta(10)
    cmbUf = consulta(11)
    txtCpf.Mask = consulta(12)
    txtCep.Mask = consulta(13)
end sub

E nos botões de busca, substituir a busca pelo nome mostradados

No botão anterior deve ficar assim
cmdproximo.enabled=true 'para abilitar o botão próximo
consulta.moveprevious
if consulta.bof then
   msgbox "Inicio de arquivo",vbinformation
   cmdAnterior.enable=false ' para que não seja pressionado o botão dando erro
else
   mostradados
endif

No botão próximo deve ficar assim
cmdanterior.enabled=true 'para abilitar o botão anterior
consulta.movenext
if consulta.eof then
   msgbox "Fim de arquivo",vbinformation
   cmdproximo.enable=false ' para que não seja pressionado o botão dando erro
else
   mostradados
endif

Se não esplodir sua máquina e não formatar, esses comandos darão certo, rsrsrs
Qualque dúvida posta ai

Abraço e que DEUS te abençõe, espero poder ter te ajudado
Eu sou o Senhor, o DEUS de vocês;
eu os seguro pela mão e lhes digo;
Não fiquem com medo, pois eu os ajudo
Isaias 41:13
TÓPICO EDITADO
 
Edilene
não registrado
ENUNCIADA !
Postada em 26/10/2007 20:53 hs   
Oi Álvaro,

Bem, quando tu fala : - Em um text, onde queira fazer a consulta de um determinado registro ai coloca o comando de busca de dados

    Set consulta = Db.OpenRecordset("select * from CLIENTE")
    consulta.moveMin

Em qual text eu declaro isso, pode ser no text do Id do cliente por exemplo?

E esse moveMin quando digito não aparece, ou seja não existe este comando no Visual Basic 6.0 que estou usando. Como faço?

Agradeço se puder me ajudar novamente.

Obrigada,
   
Álvaro
Pontos: 2843
GUARULHOS
SP - BRASIL
ENUNCIADA !
Postada em 29/10/2007 07:42 hs            
Edilene, bom dia
Para declarar as variáveis, você declara do form onde deseja fazer a consulta, agora para declarar a consulta pode ser sim no id cliente seu, ou em um botão selecionar por exemplo.
Esse comando movemin não existe é que o site ele troca o movef irst por movemin, más para fazer a consulta não precisa jogar para o primeiro registro, a busca de um registro específico ficaria assim
Vou chamar o text do id cliente de text1.text, e estou levando em conta que seja um valor numérico no banco de dados, e que o campo do seu id cliente no banco de dados seja idcliente,depois é só trocar os nomes, ok?!

Set consulta = Db.OpenRecordset("select * from CLIENTE where idcliente=" & text1.text)
if consulta.recordcount=0 then
   msgbox "Id não cadastrado e/ou digitado errado",vbinformation
   text1.text=""
   text1.setfocus
else
   mostradados
endif
Ficaria algo assim a sua busca, ok ?!

Se não esplodir sua máquina e não formatar, dessa vez esses comandos darão certo, rsrsrs
Qualque dúvida posta ai

Abraço e que DEUS te abençõe, espero poder ter te ajudado
Eu sou o Senhor, o DEUS de vocês;
eu os seguro pela mão e lhes digo;
Não fiquem com medo, pois eu os ajudo
Isaias 41:13
   
Edilene
não registrado
ENUNCIADA !
Postada em 30/10/2007 10:24 hs   
Oi Álvaro,
 
Bem, brigadão pela ajuda....agora tá bombando o código...e nem explodiu minha máquina...heheheheheh
 
Como faço para encerrar o tópico...sou nova no fórum e não sei como faz isso ?!!!!
 
Agradeço muito a todos que me ajudaram...vcs são dezzzzzz
 
Grande abraço,
Edilene
   
ghost_jlp
Pontos: 2843 Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 30/10/2007 22:43 hs            
Olá Edilene.
 
Para fechar o tópico vc teria que logar no site do vbweb, abrir um post e no post que vc escreveu sua dúvida (o primeiro post) vai ter um cadeado no rodapé do post mas como vc não é cadastrada ou não se logou no site para abrir este post então não deve aparecer este cadeado não sendo possível fechar.
 
Aproveita e caso não seja cadastrada se cadastre :)
Não demora nada e ajuda a gente na organização do fórum.
 
Obrigado! :)
   
Gerciley
não registrado
ENUNCIADA !
Postada em 21/07/2009 22:51 hs   
Olá a todos..
estou desenvolvendo uma pequena aplicação em Access usando VBA e queria criar em um formulário um navegador de registros que me informa a quantidade total de registro e o registro que está selecionado:
grato por qualquer ajuda
   
Página(s): 3/4     « ANTERIOR    PRÓXIMA »


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