Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Nombre de Personas Duplicados (https://www.clubdelphi.com/foros/showthread.php?t=84504)

berna 27-10-2013 13:57:10

Nombre de Personas Duplicados
 
Buen Día:

Estoy utilizando firebird 2.5.

Tengo una base de datos de contactos con la cual se han generado problemas con los datos duplicados.
He implementado una comparación de datos simple pero lamentablemente los datos duplicados que están siendo
introducidos no son exactamente el mismo. Por ejemplo, los nombres se escriben incorrectamente o una persona
pondrá 'Maria Gonzalez' y otro pondrá en 'Ma. Gonzalez' o 'Ma. Gonsalez' para la misma persona.


¿Existe un Algoritmo o Método para obtener un mayor porcentaje de registros duplicados entre una entrada y otra?

Gracias de Antemano....

Casimiro Notevi 27-10-2013 14:10:13

Cita:

Empezado por berna (Mensaje 468975)
¿Existe un Algoritmo o Método para obtener un mayor porcentaje de registros duplicados entre una entrada y otra?

Eso no lo entiendo, parece que quisieras duplicar los nombres :confused:
Lo que tienes que hacer, además de un código para cada registro, es que el campo clave sea algo que no pueda ser duplicado, ejemplo el NIF/DNI/Nº.S.S./Pasaporte, etc. algo que no se repita.

mamcx 27-10-2013 21:53:24

Eso es complicado. Algunas ideas:

http://stackoverflow.com/questions/1...-in-texts?rq=1

http://stackoverflow.com/questions/1...ictionary-word

http://stackoverflow.com/questions/3...text-heuristic

http://www.quora.com/Whats-a-good-al...name-detection

Sin embargo, esa vuelta es ppalmente si ya tienes los datos y necesitas procesarlos. Si solo es evitar que la gente digite mal algo, es mejor hacer un edit con autocompletar, de esa forma el usuario se da cuenta que ya esta digito algo parecido...

AzidRain 29-10-2013 00:15:39

Depende de que signifiquen los nombres. Pues validar lo que escriben para evitar abreviaturas (Ma., Gpe., etc.) pero de todos modos tendrás el problema de que escriban con faltas de ortografía. Lo ideal es que el campo clave de la tabla no sea el nombre sino otro dato que sea difícil duplicar o si utilizas una clave artificial, permitir al usuario que conforme vaya escribiendo le aparezca una especie de speedsearch de lo que ya hay capturado por si lo encuentra ahí. De cualquier forma mientras no uses una clave prinicipal que sea irrepetible, siempre tendrás ese problema, hasta parece que los usuarios hacen todo lo posible por lograr duplicar registros.

Neftali [Germán.Estévez] 29-10-2013 10:01:45

Pues voy por el mismo camino que ya te han comentado.
No creo que exista algo preestablecido.
Creo que tendrás que crear una serie de reglas a medida que vayas conociendo los datos duplicados e ir aplicándolas.

ElDioni 29-10-2013 13:21:11

En la misma línea, yo lo que hacía antes era lo que comenta mamcx, un casillero donde conforme vas escribiendo se va autocompletando el texto con la coincidencia, ahora lo que hago es mostrar un grid que va filtrando todas las coincidencias posibles conforme vas escribiendo. También puse un campo con el nombre comercial de la empresa, al filtrar busco en el nombre fiscal y en el comercial. Una empresa que sea "Carpintería casiopea S.A." normalmente se conocerá por "Carcasa".

Saludos.

Casimiro Notevi 29-10-2013 13:44:31

Cita:

Empezado por ElDioni (Mensaje 469041)
Una empresa que sea "Carpintería casiopea S.A." normalmente se conocerá por "Carcasa"

Allá, por 1986, me encargaron el software de un negocio y me fui a ver (disimuladamente, pasando como cliente) cómo trabajaban varios negocios de ese ramo. Encontré algunos que tenían un software que usaban esa técnica que comentas, en este caso eran las 2 primeras letras del nombre, las 2 primeras del primer apellido y las 2 primeras del segundo apellido, ejemplo: "Federico Sanz Carlo" tenía el código automático: "FESACA". Sin embargo deseché ese sistema porque había casos repetidos con nombres y apellidos distintos y por otro motivo, algunos clientes se molestaban bastante y se iban a otro negocio, el motivo: "Manuel Rico Castro", "Sonia Puerta Tamayo", "Miguel Eras Davila", etc.
Y no es broma.

ecfisa 29-10-2013 14:45:06

Cita:

Empezado por Casimiro Notevi (Mensaje 469043)
... "Manuel Rico Castro", "Sonia Puerta Tamayo", "Miguel Eras Davila", etc.

:D:D:D ¿ Y quién no estaría molesto ?

Saludos :)


La franja horaria es GMT +2. Ahora son las 01:48:18.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi