Saltar a contenido

Pruebas de espirometría

Descripción

En las fichas de vigilancia de la salud (tanto la que cumplimentan los servicios de prevención, como la que cumplimentan los servicios de neumología) hay que añadir los campos correspondientes a los resultados de pruebas funcionales respiratorias (espirometrías).

Estos campos son:

  • Capacidad vital (FVC),
  • Volumen espiratorio forzado en un segundo (FEV1)
  • Razón FEV1/FVC

que se graban en forma de porcentaje, como un número entero entre 0 y 100.

Según el resultado de estas pruebas se tiene uno de los siguientes tipos:

  • 0. Patrón normal
  • FVC normal,
  • FEV1 normal,
  • FEV1/FVC normal.
  • 1. Patrón obstructivo
  • FVC normal,
  • FEV1 disminuido,
  • FEV1/FVC disminuido.
  • 2. Patrón restrictivo
  • FVC disminuido,
  • FEV1 disminuido,
  • FEV1/FVC normal.
  • 3. Patrón mixto
  • FVC disminuido,
  • FEV1 disminuido,
  • FEV1/FVC disminuido3.

Solicitado por Mercedes Elvira Espinosa en reunión de 11 de febrero de 2020.

Estudio de solución

Mercedes Elvira: visto bueno

Servicios de prevención

Los cambios afectan al menú Ficha Servicios Prevención del Módulo de Vigilancia de la Salud. A este menú tienen acceso los siguientes grupos de usuarios:

  • Grabadores de fichas (perfil GTEAM_GRABADOR)
  • Alta
  • Modificación/Consulta
  • Servicios de prevención (perfil GTEAM_SERV_PREV)
  • Alta
  • Modificación/Consulta
  • Imprimir ficha vacía
  • Listados
  • Servicios territoriales (perfil GTEAM_STERRIT)
  • Alta
  • Modificación/Consulta
  • Imprimir ficha vacía
  • Listados
  • Administradores (perfil GTEAM_ADM)
  • Alta
  • Modificación/Consulta
  • Imprimir ficha vacía
  • Listados

Pantalla de alta

La pantalla actual es:

None

La nueva pantalla debería quedar como:

None

  • Modificaciones en base de datos

Habría que incluir los nuevos campos:

  • Capacidad vital (FVC),
  • Volumen espiratorio forzado en un segundo (FEV1)

de la forma

Columna Tipo Descripción
N_FVC Number % FVC (Capacidad vital) en espirometría
N_FEV1 Number % FEV1 (Volumen espiratorio forzado en un segundo) en espirometría

en la tabla TEAM_VIG_SALUD_ACTIVOS.

Nota: el campo Razón FEV1/FVC se puede calcular desde la aplicación.

DUDA: ¿Sería interesante incluirlo en Base de Datos?

  • Modificaciones Java

Habría que incluir los nuevos campos:

  • Capacidad vital (FVC),
  • Volumen espiratorio forzado en un segundo (FEV1)
  • Razón FEV1/FVC

Los dos primeros relacionados con los de base de datos y el tercero calculándolo como el cociente de los anteriores. Además habría que comprobar que no se graba un valor menor que 0 ni mayor que 100 en ninguno de ellos.

Los ficheros a modificar serían:

  • TeamVigilanciaSaludForm.java
  • TEAMVigilanciaSaludAction.java
  • TeamVigilanciaSaludOT.java
  • TeamEntidadesVigilanciaLN.java
  • TeamVigilanciaSaludLN.java
  • TeamVigilanciaSaludOAD.java
  • datosVigilanciaSalud.jsp

(creo que solo es necesario modificar los que están en negrita)

Pantalla de modificación / consulta

Es la misma pantalla que la de alta.

Informe

El informe se obtiene desde la opción de menú Imprimir ficha vacía (donde aparece sin datos) o desde el botón de Imprimir al editar una ficha (donde va con los datos de la ficha en cuestión).

