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

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Duplicidade
Marcelino Neto
não registrado
ENUNCIADA !
Postada em 27/07/2004 18:18 hs   
Boa Noite!!!
Trabalho com o VB 6.0 e access 97, estou desenvolvendo um sistema para controle de escola, gostaria da ajuda de vcs para tirar uma duvida!!!
Como faço para quando for cadastrar um novo aluno e ao terminar de digitar o cpf no campo txtCpf ele  verificar a tabela, caso o aluno já esteja cadastrado ele me retorna uma mensagem com a opção de editar os dados deste aluno.
 
Alguém pode me ajudar???
 
Marcelino Neto
   
Geronimo
Pontos: 2843
JOINVILLE
SC - BRASIL
ENUNCIADA !
Postada em 27/07/2004 18:36 hs            
Segue um exemplo:
 Dim Criterio As String
          
            Criterio = "Nome = '" & cmbnome.Text & "' and Categoria = '" & CmbCategoria & "' and Matricula = '" & cmbmatricula.Text & "' and Local = '" & txtlocalcompetição & "' and Data = #" & Format(txtdatacompetição, "mm/dd/yy") & "# "
            TBSúmula.FindMin Criterio
           
           
        If TBSúmula.NoMatch = False Then
            MsgBox "Já consta na Súmula a Participação do Atleta." & Chr(13) & "Verifique se foi selecionado os campos corretos.", 48, "Aviso de Duplicidade"
                        LimpaFormulário
            cmbnome.SetFocus
       Else
            
             TBSúmula.AddNew
            AtualizaPontos
           
         End If

"O pior inimigo que você poderá encontrar será sempre você mesmo."
   
RWeb
SÃO VICENTE
SP - BRASIL
ENUNCIADA !
Postada em 27/07/2004 18:41 hs            
Cara essa é uma situação normal do dia-dia. Impedir duplicidade quando for necessário... Eu já tive que fazer umas coisas nesse sentido. Então... acho que posso te ajudar pelo menos em 50% da resolução do teu´problema. Vamos lá:
 
Vc tem duas opções para verificar o CPF e impedir a duplicidade:
 
1º No evento Lost_Focus da txtCpf vc pode disparar uma consulta com o conteudo da mesma e se retornar algum resultado vc avisa o usuario. Tipo com uma MSGBox. Eu aviso assim: Pego a Linha retornada (no caso de um cadastro de pessoa) e retorno o nome do cara que ja ta usando aquele CPF no cadastro.
 
2º deixo o usuario cadastrar tudo, todos os dados! E na hora de salvar eu faço a mesma verificação e retorno pra ele se houver algum cadastro com o CPF que ele tentou cadastrar. Novamente retorno numa MSGbox o nome e tal... Acho éssa segunda opção a mais viavel! Ou até um complemento para a 1º...
 
Agora quanto abrir pra edição caso encontre... Eu como trabalho com Recordset conectado e sempre tenho os dados ao vivo na memória... Faria esta verificações através do método FIND! Verificaria o CPF caso retorne alguma linha, nesse caso, eu daria a mesma MSGBox com o nome do fulano que ta retornado e bt´s de opção para continuar no cadastro ou editar o encontrado. Tudo depende das regars com as quais vc ta trabalhando. Quando falo regras... Quero dizer de que forma vc esta controlando novos, edição, exclusão de cadastro. Nesse seu caso se encontrar o cadastro com o CPF e vc alem de mostrar que ja ha um cadastro com aquele CPF vc der a opção de edição do encontrado e o usuario clicar em editar. Retorne pro seu form os dados do cadastro encontrado e faça o form sair do modo de "Novo Cadastro" e entrar no modo de "Edição". ok?
 
Espero ter ajudado! Qualquer coisa posta de novo...
 
Abraços e boa sorte!
   
THECRAZY
Pontos: 2843
BRASÍLIA
DF - BRASIL
ENUNCIADA !
Postada em 27/07/2004 19:03 hs            
Ola !!!
No MaxFocus do txtcpf
---------------------------------------------
conexao.execute "Select * From Alunos where CPF = " & txtcpf , Registros_Afetados
if Registros_Afetados > 0 then
       msgbox "Já existe um aluno com este CPF !!!
end if
 
 

  Eu sou o alfa e o ômega, o princípio e o fim, diz o Senhor, que é, e que era, e que há de vir, o Todo Poderoso. (Ap 1.8)
   
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