| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Invitado
|
Publicado: Lun 07 Mar, 2005 1:18 pm Asunto: Duda de análisis |
|
|
Pues no se si esto debo preguntarlo aquí, pero expongo el caso.
Estoy haciendo una aplicación que genera reconocimientos médicos. La mayor parte de datos entrantes vienen a partir de checkboxes.
Mi duda me surge al crear la base de datos. Si tengo por ejemplo un apartado (p.e. otoscopia) con 40 checkbox, que sería mejor, hacer en la tabla 40 campos (uno por cada check) o un unico campo varchar y que este me almacenara un código de 2 dígitos asociados a cada checkbox, de forma que quedara cada registro (cada paciente) de la forma 01020304 (se marcó checkbox 01 02 03 y 04)? Lo pregunto, porque ademas de otoscopia hay 30 apartados mas con el mismo numero de checkbox aproximadamente
No se si me explicado bien, pero confío en que podais ayudarme. |
|
| Volver arriba |
|
 |
laremi400 Master

Registrado: 12 May 2004Mensajes: 179
|
Publicado: Mar 08 Mar, 2005 4:31 pm Asunto: |
|
|
Hola!!
Si sólo admite un checkbox en cada apartado, también puedes usar una variable de tipo entero(int,smallint,etc) que ocupa menos espacio.
El problema vendrá cuando en cada apartado se admita más de un checkbox.
Claro que habría que conocer mejor el problema para poder darte una respuesta más concreta.
Suerte! |
|
| Volver arriba |
|
 |
cecito Capt

Registrado: 25 Nov 2003Mensajes: 164Ubicación: Arequipa - Perú
|
Publicado: Mie 09 Mar, 2005 6:50 pm Asunto: |
|
|
Te pediría un poco más de información.
Esos 30 Checkbox que representan, asumo que sintomas, de ser así seria mejor 30 campos lógicos( small int en interbase), pero si a futuro se debe agregar mas checkbox entonces no te conviene tener 30 campos, si no tener una tabla de sintomas.
luego por paciente en una tercera tabla relacionas al paciente con su grupo de sintomas( estariamos creando un maestro detalle). pero como te indico se necesita más información para poder ayudarte mejor.
Espero que alguno de mis consejos te sirva  |
|
| Volver arriba |
|
 |
Invitado
|
Publicado: Vie 11 Mar, 2005 10:36 am Asunto: |
|
|
Lo de 40 campos para cada checkbox no lo veo del todo bien, sobre todo por lo que comentas de añadir nuevos checkbox, ten en cuenta que debo generar informes. Tendría que estar comparando cada checkbox para poner o no el sintoma.
Lo que pense es una tabla
ID_RECONOCIMIENTO CHAR10, REC_CORAZON VARCHAR(250), REC_OCULAR(250),...
y poner como dices una tabla SINTOMAS
1001 - Inspección corazón normal
1002 - Arrítmia
...
1101 - Inspección ocular normal
1102 - Orzuelo ojo derecho
1103 - Orzuelo ojo izquierdo
...
De forma que por cada reconocimiento tendría un único registro:
(ma-0001-04, 1001, 1102-1103,...)
La duda ahora es saber si es mejor esta forma o meter un maestro/detalle. Por si sirve de algo, por cada grupo de checkbox (corazon, ocular...) hay un blob de comentarios. |
|
| Volver arriba |
|
 |
laremi400 Master

Registrado: 12 May 2004Mensajes: 179
|
Publicado: Lun 14 Mar, 2005 9:09 am Asunto: |
|
|
Hola!
¿Por que no te miras el componente TComboBox?. Igual es la solución a tu problema. Tiene una propiedad ItemIndex que sería la que guardarías en la tabla. La única condición es no cambiar nunca el orden de los síntomas dentro de cada combobox.
Claro que esto es una pista. A partir de aquí puedes elaborar mucho más el programa, para que aunque te pidan cambiar el orden de los síntomas dentro del combo no te afecte al resto, etc.
Así que ánimo y darle vueltas al coco...
Suerte! |
|
| Volver arriba |
|
 |
Invitado
|
Publicado: Lun 14 Mar, 2005 10:21 am Asunto: |
|
|
| Aquí la cuestión no son los componentes, sino como estructurar los datos. Respecto lo del ComboBox no sirve, se pueden seleccionar varias opciones, no una. |
|
| Volver arriba |
|
 |
cecito Capt

Registrado: 25 Nov 2003Mensajes: 164Ubicación: Arequipa - Perú
|
Publicado: Lun 14 Mar, 2005 9:42 pm Asunto: |
|
|
Un posible diseño sería el siguiente:
Tabla Reconocimientos
IdReconocimiento(clave principal)
IdPaciente
Fecha y/o Hora del Reconocimiento
Tabla Tipos de Reconocimientos
IdTipoReconocimiento(clave principal)
Descripción del Reconocimiento
Tabla Sintomas
IdSintoma(clave principal)
IdTipoReconocimeinto (para saber a que tipo pertenece)
Descripción del Sintoma
Tabla RecoSin (para establecer la relación del reconocimiento con sus sintomas)
IdRecoSin(clave principal)
IdReconocimiento
IdSintoma
Cada vez que creas un nuevo reconocimiento agregas en la tabla RecoSin los idSintomas y con su IdReconocimiento. Tu ventana debera permitir elegir los sinstomas para poder agregarselos al reconocimiento.
Una variante sería:
Tabla RecoSin (para establecer la relación del reconocimiento con sus sintomas)
IdRecoSin(clave principal)
IdReconocimiento
IdSintoma
Tiene ( lógico)
Cada vez que creas un nuevo reconocimiento le copias inmediatamente todos sus sintomas en Tabla RecoSin Pero permites que el usuario pueda activar o desactivar cada sintoma atravez del campo Tiene
Espero que te dé algunas ideas  |
|
| Volver arriba |
|
 |
|