Page 1 of 1

Identificador uui

PostPosted: Fri Nov 21, 2014 6:22 pm
by hmpaquito
Muchachos,

Estaba pensando en crear un Universally unique identifier. Parece que hay una libreria que los genera (uuid.lib) pero son muy largos (36 caracteres).

Habia pensado crear uno... oWnd:hWnd+ hb_randomint(1, 999999)

Quizá el identificador unico deberia recoger usuario+ fecha+ hora... no sé... la verdad es que es un auténtico lio. Además las claves que se podrían generar son largas y eso para ser almacenadas es contraproducente.

Alguna idea, sugerencia, experiencias.

Desde ya, gracias ! Saludos

Re: Identificador uui

PostPosted: Sun Nov 23, 2014 7:31 am
by Antonio Linares
Paco,

Y para que quieres usar ese identificador ?

Explícanoslo y a ver que se nos ocurre entre todos :-)

Re: Identificador uui

PostPosted: Thu Nov 27, 2014 4:04 pm
by hmpaquito
Un ejemplo, puede haber varias casuisticas: un maestro detalle donde la clave unica de enlace es la fecha... queremos una clave "estable" y unica que no tenga que ser actualizada en el detalle cada vez que se cambie en el maestro. Espero haberme explicado.

Gracias por el interés

Re: Identificador uui

PostPosted: Thu Nov 27, 2014 4:17 pm
by Antonio Linares
Entiendo...

Microsoft proporciona un API para crear identificadores únicos, podria ser una solución

Re: Identificador uui

PostPosted: Thu Nov 27, 2014 4:47 pm
by hmpaquito
Si, creo que es la libreria uuid.lib... el problema es la longitud... de todas formas no sé si lo que pido no tiene demasiado sentido: un identificador unico y que ocupe poco...
Si es lo que tienen nuestras dbfs... que al emPACKetar el recno baila y nos quedamos sin referencia unica... bien podía haber puesto Ashton-Tate un o unos identificadores unicos por registro... :evil: :wink:

Re: Identificador uui

PostPosted: Thu Nov 27, 2014 4:54 pm
by Antonio Linares
Tienes toda la razón... :-)

y la fecha más la hora (en milisegundos) ?

Re: Identificador uui

PostPosted: Thu Nov 27, 2014 5:27 pm
by hmpaquito
No.... le he dado mas vueltas que vueltas da un perro para acostarse.

Imaginate: llega informacion por distintos cauces... por el entorno de trabajo, por la web, por tabletas... informacion que es generada en el mismo dia y si apuramos milesimas (no hay que descartar procesos batch de generacion masiva de informacion que pueden provocar times (horas) coincidentes...

La relacion maestros - detalle es clara para el que la vuelca a la db, pero una vez en la db, debe seguir manteniendose esa relacion, teniendo en cuenta las posibbles coincidencias en los times.

Por tanto el time tampoco es valido...

En fin, una pesadilla.

La solucion, la tipica: un numerador que al recibir la informacion vaya asignando... pero es que lo de los numeradores arrastra consigo la creacion de un campo numerador en dbf paralela y sobre todo mucho cuidado de que siempre avance forward.... que sino... se lia y mucho.

Re: Identificador uui

PostPosted: Thu Nov 27, 2014 5:32 pm
by Antonio Linares
Y el tiempo más la geo localización ? :-)

coordenadas gps

Re: Identificador uui

PostPosted: Thu Nov 27, 2014 6:10 pm
by hmpaquito
:D :D :D

Ya lo veo:
Requerimientos de mi programa, Windows Xp o superior, 1Gb de espacio libre o mas, bla bla bla y 3 metros minimo de separacion entre usuario y usuario :D :D :D

Re: Identificador uui

PostPosted: Thu Nov 27, 2014 6:28 pm
by MOISES
Hola,

Harbour tiene un tipo de campo "+", que es autoincremental y no le afecta el PACK.

Espero que te sirva.

Re: Identificador uui

PostPosted: Thu Nov 27, 2014 6:59 pm
by hmpaquito
Moises,

Muchisimas gracias... existe el campo autoincremental.
Harbour es la pera.

Saludos

Re: Identificador uui

PostPosted: Thu Nov 27, 2014 8:54 pm
by Antonio Linares
De una forma u otra siempre le encontramos solución a lo que buscamos ;-)