Ir para o conteúdo
For the complete DHIS2 documentation index, see llms.txt.

Covid-19 Electronic Immunization Registry - Tracker Installation Guide

This document includes an installation guide for the updated COVAC Electronic Immunization Registry tracker package and a supplementary aggregate module for daily reporting based on tracker data.

System default language: English

Available translations: French, Spanish, Portuguese

Instalação

A instalação do módulo consiste em várias etapas:

  1. [Preparando o arquivo de metadados com metadados DHIS2] (#preparando o arquivo de metadados).
  2. [Importando o arquivo de metadados para DHIS2] (#Importing-metadata).
  3. Configuring the imported metadata.
  4. [Adaptando o programa após a importação] (#adaptando o programa)

Recomenda-se ler primeiro cada secção do guia de instalação antes de iniciar o processo de instalação e configuração no DHIS2. Identifique as secções aplicáveis, dependendo do tipo de sua importação:

  1. import into a blank DHIS2 instance
  2. import into a DHIS2 instance with existing metadata.

As etapas descritas neste documento devem ser testadas em uma instância de teste/teste DHIS2 e só então aplicadas a um ambiente de produção.

Requisitos

In order to install the module, an administrator user account on DHIS2 is required.

Great care should be taken to ensure that the server itself and the DHIS2 application are well secured, access rights to collected data should be defined. Details on securing a DHIS2 system is outside the scope of this document, and we refer to the DHIS2 documentation.

Metadata files

Embora nem sempre seja necessário, muitas vezes pode ser vantajoso fazer certas modificações no arquivo de metadados antes de importá-lo para o DHIS2.

The Covid-19 Electronic Immunization Registry tracker package includes three metadata files. The contents and purposose of each individual file are described below:

Package identifier Contents Objectivo
CVC_EIR-TRK-Electronic_Immunization_Registry_Covid19_Vaccines Updated tracker package,
aggregate data set for automated tracker-to-aggregate-transfer,
dashboard based on aggregate indicator values
New implementation
CVC_EIR-AGG-Electronic_Immunization_Registry_Covid19_Vaccines Aggregate data set for automated tracker-to-aggregate-transfer,
dashboard based on aggregate indicator values
Update to an existing tracker implementation,
Setup of tracker-to-aggregate transfer,
Use of Daily aggregate dashboard
CVC_EIR-PI-Electronic_Immunization_Registry_Covid19_Vaccines 13 updated program indicators from the original package.
PIs are mapped to the aggregate data elements and Category option combinations in the daily aggregate data set
Update to an existing implementation

Note

The package is not an out-of-the-box tool for tracker-to-aggregate data transfer. The structure of the metadata package and the suggested mapping of metadata allow the implementer to set up the transfer of data based on existing tools and guidance. More information is available in the Tracker to aggregate data Transfer Document.

Preparando o ficheiro de metadados

Mapping guide for data transfer

The 13 program indicators that can be used for tracker-to-aggregate data transfer are mapped to the corresponding data elements and category option combinations of the aggregate data set.

Example

Program indicator Number of people receiving a first dose (Female 0-59) RJ6pdxga9Odis mapped to the category option combination Female, 0-59 years FsZSFGKirY0 of the data element COVAC - People with 1st dose RjT7dmzunF4

The mapping is based on codes of metadata objects.

The custom attribute Data element for aggregate data export vudyDP7jUy5 contains the reference code of the aggregate data elements, eg. CVC_EIR_AGG_PPL_1ST_DOSE

The Category option combination for agggregate export field contains reference codes of the category option combinations, eg. CVC_EIR_0059Y_F

The suggested transfer of the tracker-to-aggregate values is based on the following GET and POST API requests:

  1. Source request: ../api/analytics/dataValueSet.json?dimension=dx: "{program indicator uid/s}" &dimension=pe: "{relative period/s}" &dimension=ou: {organisation unit level} &outputIdScheme=ATTRIBUTE: {"custom attribute:vudyDP7jUy5"}
  2. Target request: ..api/dataValueSets?dataElementIdScheme=CODE&categoryOptionComboIdScheme=CODE&importStrategy=CREATE_AND_UPDATE&mergeMode=REPLACE&dryRun=false

Indicadores de programa

The program indicators required for the aggregation of the data values are included in the program indicator group COVAC - Tracker to aggregate NXBR4r6MwAO

Indicador de programa UID Code DE for aggregate export CoC for aggregate export
Number of people receiving a first dose (Female 0-59) RJ6pdxga9Od CVC_EIR_PPL_1ST_DOSE_0059Y_F CVC_EIR_AGG_PPL_1ST_DOSE 0059Y_F
Number of people receiving a first dose (Female 60+) x4L0LuEBHhW CVC_EIR_PPL_1ST_DOSE_60PLUSY_F CVC_EIR_AGG_PPL_1ST_DOSE 60PLUSY_F
Number of people receiving a first dose (Male 0-59) hqm8znlAzkT CVC_EIR_PPL_1ST_DOSE_0059Y_M CVC_EIR_AGG_PPL_1ST_DOSE 0059Y_M
Number of people receiving a first dose (Male 60+) aIIHyDy8AMW CVC_EIR_PPL_1ST_DOSE_60PLUSY_M CVC_EIR_AGG_PPL_1ST_DOSE 60PLUSY_M
Number of people receiving a second, third or booster dose (Female 0-59) xY4T9hHXNji CVC_EIR_PPL_2ND_DOSE_0059Y_F CVC_EIR_AGG_PPL_2ND_DOSE 0059Y_F
Number of people receiving a second, third or booster dose (Female 60+) h9G7i6mQKef CVC_EIR_PPL_2ND_DOSE_60PLUSY_F CVC_EIR_AGG_PPL_2ND_DOSE 60PLUSY_F
Number of people receiving a second, third or booster dose (Male 0-59) MGjwUUNsE60 CVC_EIR_PPL_2ND_DOSE_0059Y_M CVC_EIR_AGG_PPL_2ND_DOSE 0059Y_M
Number of people receiving a second, third or booster dose (Male 60+) qh0kIjHZbP8 CVC_EIR_PPL_2ND_DOSE_60PLUSY_M CVC_EIR_AGG_PPL_2ND_DOSE 60PLUSY_M
Number of people who received the last recommended dose for the respective vaccine product (Female 0-59) Zp39TSOR8eW CVC_EIR_PPL_LAST_DOSE_0059Y_F CVC_EIR_AGG_PPL_LAST_DOSE 0059Y_F
Number of people who received the last recommended dose for the respective vaccine product (Female 60+) XFUvVgqPukT CVC_EIR_PPL_LAST_DOSE_60PLUSY_F CVC_EIR_AGG_PPL_LAST_DOSE 60PLUSY_F
Number of people who received the last recommended dose for the respective vaccine product (Male 0-59) FZNIlzPRMmL CVC_EIR_PPL_LAST_DOSE_0059Y_M CVC_EIR_AGG_PPL_LAST_DOSE 0059Y_M
Number of people who received the last recommended dose for the respective vaccine product (Male 60+) zovL7DKBRuK CVC_EIR_PPL_LAST_DOSE_60PLUSY_M CVC_EIR_AGG_PPL_LAST_DOSE 60PLUSY_M
Underlying conditions - People with Zn0UuSRYyJw CVC_EIR_PPL_UNDER_CONDITIONS CVC_EIR_AGG_PPL_UNDER_CONDITIONS DEFAULT

These program indicators are part of the original package but need to be updated because of the added mapping.

Note

If the original program indicators in your system were modified as part of local adaptation process, be aware that all changes will be overwritten once you import the updated set of program indicators. If any of your modified program indicators have the same UID as the program indicators listed in the table above, make sure to duplicate the modified program indicators before import.

Dimensão padrão dos dados

In early versions of DHIS2, the UIDs of the default data dimensions were auto-generated. Thus, while all DHIS2 instances have a default category option, data element category, category combination and category option combination, the UIDs of these defaults can be different. Later versions of DHIS2 have hardcoded UIDs for the default dimension, and these UIDs are used in the configuration packages.

Para evitar conflitos ao importar os metadados, é aconselhável pesquisar e substituir todo o arquivo .json para todas as ocorrências desses objectos padrão, substituindo os UIDs do arquivo .json pelos UIDs da instância em que o arquivo será importado. A Tabela 1 mostra os UIDs que devem ser substituídos, bem como os endpoints da API para identificar os UIDs existentes

Objecto UID API endpoint
Category GLevLNI9wkl ../api/categories.json?filter=name:eq:default
Category option xYerKDKCefk ../api/categoryOptions.json?filter=name:eq:default
Category combination bjDvmb4bfuf ../api/categoryCombos.json?filter=name:eq:default
Category option combination HllvX50cXC0 ../api/categoryOptionCombos.json?filter=name:eq:default

Identify the UIDs of the default dimesions in your instance using the listed API requests and replace the UIDs in the json file with the UIDs from the instance.

NOTA

Observe que esta operação de pesquisa e substituição deve ser feita com um editor de texto simples, não um processador de texto como o Microsoft Word.

Tipos de indicadores

Indicator type is another type of object that can create import conflict because certain names are used in different DHIS2 databases (.e.g "Percentage"). Since Indicator types are defined by their factor (including 1 for "numerator only" indicators), they are unambiguous and can be replaced through a search and replace of the UIDs. This method helps avoid potential import conflicts, and prevents the implementer from creating duplicate indicator types. The table below contains the UIDs which could be replaced, as well as the API endpoints to identify the existing UIDs:

Objecto UID API endpoint
Apenas numerador (número) CqNPn5KzksS ../api/indicatorTypes.json?filter=number:eq:true&filter=factor:eq:1

Tipo de entidade rastreada

Assim como os tipos de indicadores, pode já ter tipos de entidade rastreados em seu banco de dados DHIS2. As referências ao tipo de entidade rastreada devem ser alteradas para refletir o que está em seu sistema para que não crie duplicatas. A tabela abaixo contém os UIDs que podem ser substituídos, bem como os endpoints da API para identificar os UIDs existentes:

Objecto UID API endpoint
Pessoa MCPQUTHX1Ze ../api/trackedEntityTypes.json?filter=name:eq:Person

Visualizations using Root Organisation Unit UID

Visualizações, relatórios de eventos, tabelas de relatórios e mapas atribuídos a um nível de unidade organizacional específico ou grupo de unidades organizacionais têm uma referência à unidade organizacional raiz (nível 1). Tais objectos, se presentes no arquivo de metadados, contêm um espaço reservado <OU_ROOT_UID>. Use a função de pesquisa no editor de arquivos .json para possivelmente identificar esse espaço reservado e substituí-lo pelo UID da unidade organizacional de nível 1 na instância de destino.

Option codes

According to the DHIS2 naming conventions, the metadata codes use capital letters, underscores and no spaces. Some exceptions that may occur are specified in the corresponding package documentation. All codes included in the metadata objects in the current version of the package were adjusted to match the naming conventions. It may occur that the codes used in the earlier versions of the package used lower case characters. If data values in the existing implementations contain lower case codes, it is important to update those values directly in the database.

The table below contains all option sets where codes were changed to upper case in the metadata package. Before importing metadata into the instance, check whether the option sets in the existing system match those in the package .json and use the same upper case option codes.

Option set name Option set UID
COVAC - AEFI Pregnancy ilxtWultuYP
COVAC - Occupation CNNH0YKxRh9
COVAC - Trimester kgDmgTYZICP
COVAC Vaccine brand UJTnyCB3cyk
COVAC - Vaccine Manufacturers DtOGtoLbaB5
COVAC - Vaccine Names VQo3HkUlMHc
Sexo WDUwjiW2rGH
Yes/No/Unknown L6eMZDJkCwX

The table below contains metadata elements that use an affected option set:

Objecto de metadados Nome UID
Elemento de dados COVAC - Pregnancy BfNZcj99yz4
Elemento de dados COVAC - Pregnancy gestation CBAs12YL4g7
Elemento de dados COVAC - Previously infected with COVID LOU9t0aR0z7
Elemento de dados COVAC - Underlying condition bCtWZGjSWM8
Elemento de dados COVAC - Vaccine Brand rWYryQb3ohn
Elemento de dados COVAC - Vaccine Manufacturer rpkH9ZPGJcX
Elemento de dados COVAC - Vaccine Name bbnyNYD1wgS
Atributo de entidade rastreada COVID - Occupation LY2bDXpNvS7
Atributo de entidade rastreada Sexo oindugucx72

Important

During the import, the existing option codes will be overwritten with the updated upper case codes. In order to update the data values for existing data in the database, it is necessary to update the values stored in the database using database commands. Make sure to map existing old option codes and new option codes before replacing the values. Use staging instance first, before making adjustments on the production server.

For data element values, use:

```SQL
UPDATE programstageinstance
SET eventdatavalues = jsonb_set(eventdatavalues, '{"<affected data element uid>","value"}', '"<new value>"')
WHERE eventdatavalues @> '{"<affected data element uid>":{"value": "<old value>"}}'::jsonb
AND programstageid=<database_programsatgeid>;
```

For tracked entity attribute values, use:

```SQL
UPDATE trackedentityattributevalue
SET value = <new value>
WHERE trackedentityattributeid=<affected trackedentityattribute database_id> AND value=<old value>;
```

Example

To replace the option code 'yes' with 'YES' for existing data values (data element COVAC - Previously infected with COVID LOU9t0aR0z7) in the programstage with the id=1510410385 (example id), the command will be configured as follows:

UPDATE programstageinstance
SET eventdatavalues = jsonb_set(eventdatavalues, '{"LOU9t0aR0z7","value"}', '"YES"')
WHERE eventdatavalues @> '{"LOU9t0aR0z7":{"value": "yes"}}'::jsonb
AND programstageid=1510410385;

Os códigos de opção também são usados em expressões de regra de programa, indicadores de programa, etc. Se estiver actualizando opções de código em seu sistema, certifique-se de actualizar os códigos em todos os objetos de metadados afetados.

Sort order for options

Check whether the sort order sortOrder of options in your system matches the sort order of options included in the metadata package. This only applies when the json file and the target instance contain options and option sets with the same UID.

After import, make sure that the sort order for options within an option set starts at 1. There should be no gaps (eg. 1,2,3,5,6) in the sort order values.

A ordem de classificação pode ser ajustada no aplicativo Manutenção.

  1. Vá para o Conjunto de Opções aplicável
  2. Abra a secção "Opções"
  3. Use as alternativas "CLASSIFICAR POR NOME", "CLASSIFICAR POR CÓDIGO/VALOR" ou "CLASSIFICAR MANUALMENTE".

Importando metadados

Use o aplicativo Import/Export DHIS2 para importar pacotes de metadados. É aconselhável usar o recurso "dry run" para identificar problemas antes de tentar fazer uma importação real dos metadados. Se o "dry run" relatar problemas ou conflitos, consulte a secção conflitos de importação abaixo. Se a importação "dry run"/"validate" funcionar sem erros, tente importar os metadados. Se a importação for bem-sucedida sem erros, pode continuar configurando o módulo. Em alguns casos, conflitos ou problemas de importação não são mostrados durante o "dry run", mas aparecem quando a importação real é tentada. Nesse caso, o resumo de importação listará todos os erros que precisam ser resolvidos.

Manipulando conflitos de importação

NOTA

Se estiver importando o pacote para uma nova instância do DHIS2, não haverá conflitos de importação, pois não há metadados no banco de dados de destino. Após importar os metadados, vá para a secção “Configuração”.

Existem vários conflitos diferentes que podem ocorrer, embora o mais comum seja a existência de objectos de metadados no pacote de configuração com um nome, nome abreviado e/ou código que já existem no banco de dados de destino. Existem algumas soluções alternativas para esses problemas, com diferentes vantagens e desvantagens. Qual é mais apropriado dependerá, por exemplo, do tipo de objecto para o qual ocorre um conflito.

Alternativa 1

Renomeie o objecto existente em seu banco de dados DHIS2 para o qual há um conflito. A vantagem dessa abordagem é que não há necessidade de modificar o arquivo .json, pois as alterações são feitas por meio da interface do usuário do DHIS2. Isso provavelmente será menos propenso a erros. Isso também significa que o pacote de configuração é deixado como está, o que pode ser uma vantagem, por exemplo, quando as actualizações do pacote são lançadas. Os objectos do pacote original também são frequentemente referenciados em materiais de treinamento e documentação.

Alternativa 2

Renomeie o objecto para o qual há um conflito no arquivo .json. A vantagem dessa abordagem é que os metadados DHIS2 existentes são deixados como estão. Isso pode ser um fator quando há material de treinamento ou documentação como SOPs de dicionários de dados vinculados ao objeto em questão, e não envolve nenhum risco de confundir os usuários ao modificar os metadados com os quais estão familiarizados.

Observe que, para as alternativas 1 e 2, a modificação pode ser tão simples quanto adicionar um pequeno pré/pós-correção ao nome, para minimizar o risco de confusão.

Alternativa 3

Uma terceira e mais complicada abordagem é modificar o ficheiro .json para reutilizar os metadados existentes. Por exemplo, nos casos em que um conjunto de opções já existe para um determinado conceito (por exemplo, "sexo"), esse conjunto de opções pode ser removido do ficheiro .json e todas as referências ao seu UID substituídas pela opção correspondente já existente na base de dados. A grande vantagem disso (que não se limita aos casos em que há um conflito direto de importação) é evitar a criação de metadados duplicados na base de dados. Existem algumas considerações importantes a serem feitas ao executar esse tipo de modificação:

  • Isto requer conhecimento especializado da estrutura detalhada dos metadados do DHIS2
  • a abordagem não funciona para todos os tipos de objec tos. Em particular, certos tipos de objectos têm dependências que são complicadas de resolver dessa maneira, por exemplo, relacionadas a desagregações.
  • futuras actualizações do pacote de configuração serão complicadas.

Configuração

Depois que todos os metadados forem importados com sucesso, é necessário executar algumas etapas antes do funcionamento do módulo

Partilha

First, you will have to use the Sharing functionality of DHIS2 to configure which users (user groups) should see the metadata and data associated with the program as well as who can register/enter data into the program. By default, sharing has been configured for the following:

  • Tipo de entidade rastreada
  • Programa
  • Estagios de Programa
  • Painéis
  • Visualizações, mapas, relatórios de eventos e tabelas de relatórios
  • Conjuntos de dados
  • Opções de categoria

Consulte a [documentação DHIS2] (#compartilhamento) para obter mais informações sobre compartilhamento.

Four core user groups are included in the package:

  • COVAC - COVID-19 Immunization Data Analysis
  • COVAC - COVID-19 Immunization Data Admin
  • COVAC - COVID-19 Immunization Data Entry
  • COVAC - COVID-19 Immunization Metadata Admin

Por padrão, as seguintes permissões são atribuídas a esses grupos de usuários:

Objecto Grupo de usuários
COVAC - COVID-19 Immunization Data Analysis COVAC - COVID-19 Immunization Data Admin COVAC - COVID-19 Immunization Data Entry COVAC - COVID-19 Immunization Metadata Admin
Tipo de entidade rastreada Metadados: pode ver
Dados: pode ver
Metadados: pode ver
Dados: pode ver
Metadados: pode visualizar
Dados: pode capturar e visualizar
Metadados: pode editar e visualizar
Dados: pode visualizar
Programa Metadados: pode ver
Dados: pode ver
Metadados: pode ver
Dados: pode ver
Metadados: pode visualizar
Dados: pode capturar e visualizar
Metadados: pode editar e visualizar
Dados: pode visualizar
Fases do programa Metadados: pode ver
Dados: pode ver
Metadados: pode ver
Dados: pode ver
Metadados: pode visualizar
Dados: pode capturar e visualizar
Metadados: pode editar e visualizar
Dados: pode visualizar
_ Painéis _ Metadados: pode ver Metadados: pode ver Sem acesso Metadados: pode editar e visualizar
Conjuntos de dados Metadados: pode ver
Dados: pode ver
Metadados: pode visualizar
Dados: pode capturar e visualizar
Sem acesso Metadados: pode editar e visualizar
Dados: Sem acesso

Os usuários são atribuídos ao grupo de usuários apropriado com base em sua função no sistema. O compartilhamento de outros objectos no pacote pode ser ajustado dependendo da configuração. Consulte a [Documentação DHIS2 sobre compartilhamento] (#compartilhamento) para obcter mais informações.

User roles

Os utilizadores precisarão de funções de utilizador para interagir com os vários aplicativos no DHIS2. As seguintes funções mínimas são recomendadas:

  1. Análise de dados do rastreador: pode ver análises de eventos e aceder a painéis, relatórios de eventos, visualizador de eventos, visualizador de dados, tabelas dinâmicas, relatórios e mapas.
  2. Captura de dados rastreados : Pode adicionar valores de dados, actualizar entidades rastreadas, pesquisar entidades rastreadas nas unidades organizacionais e acessar Track capture

Consulte a Documentação DHIS2 para obter mais informações sobre a configuração de funções de usuário.

Organisation units

O programa e os conjuntos de dados devem ser atribuídos a unidades de organização dentro da hierarquia existente para serem acessíveis por meio de aplicativos de captura/captura do rastreador.

Metadado duplicados

NOTE

This section only applies if you are importing into a DHIS2 database in which there is already meta-data present. If you are working with a new DHIS2 instance, please skip this section and go to Adapting the tracker program. If you are using any third party applications that rely on the current metadata, please take into account that this update could break them.

Mesmo quando os metadados foram importados com sucesso sem nenhum conflito de importação, pode haver duplicação nos metadados - elementos de dados, atributos de entidade rastreados ou conjuntos de opções que já existem. Como foi observado na secção acima, sobre a resolução de conflitos, uma questão importante a ser lembrada é que as decisões sobre a alteração dos metadados no DHIS2 também precisam levar em consideração outros documentos e recursos que, de maneiras diferentes, estão associados aos metadados existentes, e os metadados que foram importados pelo pacote de configuração. Resolver duplicação é, portanto, não apenas uma questão de "limpar o banco de dados", mas também garantir que isso seja feito sem, por exemplo, quebrar o potencial de integração com outros sistemas, a possibilidade de usar material de treinamento, interromper SOPs, etc. tudo isto depende muito do contexto.

Uma coisa importante a se ter em mente é que o DHIS2 tem ferramentas que podem ocultar algumas das complexidades de possíveis duplicações em metadados. Por exemplo, onde existem conjuntos de opções duplicados, eles podem ser ocultados para grupos de usuários por meio de compartilhamento.

Adapting the program

Once the program has been imported, you might want to make certain modifications to the program. Examples of local adaptations that could be made include:

  • Acrescentando variáveis ​​adicionais ao formulário.
  • Adaptar os nomes de elemento de dados/opções de acordo com convenções nacionais.
  • Adicionando traduções às variáveis ​​e/ou ao formulário de entrada de dados.
  • Modificando indicadores de programa com base em definições de casos locais

Contudo, é recomendável ter cuidado ao alterar ou remover qualquer um dos formulários/metadados incluídos. Existe o perigo de que as modificações possam interromper a funcionalidade, por exemplo, regras e indicadores do programa.

Removing metadata

Para manter sua instância limpa e evitar erros, é recomendável remover os metadados desnecessários de sua instância.

The original dashboard COVAC - COVID-19 vaccine registry YYtAbckt77l has been removed from the updated package and replaced by the new dashboard: COVAC - Daily monitoring iBWlFCvvtkH

Para remover o painel antigo do seu sistema, precisa:

  1. Note the names/UIDs of all objects included on the dashboard.
  2. Remove all dashboard items from the dashboard and save.
  3. Delete the dashboard.
  4. Delete all visualizations, maps, event reports and report tables included in the original dashboard.

NOTA

É possível excluir o painel, seus itens do painel e todas as visualizações, mapas e relatórios relevantes diretamente do banco de dados usando comandos SQL.