Problema con registros de practicas de laboratorio bioquímico en access

Estoy desarrollando una base de datos de laboratorio clínico, el problema es que al cargar un pedido protocolo de un paciente, ese tiene distintas practicas, eje 412 que es una glucemia, 174 que es el colesterol, etc.estas son practicas individuales y se le agrega un resultado. El problema es si quiero cargar un combo de practicas como por ejemplo 110 que incluye bilirrubina total, bilirrubina directa, bilirrubina indirecta y cada uno de esos elementos tiene un resultado no hay forma. En la actualidad tengo que escribir un código para cada uno de esos elementos ej 110 para bilirrubina, 1100para bilirubuna indirecta, etc.. La idea es que con un solo código 110 aparezcan los tres registros de esas practicas en el subrormulario. Aclaro las practicas las cargo desde ese mismo subformulario donde dice codi allí agrego los códigos y voy bajando si tiene más pedidos

1 Respuesta

Respuesta
2

Es largo, pero... Supongamos que tienes una tabla Pruebas, donde tienes todas las pruebas con sus respectivos códigos, entre ellas están

110 Bilirrubina

1100 Bilirrubina total

11000 Bilirrubina Directa

130 Colesterol

1300 Colesterol Bueno

13000 Colesterol malo.

Pon el campo Cod como texto.

Supongamos ahora que tienes una tabla Pacientes, con Idpaciente, nombre, etc. y una tabla DetallePruebas con Idpaciente, etc, Cod, prueba, etc, y con ellos has hecho un formulario con un subformulario.

Con la tabla Pruebas crea un consulta de datos anexados a la tabla DetallePruebas y en el campo Cod, debajo, en la casilla de criterios pon

Como [forms]![pacientes]![detalleprueba].[form]![cod] & "*"

Luego en el subformulario DetallePruebas, en el evento Después de actualizar del cuadro de texto Cod pon

DoCmd.SetWarnings False
DoCmd.RunCommand acCmdSaveRecord
DoCmd.OpenQuery "Nombredelaconsulta"
DoCmd.RunSQL "update detalleprueba set idpaciente=" & Me.IdPaciente & " where idpaciente is null"
DoCmd.RunSQL "delete * from detalleprueba where prueba is null"
Forms!pacientes!detalleprueba.Form.Requery
End Sub

Me explico.

1º No muestres la ventana de va a anexar...

2º Guarda el registro(para que Cod tenga valor)

3º Ejecuta la consulta de datos anexados, con aquellos registros que empiecen por el cod que has escrito..

4º A los registros anexado, ponles el Idpaciente, de ese paciente que está en esos momentos en la pantalla,

5º Borra el primer registro( que tiene nulo el valor de prueba

6º Que el subformulario reconsulte su origen de datos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas