Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Duda de análisis

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Duda de análisis Responder citando

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
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

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 Wink
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

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
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

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
Mensaje    Asunto: Responder citando

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 Razz
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.