Habría que modificar el report Oracle team_ficha_serv_prev.pdf, de forma que en vez de aparecer

None

aparezca

None

Plantilla

De la misma forma que el informe habría que modificar el documento Word que se obtiene desde la opción de menú Imprimir ficha vacía > Plantilla), plantilla_ficha.doc

Servicios de neumología

Los cambios afectan al menú Ficha Servicio Neumología del Módulo de Vigilancia de la Salud. A este menú tienen acceso los siguientes grupos de usuarios:

  • Grabadores de fichas (perfil GTEAM_GRABADOR)
  • Nueva ficha / Seguimiento
  • Completar
  • Servicios de neumología (perfil GTEAM_NEUMO)
  • Nueva ficha / Seguimiento
  • Completar
  • Consultar / imprimir
  • Imprimir ficha vacía
  • Listados
  • Servicios territoriales (perfil GTEAM_STERRIT)
  • Nueva ficha / Seguimiento
  • Completar
  • Consultar / imprimir
  • Imprimir ficha vacía
  • Listados
  • Administradores (perfil GTEAM_ADM)
  • Nueva ficha / Seguimiento
  • Completar
  • Consultar / imprimir
  • Imprimir ficha vacía
  • Listados

Pantalla de Nueva ficha / Seguimiento

La pantalla actual es:

None

La nueva pantalla debería quedar como:

None

  • Modificaciones en base de datos

Habría que incluir los nuevos campos:

  • Capacidad vital (FVC),
  • Volumen espiratorio forzado en un segundo (FEV1)

de la forma

Columna Tipo Descripción
N_FVC Number % FVC (Capacidad vital) en espirometría
N_FEV1 Number % FEV1 (Volumen espiratorio forzado en un segundo) en espirometría

en la tabla TEAM_VIG_SALUD_PASIVOS_NEUMO.

Nota: el campo Razón FEV1/FVC se puede calcular desde la aplicación.

DUDA: ¿Sería interesante incluirlo en Base de Datos?

  • Modificaciones Java

Habría que incluir los nuevos campos:

  • Capacidad vital (FVC),
  • Volumen espiratorio forzado en un segundo (FEV1)
  • Razón FEV1/FVC

Los dos primeros relacionados con los de base de datos y el tercero calculándolo como el cociente de los anteriores. Además habría que comprobar que no se graba un valor menor que 0 ni mayor que 100 en ninguno de ellos.

Los ficheros a modificar serían:

  • TeamVigilanciaSaludForm.java
  • TEAMVigilanciaSaludNeumoAction.java
  • TeamVigilanciaSaludOT.java
  • TeamVigilanciaSaludNeumoLN.java
  • TeamVigilanciaSaludNeumoOAD.java
  • datosFichaNeumologia.jsp

(creo que solo es necesario modificar los que están en negrita)

Pantallas de Completar y Consultar/Imprimir

Es la misma pantalla que la de alta en las opciones de completar y consultar (Imprimir se utiliza para el informe).

Informe

El informe se obtiene desde la opción de menú Imprimir Ficha Vacía (donde aparece sin datos) o desde el botón de Imprimir al editar una ficha (donde va con los datos de la ficha en cuestión).

Habría que modificar el report Oracle team_ficha_neumologiapdf, de forma que en vez de aparecer

None

aparezca

None

Plantilla

En la ficha de neumología no existe plantilla.

