FoxPro/Visual FoxPro - Base de datos con campos variables....

 
Vista:

Base de datos con campos variables....

Publicado por Carlos (61 intervenciones) el 28/06/2001 19:05:40
Hola, necesito hacer lo siguiente, debo crear una base de datos pero necesito almacenar informacion variable. Me voy a tratar de explicar:

Tengo una tabla principal en la que almaceno informacion de vehiculos, a estos vehiculos se les instalan unos accesorios, para lo cual cree otra tabla con accesorios para que el usuario los defina, pero el usuario quiere almacenar cierta informacion para cada accesorio, diferente, la cual depende del accesorio, mi idea es que de alguna forma el usuario cree el accesorio y los campos que puede almacenar de cada uno de forma libre, como puedo hacer esto...No se si me explique bien.

Gracias.... y si tienen dudas las amplio... perdon las resuelvo...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

un poco dificil, pero se puede

Publicado por jorge luis (1 intervención) el 29/06/2001 14:57:11
En realidad existen dos formas, la mas facil sería utilizando un campo memo, para que cada vez que el usuario cree un accesorio, defina en el libremente lo que desee. También pudieras analizar todos los datos comunes para los accesorios y crear una tabla con un minimo de campos que serán los datos comunes y un campo memo para lo demas.
Existe otra forma, mas complicada, que sería mediante un juevo de 3 o mas tablas, donde el usuario pudiera definir todo lo que quiera. En una ocasion lo hice con un programa para laboratorios clinicos, y me funcionó bien. Piensalo tendrás que gastarte unas 2 noches sin dormir y despues programar.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Base de datos con campos variables....

Publicado por wences (457 intervenciones) el 02/07/2001 18:07:46
Si entendi correctamente tu problema , lo que tienes es un numero indeterminado de accesorios por cada vehiculo ... si es asi podrias hacer lo siguiente ... dos tablas una contiene la informacion general y la otra la de accesorios ...enlazados por el codigo ... me explico ...

Tabla 1 (general) vehiculo , usuario , otros datos.

Tabla 2 (accesorios) codigo (sera el del vehiculo) , contador (numero de accesorio) , datos ....

De esta manera no tienes mayor problema para poner un numero de accesorios distintos para cada vehiculo ... el campo contador es el que determina el numero maximo de accesorios ...

Espero te sirva...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Entendiste mal Wences

Publicado por CarlosA (61 intervenciones) el 03/07/2001 14:39:45
No entendiste bien o no me explique bien, el numero de accesorios por vehiculo no es problema, el problema es que para cada accesorio el usuario tiene cierta información que almacenar como marca, modelo, serie, en fin cada accesorio tiene sus propias caracteristicas, por esto no puedo dar unos campos predefinidos para almacenar esta información, ademas que conociendome a estos usuarios, cada vez se les va a ocurrir algo nuevo, por eso quiero que de alguna manera ellos definan que datos almacenan por cada accesorio. Otra cosa, despues que un accesorio es definido y los datos que se van a guardar, estos son estandar para todos los vehiculos que vayan a llevarlos, o sea que con un campo memo no seria buena solución.

Por ejemplo: el usuario crea el accesorio alarma, pero para esta desea almacenar: marca, modelo, serie, voltaje ( bueno lo que se le ocurra), pero por decir algo se crea otro accesorio como Extintor de Incendio, pero para este se va a guardar: Marca, Carga, Fecha de Carga, Vigencia Carga, Ubicacion, etc. Es decir para cada accesorio se debe poder almacenar informacion pero esta no es estandar.

Espero haberme explicado mejor.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Soy Humano

Publicado por wences (457 intervenciones) el 03/07/2001 20:24:31
El problema es entonces distinto ...

Solucion (es un ejemplo,no lo tomes al pie de la letra) crea una tercera tabla donde guardas los nombres de los campos para cada elemento , es decir crea un accesorio , le dejas que ponga el nombre de los datos a guardar marca , fecha carga , etc ...pon un limite de campos los que quieras 20, 25,99 tu mismo (quien mejor para saber cual es el maximo), dejale que ponga los nombres y los guardas ... bien tenemos la tabla con los accesorios ...otra con los nombres de cada componente o dato a guardar ... y otra tabla con los datos que guardamos de cada accesorio ..., que podria ser la misma tabla que la de los nombres ... con un codigo especial que distinga las cabeceras (titulos) de los datos reales ... ahora solo te queda crear la presentacion de los mismos en pantalla para introducir datos ... podria ser un grid , una lista donde selecciona los elementos , etc ... truco , cuando el primer campo de nombres esta vacio , sabes que es el final ...

Es algo que se me ocurre sin pensarlo mucho , pero quizas te sirva de orientacion para tu caso ...

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Soy Humano

Publicado por El tercer ojo (1 intervención) el 03/07/2001 21:57:49
Volvemos a las andadas!
wences> Es algo que se me ocurre sin pensarlo mucho
tercer> porque no piensas algo en serio y luego das una respuesta como corresponde ? si quieres responder, obvio!
wences> es que soy humano
tercer> really? yo creo que eres como Pinocho, pareces humano pero eres de madera.
wences>eres una mala persona.
tercer>si!, como lo supiste? ya sé! porque escribo en forma anónima.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar