REGISTRO DUPLICADO MOSTRANDO Nº DO REGISTRO

MILTONSILVA94 15/01/2017 13:52:51
#470716
Estou querendo mudar o meu fonte abaixo. Na parte que diz:
MensagemErro [Ô]Perfil já está cadastrado no sistema, verifique antes de salvar![Ô] gostaria que mostrasse o nº do código/(id_perfil) do registro que já existe. Como posso continuar o código?

If txtPerfil.Text <> [Ô][Ô] Then [ô]Rotina que verifica se dados informados já existem
lsql = [Ô]SELECT * FROM PERFIS WHERE perfil LIKE [ô][Ô] & txtPerfil.Text & [Ô][ô][Ô]

Set lTBPerfis = gBDSistemaIntegrado.OpenRecordset(lsql, dbOpenSnapshot)

If lTBPerfis.EOF = True Then
[ô]MensagemErro [Ô]Perfil não consta no sistema, pode gravar o registro![Ô]
Else
MensagemErro [Ô]Perfil já está cadastrado no sistema, verifique antes de salvar![Ô]
txtPerfil.Text = [Ô][Ô]
txtPerfil.SetFocus
Exit Sub
End If
End If [ô]Fim da rotina

Valeu...
SINCLAIR 15/01/2017 14:07:18
#470717
Resposta escolhida
Bom dia.

é só colocar na mensagem o conteúdo do campo procurado e que já está cadastrado.

If txtPerfil.Text <> [Ô][Ô] Then [ô]Rotina que verifica se dados informados já existem
lsql = [Ô]SELECT * FROM PERFIS WHERE perfil LIKE [ô][Ô] & txtPerfil.Text & [Ô][ô][Ô]

Set lTBPerfis = gBDSistemaIntegrado.OpenRecordset(lsql, dbOpenSnapshot)

If lTBPerfis.EOF = True Then
[ô]MensagemErro [Ô]Perfil não consta no sistema, pode gravar o registro![Ô]
Else
[txt-color=#0000f0]MensagemErro [Ô]Perfil já está cadastrado no sistema, verifique antes de salvar![Ô] & vbCrLf & vbCrLf & [Ô]Num. Registro: [Ô] & txtPerfil.Text [/txt-color]
txtPerfil.Text = [Ô][Ô]
txtPerfil.SetFocus
Exit Sub
End If
End If [ô]Fim da rotina


O seu tópico abaixo tem 10 meses, tem dúvida semelhante e ainda está ativo. Por gentileza, encerre o tópico:

http://vbmania.com.br/index.php?modulo=forum&metodo=abrir&id=449479&pagina=2

MILTONSILVA94 15/01/2017 14:27:47
#470718
Boa tarde Sinclair,

Desta forma ele não mostra o id do registro que tem o mesmo cadastro... E sim ele pega o [ô]nome do perfil[ô] que informei....
SINCLAIR 15/01/2017 15:19:40
#470720
Colega,

Coloca o nome do campo, então. Pode ser o que tu quiser na mensagem.

If txtPerfil.Text <> [Ô][Ô] Then [ô]Rotina que verifica se dados informados já existem
lsql = [Ô]SELECT * FROM PERFIS WHERE perfil LIKE [ô][Ô] & txtPerfil.Text & [Ô][ô][Ô]

Set lTBPerfis = gBDSistemaIntegrado.OpenRecordset(lsql, dbOpenSnapshot)

If lTBPerfis.EOF = True Then
[ô]MensagemErro [Ô]Perfil não consta no sistema, pode gravar o registro![Ô]
Else
[txt-color=#0000f0]MensagemErro [Ô]Perfil já está cadastrado no sistema, verifique antes de salvar![Ô] & vbCrLf & vbCrLf & [Ô]Num. Registro: [Ô] & lTBPerfis.Fields([Ô]id_perfil[Ô]).Value[/txt-color]
txtPerfil.Text = [Ô][Ô]
txtPerfil.SetFocus
Exit Sub
End If
End If [ô]Fim da rotina
MILTONSILVA94 15/01/2017 15:23:27
#470721
Obrigado Sinclair
Tópico encerrado , respostas não são mais permitidas