Resumen de Tareas a desarrollar

  • Base de datos
  • Nuevos campos en Base de Datos (3629)
  • Java
  • Pantallas de Servicios de Prevención (3630)
    • Alta
    • Modificación y consulta
  • Pantallas de Servicios de Neumología (3631)
    • Nueva ficha / Seguimiento
    • Completar
    • Consultar / Imprimir
  • Informes (reports Oracle)
  • Informe de Prevención (3632)
  • Informe de Neumología (3633)
  • Plantillas (documentos Word)
  • Plantilla de prevención (3634)
  • Listados No parece que ninguno de esos campos deba aparecer en ninguno de los listados.
  • Discoverer No parece que esos campos deban aparecer en consultas de Discoverer
  • Actualizar los manuales de la aplicación (3635)
  • Definir tests de aceptación
  • Revisar pantalla con los distintos perfiles
  • Desde ficha de Prevención
    • Dar de alta un nuevo trabajador
    • Cumplimentando esos datos
    • Sin cumplimentarlos
    • Editar un trabajador ya grabado
    • Cumplimentar esos datos
    • Visualizar un trabajador con esos datos
    • Comprobar que los listados se ven correctamente
    • Comprobar que los informes se ven correctamente
  • Desde ficha de Neumología
    • Dar de alta un nuevo trabajador
    • Cumplimentando esos datos
    • Sin cumplimentarlos
    • Editar un trabajador ya grabado
    • Cumplimentar esos datos
    • Visualizar un trabajador con esos datos
    • Comprobar que los listados se ven correctamente
    • Comprobar que los informes se ven correctamente
  • Revisar documentación
  • Actualizar documentación de base de datos
  • Actualizar documentación de Segu
  • Actualizar documentación aplicación

Solución

Cambios en Base de Datos

  • Tareas 3629 y 3637
  • BBDD/Incidencias/3629.TEAM_VIG_SALUD_ACTIVOS_NuevosCamposEspirometria.sql
  • BBDD/Incidencias/3636.TEAM_VIG_PASIVOS_NEUMO_NuevosCamposEspirometria.sql

sql ALTER TABLE TEAM.TEAM_VIG_SALUD_ACTIVOS ADD ( N_FVC NUMBER(3), N_FEV1 NUMBER(3) ); COMMENT ON COLUMN TEAM_VIG_SALUD_ACTIVOS.N_FVC IS '% FVC (Capacidad vital) en espirometría'; COMMENT ON COLUMN TEAM_VIG_SALUD_ACTIVOS.N_FEV1 IS '% FEV1 (Volumen espiratorio forzado en un segundo) en espirometría';

sql ALTER TABLE TEAM.TEAM_VIG_PASIVOS_NEUMO ADD ( N_FVC NUMBER(3), N_FEV1 NUMBER(3) ); COMMENT ON COLUMN TEAM_VIG_PASIVOS_NEUMO.N_FVC IS '% FVC (Capacidad vital) en espirometría'; COMMENT ON COLUMN TEAM_VIG_PASIVOS_NEUMO.N_FEV1 IS '% FEV1 (Volumen espiratorio forzado en un segundo) en espirometría';

Modificación pantallas

Servicios neumología

Modificar las pantallas de Servicios de Neumología (Nueva ficha/seguimiento, completar y consultar/imprimir) para añadir los nuevos campos de espirometría.

  • Ficheros modificados:
  • src/es/jcyl/cs/team/ot/TeamNeumo4OT.java
  • web/datosExploRespVigSalud.jsp
  • web/datosExploRespNeumo.jsp
  • oad/TeamVigSaludNeumoOAD.java
  • web/javascript/datosVigilanciaSalud.js
  • TeamNeumo4OT.java

```java private String fev1 = “”; //% FEV1 (Volumen espiratorio forzado en un segundo) en espirometría private String fvc = “”; //% FVC (Capacidad vital) en espirometría; private String razonFev1Fvc = “”; //Razón FEV1/FVC

public void setFev1(String fev1) { this.fev1 = fev1; }

public String getFev1() { return fev1; }

public void setFvc(String fvc) { this.fvc = fvc; }

public String getFvc() { return fvc; }

public void setRazonFev1Fvc(String razonFev1Fvc) { this.razonFev1Fvc = razonFev1Fvc; }

public String getRazonFev1Fvc() { this.razonFev1Fvc = “”; if (this.fev1!= null && this.fvc!=null){ if (this.fev1.length()>0 && this.fvc.length()>0){ if (Integer.parseInt(this.fvc)>0) { double cociente = (double)Integer.parseInt(this.fev1)/Integer.parseInt(this.fvc); DecimalFormat df = new DecimalFormat(“#0.00”); this.razonFev1Fvc = df.format(cociente); } } } return razonFev1Fvc; } ```

  • datosExploRespVigSalud.jsp

