1. Revisión de OpenMRS y uso de la
aplicación web (versión 2.4)
Rodrigo Ochoa, MSc
2. Que versión de
OpenMRS instalar?
2. OpenMRS Platform – Es la plataforma en producción
recomendada para usuarios avanzados. Se requiere de un
contenedor de servlets comoApache Tomcat y un gestor de bases
de datos como MySQL
3. OpenMRS Reference application – Es la que contiene toda la
información de la aplicación web y los respectivos módulos en
formato omod
1. OpenMRS Standalone – La versión de escritorio provee una
instalación con todo incluido (base de datos y servidor web). Se
puede tener una copia local corriendo en minutos, simplemente se
descomprime la carpeta y se ejecuta el archivo .jar principal
3. Dependencias para la
instalación
1. Navegador web – dada la naturaleza de OpenMRS de
aplicación web, se necesita uno (preferiblemente Mozilla o
Chrome)
Java – es la plataforma en la cual OpenMRS ha sido
programado. La reference application 2.4 pueden correr sobre
Java 7 utilizando como base alguna de las plataformas 1.X.
Para futuras versiones se requerirá Java 8
MySQL 5.6 es el sistema recomendado para administración de
base de datos. Sin embargo debido al uso del framework
Hibernate que usa OpenMRS, también se podría trabajar con
MariaDB, PostgreSQL y MS SQL server (sin embargo no han
sido probadas a cabalidad)
Apache Tomcat – finalmente para poder correr la aplicación
web a través de Java servlets
2.
3.
4.
4. Descarga de la versión de
escritorio
Ir al siguiente link de descarga:
http://openmrs.org/download/
5. Instalación de la versión
de escritorio
Descomprimir el archivo openmrs-standalone-2,4.zip (260 MB)
Hacer doble click en este archivo (recordar tener el java
instalado previamente)
6. Modo demostración
Elegir el modo demostración para que traiga precargados datos de
muestra al igual que conceptos (lo revisaremos más adelante)
7. Mensajes de instalación
La
no
versión utiliza los puertos 8081 de Tomcat y 3316 de MySQL, que
son los que suele usar por defecto para evitar inconsistencias
El proceso puede pararse en cualquier momento. Se debe tener
cuenta la pantalla en caso que salga algún error
en
8. Login a OpenMRS
Al finalizar abrirá el siguiente sitio web:
Puede ingresar con Username: admin y Password:Admin123
Debe elegir igualmente una localidad (se revisará más adelante)
9. Instalación de la versión
de escritorio
La interfaz esta dividida por apps, las cuales proveen de forma
modular las diferentes funcionalidades de OpenMRS. Estas son
habilitadas a partir de los roles y permisos de los usuarios
10. Menú y app de
administración
Todas las apps tienen un menú rápido en el cual se puede ver la
sección en la que se encuentra, o regresar a la pagina inicial
A través de esta app se puede
administrar todo el sistema.
Para ello hasta el momento
OpenMRS utiliza la interfaz
antigua antes de la versión 2.X
(en un futuro todo se migrará a
la fase 2)
12. Manejo del idioma
Se puede
configurar desde la
interfaz 2.X
o a través del
administrador
https://www.transifex.com/openmrs/OpenMRS/
13. OpenMRS Roles y
privilegios
• Los roles y privilegios se controlan
de la sección de usuarios
desde la administración a través
• OpenMRS usa privilegios para controlar el acceso a los datos dentro
del sistema, y por ende define que se puede hacer (ej. Editar
información de un paciente, agregar usuarios, etc). Los roles pueden
agrupar varios de esos privilegios (ej. Doctor, Enfermera,
Recepcionista)
• Por ejemplo, tenemos diferentes privilegios asociados a datos del
paciente como: ver pacientes (buscarlos en el sistema), editar
pacientes (agregar o modificar información previamente ingresada
de los pacientes) y agregar pacientes (crear nueva información en el
sistema).
14. OpenMRS
privilegios
Roles y
(ii)
Ahora imaginemos que deseamos
asignarle privilegios a 3 personas: María la
estudiante de medicina, Carlos el asistente
de datos y Érica la administradora de
datos
los
Queremos que los estudiantes de
medicina sean capaces de ver los
pacientes, pero no editarlos ni
agregarlos. Los asistentes de datos
pueden ver y además pueden editar
información de los pacientes.
Finalmente los administradores de
datos puede crear pacientes en el
sistema.
A veces ciertos roles se pueden
definir como la combinación de
otros roles. Por ejemplo el
administrador de datos cubre al
asistente de datos, por ende este
ultimo debería tener sus privilegios
mas otros que se agreguen
la
15. OpenMRS
privilegios
Roles
(iii)
y
adicionales
Si se desea cambiar o mejorar los privilegios del asistente de datos,
el administrador de datos se adaptará automáticamente a esos
cambios
Rol
Privilegios
heredados de un rol
Privilegios
Estudiante de
Medicina Ver paciente
Asistente de
datos
Ver paciente
Editar paciente
Administrador
de datos Asistente de datos Agregar paciente
16. OpenMRS Roles pre-
definidos
Hay algunos roles especiales que están predefinidos dentro de
OpenMRS y que no pueden ser borrados: Anonymous,
Authenticated, y System Developer.
Algunos roles vienen con el prefijo Application: y Organizational:, los
cuales son roles específicos de la interfaz 2.X
17. Agregar nuevos roles
Al
-
-
-
agregar un nuevo rol, se puede configurar la siguiente información:
Ingrese el nombre del rol
Elija los roles heredados que desea
Elija privilegios específicos para ese rol
18. Administrar Usuarios
Para crear usuarios, desde la
administración se pueden administrar a
través de funciones como:
•
•
•
Crear un nuevo usuario
Buscar usuarios por nombre o roles
Editar un usuario
Los usuarios en OpenMRS
deben ser asociados a
personas, por ende al crear un
usuario se debe crear una
persona, o asociarla a una
persona ya existente
19. Agregar Usuarios
Al agregar el usuario se configura
password
el
Hay propiedades globales (que
veremos mas adelante) para
configurar la complejidad del
password, por ejemplo:
security.passwordCannotMatchUsername
true
security.passwordMinimumLength = 8
security.passwordRequiresDigit = true
security.passwordRequiresNonDigit = true
=
security.passwordRequiresUpperAndLowerC
ase = true
También se puede configurar para
que el usuario cambie el password
después del primer login
20. OpenMRS Localidades
Las localidades representan lugares físicos donde se están atendiendo o
administrando los pacientes.
Es importante definir desde el principio que tipo de localidades cuenta la
institución que está implementando OpenMRS, y la respectiva jerarquía
entre ellas
21. Agregar una nueva
localidad
Por ende se tiene la opción de agregar nuevas localidades
Cada localidad se puede etiquetar con las siguientes opciones:
Admission Location (si los pacientes son admitidos a hospitalización)
Login Location (permite que el usuario elija una localidad al login)
Transfer Location (los pacientes pueden ser transferidos entre
localidades)
Visit Locations (solo en estas locaciones se pueden crear visitas)
22. Actividad 1
Vamos a crear un nuevo usuario para el sistema
1. Para ello vamos a configurarlo como un doctor que va a tener los
siguientes privilegios:
-
-
Organizational: Doctor (rol)
Se le agregará al rol anterior el rol heredado:Application:
Schedules Appointments
2. Luego vamos a crear una nueva localidad, en este caso vamos a
llamarla: Consulta Externa, con propiedades para hacer login y para
realizar visitas
3. Salgase del sistema y haga login con el nuevo usuario y localidad
4. Cree un nuevo paciente bajo esta configuración
24. Modelo de datos
– Mientras que OpenMRS tiene relaciones 1:1 entre las entidades
las tablas de la base de datos, no quiere decir que se la forma
más eficiente de diseñar funciones
y
– Sin embargo es mucho más fácil de entender para aquellos
Nuevo al Sistema o que quieren contribuir con código
– El modelo de datos permite que cada objeto de OpenMRS tenga
una relación con campo de una tabla en la base de datos
– Quiere decir que para la entidad Persona, hay una Tabla de
personas. Para una entidad de Usuario hay un atabla de
Usuarios, y así para otros campos
25. Dominios del modelo de
datos
Concepto: Los conceptos son definidos y usados para soportar todos
los datos ingresados en el sistema
Encuentro: Contiene todos los metadatos de los proveedores
intervienen con un paciente
Formulario: Es la descripción en la interfaz de usuario de los
componentes de un formulario general o específico
Observación: Aquí es donde la información del paciente es
almacenada. Eso quiere decir que hay muchas observaciones
encuentro
que
por
Orden: Cosas o acciones que se requiere que
Paciente: Información básica de los pacientes
Usuarios: Información básica de las personas
ocurran
del sistema
que usan el sistema
Persona: Información básica de las personas en el sistema
Business: Datos no médicos que se usan para administrar OpenMRS
Grupos: Flujos de trabajo y datos de cohortes
26. Datos y metadatos
La información que se almacena directamente en OpenMRS se denominan
Datos. Ejemplo de datos en OpenMRS son pacientes, encuentros y
observaciones. Para soportar los datos y describir su significados, se necesitan
Metadatos adicionales
Datos
• Cuando un usuario borra un fragmento de datos dentro de OpenMRS, la
información permanece en la base de datos. Es marcada como voided, por
lo cual ya no aparece en la interfaz y no borrada inmediatamente de la base
de datos
Si por ejemplo un usuario borra por accidente un grupo de datos, el
administrador puede unvoid los datos y regresarlos al Sistema. Para borrar
permanentemente los datos se debe hacer purge a la base de datos, sin
embargo no es una práctica recomendada
•
Metadatos
• In general son las cosas que se deben configurar para describir la
información real del paciente. Un ejemplo de metadatos son las localidades.
27. Diccionario de conceptos
• El diccionario de conceptos de OpenMRS es la base de conocimiento
central de términos médicos y no médicos asociados a programas en
salud
• Por ejemplo, si queremos capturar información de los signos vitales
de un paciente que ha sido registrado en una clínica, debemos definir
los términos que van a ser almacenados. Ej. Altura, peso, presión
sanguínea sistólica, presión sanguínea diastólica, etc.
• Cada uno de estos necesita un concepto en OpenMRS. Por ejemplo
si se pregunta algo que tenga un conjunto fijo de respuestas, todas
ellas son conceptos. Por ejemplo a la pregunta Tipo de Sangre, hay 4
diferentes conceptos como respuesta:A, B, AB y O
28. Administrar los
conceptos
Los conceptos se pueden revisar desde la administración del sistema. Por
defecto OpenMRS viene con un conjunto de conceptos por defecto. Sin
embargo el implementador puede poner mas a través del proyecto CIEL, o se
pueden agregar manualmente
30. Correlación con el
proyecto CIEL / MCL
Para garantizar la interoperabilidad y vincular la información con otros
proveedores que usan OpenMRS u otro sistema de HCE, es
necesario estandarizar la terminología con proyectos como el ICD-10,
SNOMED y RxNorm
Los conceptos de OpenMRS están asociados al Proyecto CIEL / MCL,
en el cual se pueden buscar conceptos que se quieran implementar
localmente. Por ejemplo busquemos la presión sanguínea sistólica en:
http://www.maternalconceptlab.com/search.php
31. Visitas y encuentros
Una visita en OpenMRS representa un periodo de tiempo en el cual un
paciente esta interactuando con el sistema de salud, típicamente en una
localidad
•
• Los metadatos que diferencian los tipos de visitas son el Visit Type,
cuales están descritos en la interfaz de usuario.
los
• Las visitas contienen encuentros, los cuales guardan datos más
granulares sobre tratamientos y/o servicios
• Un paciente puede recibir diferentes servicios dentro de un instituto.
ejemplo, puede ser visto por un medico, que le hagan una ayuda
Por
diagnóstica o que le entreguen una prueba de laboratorio. Cada uno de
estos servicios es un encuentro que se ingresa desde un Formulario.
OpenMRS utiliza visitas para recolectar estos encuentros en un solo grupo
32. Tipos de visitas
Los tipos de visitas son un nombre y una descripción de una clase de
visita. Cada visita tiene un tipo. Los tipos de visitas se deben crear
según como el instituto de salud las clasifique, por ejemplo si son
consulta externa, hospitalización, odontológica, educación del
paciente, entre otras
Si se quiere guardar información adicional de las visitas se tienen
atributos, por ejemplo “visita de seguimiento” o “distancia viajada por el
paciente”, entre otras
33. Configuración de visitas
• Las visitas están habilitadas por defecto, pero es algo opcional.
Mientras la visita este habilitada, el panel del paciente mostrará una
opción llamada Visitas, y agrupara todos los encuentros por visita. Si
esta deshabilitada, el panel del paciente mostrara los encuentros
cronológicamente sin agrupar
Una visita tiene un tiempo de inicio y finalización. El tiempo de inicio
es configurado automáticamente cuando se crea la visita. El tiempo
de finalizado queda en blanco por defecto. Este es puesto luego
manualmente por el administrador
Hay una opción para que se cierre automáticamente la visita a las
23:59 del día en el que se haya creado
•
•
34. Ejemplos (i)
Registrar un
paciente
El formulario
básico de registro
no se puede
modificar (los
campos
existentes). Sin
embargo se
pueden agregar
otros campos o
formularios
adicionales
35. Ejemplos (ii)
Encontrar un paciente. OpenMRS genera identificadores por defecto, pero
se puede personalizar un identificador manual según los requerimientos de
la institución
38. Actividad 2
Vamos a recopilar información del paciente previamente registrado
1. Buscar el paciente y abrir el perfil. Generar una nueva visita
2. Capture los signos vitales del paciente a la fecha
3. Dejaremos la visita pendiente, y vamos a verificar si en el diccionario
de conceptos (a través del administrador) esta disponible el siguiente
diagnóstico: Gastritis
Al revisar responde lo siguiente: En cuantos idiomas tiene traducción?
Tiene mapeo a ICD-10 y SNOMED-CT?
3. Genere una nota y un diagnóstico para ese paciente de Gastritis
4. Finalice la consulte y verifique el historial del paciente
39. Cronograma de visitas
El administrador encargado de las historias clínicas
dependiendo de:
puede agendar citas
•
•
•
Los proveedores asociados al sistema y la disponibilidad horaria
El tipo de consultas que se tiene habilitado en el sistema
Las necesidades que requiera el paciente
40. Propiedades
En administración se
pueden configurar las
propiedades globales,
las cuales están
divididas por cada
modulo
globales
•
• Cada modulo muestra
un grupo de opciones
que pueden ser
configurados, y que
son globales del
sistema (afecta a todos
los usuarios)
• Cuidado al cambiarlas
ya que no se puede
revertir los cambios
41. Módulos
Existe la opción de personalizar toda la implementación a través de
módulos con funcionalidades particulares
https://modules.openmrs.org