Verificação de duplicidade na inclusao/alteraçao de registro

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

ABeltrani
Usuário Nível 2
Usuário Nível 2
Mensagens: 54
Registrado em: 09 Nov 2007 10:05
Localização: Porto Ferreira-SP

Verificação de duplicidade na inclusao/alteraçao de registro

Mensagem por ABeltrani »

Bom dia amigos clipeiros !

Na inclusão de um registro, em que momento vcs fazem a verificação de duplicidade ? Após a edição do codigo ou apos a confirmação da inclusão/alteração ?

Grato a todos.
Avatar do usuário
ademilson
Usuário Nível 2
Usuário Nível 2
Mensagens: 87
Registrado em: 07 Ago 2007 10:01
Localização: Maringá
Contato:

Mensagem por ademilson »

Com certeza a verificação deve ser no primeiro instante que voce ja tem dados suficiente para verificar a duplicidade...

abs,
_____________________
José Ademilson da Cruz
Gerente de Desenvolvimento Harbour
SG Sistemas de Automação ltda.
ABeltrani
Usuário Nível 2
Usuário Nível 2
Mensagens: 54
Registrado em: 09 Nov 2007 10:05
Localização: Porto Ferreira-SP

Mensagem por ABeltrani »

Sim, mas vamos dizer que vc tem um cadastro de clientes com os campos CODIGO, NOME e ENDEREÇO. Eu edito primeiro o campo CODIGO e depois os outros. Eu verifico a duplicidade de codigo no momento em que o usuario tecla ENTER para ir para o proximo campo. Apos a confirmação da inclusao, bloqueio o arquivo e verifico novamente. Queria saber como os outros desenvolvedores fazem apenas por curiosidade, pois pensei na possibilidade de apenas fazer esta verificação apos a confirmação da inclusao / alteração, como a maioria dos aplicativos Windows (DELPHI / VB).
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

Se você está se referindo à duplicidade de código de identificação, eu executo uma função que, automaticamente, gera um número aleatório e que já verifica se ele existe, pelo índice. Não faço isso manualmente.

Se a verificação for com relação à cliente, por exemplo, verifico na inclusão do campo se o CPF/CNPJ existe. E também no momento da gravação. Acho muito melhor assim por um motivo bem simples. O cadastro é grande. O cara não sabe se o cliente já foi cadastrado. Não vou fazer o sujeito preencher o cadastro todo só pra depois dizer pra ele que aquele CPF/CNPJ já existe.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
ABeltrani
Usuário Nível 2
Usuário Nível 2
Mensagens: 54
Registrado em: 09 Nov 2007 10:05
Localização: Porto Ferreira-SP

Mensagem por ABeltrani »

Bom dia Maligno !

Td bom ?


Os codigos de identificação eu sugiro o proximo e permito que o usuario altere se quiser. Realmente, concordo com vc, com relação ao usuario digitar tudo e no final o programa avisar que o cpf já esta cadastrado. Só postei para saber como os amigos aqui do forum faziam isso. Engraçado que a maioria dos aplicativos desenvolvidos em delphi/vb não fazem isso e só fazem a verificação no final.
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

Engraçado que a maioria dos aplicativos desenvolvidos em delphi/vb não fazem isso e só fazem a verificação no final.
Pois é. Se o cadastro for grande, imagine a frustração do sujeito quando descobre, depois de ter incluído um monte de informações, que o cliente já existe e que ele perdeu tempo à toa.

Mas isso nada tem a ver com esta ou aquela linguagem. É o procedimento que pode tanto ser feito de forma mais certa ou mais errada. Além do quê, tem programador que pede pro mundo acabar em barranco, que é pra ele poder morrer encostado. :)))
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
Eolo
Colaborador
Colaborador
Mensagens: 1134
Registrado em: 08 Dez 2005 18:24
Localização: São Paulo - SP

Mensagem por Eolo »

e só fazem a verificação no final.
ABeltrani, imagina o seguinte: vc inicia a digitação pelo CPF, que é a chave pra evitar duplicidade, certo? Vc checa se o CPF digitado não está cadastrado e, se não estiver, continua a digitação dos outros dados todos. No fim, manda gravar tudo, assim não corre o risco de perder tempo da digitação... Mas tem um 'mas'.

Na hora do 'gravar tudo', vc descobre que o CPF 123456789-00 já está lá! Isto porque outro usuário na rede foi mais rápido que vc e o cadastrou antes. E vc perdeu todo o trabalho de digitação...


O que eu faço (resumidamente): bloqueio o arquivo e procuro pelo CPF digitado. Se ele não está lá, eu APPENDo um registro com esse CPF. Daí pra frente, é só alteração de um registro existente (nome, endereço etc). Se alguém mais na rede tentar fazer a mesma coisa, vai dar "CPF já cadastrado"...
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

O que eu faço (resumidamente): bloqueio o arquivo e procuro pelo CPF digitado. Se ele não está lá, eu APPENDo um registro com esse CPF.
É mais uma opção válida também. Mas tem um mas também. :))) Se o sujeito desistir do cadastramento (pouco provável), terei de apagar esse novo registro.
De qualquer forma, fico com o meu procedimento: verificar na hora da inclusão e antes da gravação, já que não me dá trabalho (função padrão, de biblioteca). Além do quê, também é muito pouco provável (pouco mesmo) que dê falso na primeira verificação e verdadeiro na segunda. Ou seja, troca-se seis por meia dúzia.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Eolo escreveu:O que eu faço (resumidamente): bloqueio o arquivo e procuro pelo CPF digitado. Se ele não está lá, eu APPENDo um registro com esse CPF. Daí pra frente, é só alteração de um registro existente (nome, endereço etc). Se alguém mais na rede tentar fazer a mesma coisa, vai dar "CPF já cadastrado"...
Eu faço a mesma coisa que o Eolo, parte ruim disso que agora não tenho mais na GUI é que sempre que o usuario desistia do cadastro tem que deletar o registro que foi criado,então eu tinha clientes que cadastram mais de 50 por dia em cada terminal, e isso as vez deixa muito registro marcado para deletar, e eu só uso o PACK na indexação.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Responder