```html
   FEV1 %    FVC %   FEV1/FVC (%)

```

  • datosExploRespNeumo.jsp

```html
   FEV1 %    FVC %   FEV1/FVC (%)

```

  • TeamVigSaludNeumoOAD.java
  • Se añaden los dos nuevos campos, N_FEV1 y N_FVC en las sql (consultas, actualizaciones e inserciones) de los métodos:
    • altaFichaNeumo
    • getFichaNeumo
    • modificaFichaNeumo
  • datosVigilanciaSalud.js
  • Validaciones sobre los nuevos campos:

    ```javascript function compruebaVolumenesExplofunci(bloque,idBloque) {

    /* Validacion de fev1 y fvc: nuevo 15/04/2020 */
    if (Objeto_Value("teamNeumo4OT.fev1") !="") {       
        if (esCampoNumerico("teamNeumo4OT.fev1")==false) {
            alert ("Bloque "+bloque+". El valor de FEV1 contiene caracteres no num\u00e9ricos");
            focalizar(idBloque,'teamNeumo4OT.fev1');
            return false;
        } else {
            if (parseInt(Objeto_Value("teamNeumo4OT.fev1")) < 0) {
                  alert ("Bloque "+bloque+". FEV1 no es un porcentaje válido");
                  focalizar(idBloque,'teamNeumo4OT.fev1');
                  return false;
            }
        }
      }
    
    if (Objeto_Value("teamNeumo4OT.fvc") !="") {       
        if (esCampoNumerico("teamNeumo4OT.fvc")==false) {
            alert ("Bloque "+bloque+". El valor de FVC contiene caracteres no num\u00e9ricos");
            focalizar(idBloque,'teamNeumo4OT.fvc');
            return false;
        } else {
            if (parseInt(Objeto_Value("teamNeumo4OT.fvc")) < 0) {
                  alert ("Bloque "+bloque+". FVC no es un porcentaje válido");
                  focalizar(idBloque,'teamNeumo4OT.fvc');
                  return false;
              }
          }
    }
    

    }

    //Actualizamos los campos del formulario if (chequeaPats==false) { deshabilitaMotivosBaja(); if (BuscaElementoVentanaActiva(“teamFichaNeumoOT.espOtrEnf”) != undefined) { BuscaElementoVentanaActiva(“teamFichaNeumoOT.espOtrEnf”).disabled=true; BuscaElementoVentanaActiva(“teamFichaNeumoOT.espOtrEnf”).style.background=”#f0f0f0”; BuscaElementoVentanaActiva(“teamFichaNeumoOT.espOtrEnf”).value=”“; } } else { habilitaMotivosBaja(); if (activaTxtOtrEnf==true) { if (BuscaElementoVentanaActiva(“teamFichaNeumoOT.espOtrEnf”) != undefined) { BuscaElementoVentanaActiva(“teamFichaNeumoOT.espOtrEnf”).disabled=false; BuscaElementoVentanaActiva(“teamFichaNeumoOT.espOtrEnf”).style.background=”#ffffff”; } } else { if (BuscaElementoVentanaActiva(“teamFichaNeumoOT.espOtrEnf”) != undefined) { BuscaElementoVentanaActiva(“teamFichaNeumoOT.espOtrEnf”).disabled=true; BuscaElementoVentanaActiva(“teamFichaNeumoOT.espOtrEnf”).style.background=”#f0f0f0”; BuscaElementoVentanaActiva(“teamFichaNeumoOT.espOtrEnf”).value=”“; } } }

    if (activaTxtCCAA==false) { if (BuscaElementoVentanaActiva(“teamFichaNeumoOT.espCamCCAA”) != undefined) { BuscaElementoVentanaActiva(“teamFichaNeumoOT.espCamCCAA”).disabled=true; BuscaElementoVentanaActiva(“teamFichaNeumoOT.espCamCCAA”).style.background=”#f0f0f0”; BuscaElementoVentanaActiva(“teamFichaNeumoOT.espCamCCAA”).value=”“; } } else { if (BuscaElementoVentanaActiva(“teamFichaNeumoOT.espCamCCAA”) != undefined) { BuscaElementoVentanaActiva(“teamFichaNeumoOT.espCamCCAA”).disabled=false; BuscaElementoVentanaActiva(“teamFichaNeumoOT.espCamCCAA”).style.background=”#ffffff”; } }
    ```

Servicios prevención

Modificar las pantallas de Servicios de Prevención (Alta y Modificación y consulta) para añadir los nuevos campos de espirometría.

Sirven las modificaciones hechas para los servicios de neumología en OT y javascript. Además, se tienen los siguientes cambios:

  • Ficheros modificados:
  • oad/TeamVigilanciaSaludOAD.java
  • web/datosExploRespVigSalud.jsp
  • oad/TeamVigilanciaSaludOAD.java
  • Se añaden los dos nuevos campos, N_FEV1 y N_FVC en las sql (consultas, actualizaciones e inserciones) de los métodos:
    • altaTeamVigilanciaSalud
    • getTeamVigilanciaSalud
    • modificacionTeamVigilanciaSalud
  • datosExploRespVigSalud.jsp

html &nbsp;&nbsp;&nbsp;FEV1 <html:text name="TeamVigilanciaSaludForm" property="teamNeumo4OT.fev1" maxlength="3" size="3" styleClass="formTextoClaro" onchange="javascript:limpiarCampoActivaForm('TeamVigilanciaSaludForm','teamNeumo4OT.razonFev1Fvc');" />% &nbsp;&nbsp;&nbsp;FVC <html:text name="TeamVigilanciaSaludForm" property="teamNeumo4OT.fvc" maxlength="3" size="3" styleClass="formTextoClaro" onchange="javascript:limpiarCampoActivaForm('TeamVigilanciaSaludForm','teamNeumo4OT.razonFev1Fvc');" />% &nbsp;&nbsp;FEV1/FVC (<html:text name="TeamVigilanciaSaludForm" property="teamNeumo4OT.razonFev1Fvc" maxlength="5" size="3" styleClass="formTextoClaro" disabled="true" />%)

Plantillas

Modificar la plantilla de prevención.

  • Ficheros añadidos:
  • plantillas/plantilla_ficha.doc

Informes

Añadir a los informes de neumología y prevención los nuevos campos.

  • Ficheros modificados:
  • team_ficha_neumologia.rdf
  • team_ficha_serv_prev.rdf

Manuales

Modificar los manuales de usuario para indicar los cambios realizados.

  • Ficheros modificados:
  • manuales/manual_neumo.docx
  • manuales/manual_neumo.pdf
  • manuales/manual_serv_prevencion.docx
  • manuales/manual_serv_prevencion.pdf
  • manuales/manual_vigilancia.docx
  • manuales/manual_vigilancia.pdf

Pruebas realizadas en desarrollo

  • Realizadas por Roberto Hernando el 02/07/2020
  • Ficha de Prevención
  • Consulta ficha
  • Edición ficha
  • Informe
  • Plantilla
  • Ficha de Neumología
  • Consulta ficha
  • Edición ficha
  • Informe
  • Manuales

Pruebas realizadas en preexplotación

  • Realizadas por Mercedes el
  • Ficha de Prevención
  • Consulta ficha
  • Edición ficha
  • Informe
  • Plantilla
  • Ficha de Neumología
  • Consulta ficha
  • Edición ficha
  • Informe
  • Manuales

Última actualización: August 15, 2021