Predictive Tests for a Therapeutic Response

Predictive Tests for a Therapeutic Response

Welcome to the technical documentation pages for the project "Predictive Tests for a Therapeutic Response (PITTER)", provided by the service healthdata.be (Sciensano).

These pages provide information about the technical processes of the project. The following sections are (will be) provided:

For scientific information of the project, please contact the primary organization that oversees implementation of project (see section "General project information").

This documentation is under construction. We try to provide as correct, complete and clear as possible information on these pages. Nevertheless, if you see anything in the documentation that is not correct, does not match your experience or requires further clarification, please send us an email via support.healthdata@sciensano.be to report this documentation issue. Please, do not forget to mention the URL or web address of the page with the documentation issue. We will then adjust the documentation as soon as possible. Thank you!
manager

General PITTER project information

General PITTER project information

Project name

Predictive Tests for a Therapeutic Response

Project abbreviation

PITTER

Project code

HDBP0078

Primary organization that oversees implementation of project

  • National Institute for Health and Disability Insurance (RIZIV-INAMI)

Partner organization participating in project

  • Sciensano
  • Belgian Cancer Registry

Organization that commissioned this project

  • National Institute for Health and Disability Insurance (RIZIV-INAMI)

Organization providing monetary or material support

  • National Institute for Health and Disability Insurance (RIZIV-INAMI)

Brief project description

For a number of diseases/disorders, personalized treatment today offers a great added value compared to classical, empirical therapy. Thanks to molecular diagnostics, specific aberrations can be detected, which are an indication for a correct diagnosis and prognosis and the successful use of a corresponding drug in order to target the disease.

Currently the reimbursement of personalized medicines is not coupled with that of the accompanying biomarker which often leads to a delay in reimbursement of the predictive tests as compared to the personalized medicine. To better align reimbursement of the medicine and the predictive test, a reimbursement procedure will be created that will allow a monthly update of reimbursed personalized medicines and their corresponding predictive test, and as such will be flexible enough to adjust for the rapid evolving field of personalized medicine.

Regulatory framework of this project

Consult the regulatory framework information published on the fair.healthdata.be pages.

johanvanbussel

The PITTER data collection

The PITTER data collection

Organisations and/or individuals that provide data

Not available

Start date of the data collection

Not available

End date of the data collection

Ongoing

Periodicity of the data collection

Continious

johanvanbussel

The PITTER Data Collection Definition (HDBP0078)

The PITTER Data Collection Definition (HDBP0078)

In the file below you can find the Data Collection Definition (DCD) specifications of the project Predictive Tests for a Therapeutic Response (PITTER). It is a detailed description of the content of one DCD:

  • Main registration form

with field names, formats, values, validation rules, help texts, warning texts, translations… These specifications were used to build the forms, csv's, and API's for this project, which you also can find in this project manual.

johanvanbussel

XLSForm PITTER (HD0078)

XLSForm PITTER (HD0078)

Explanation of DCD specifications

The above Data Collection Definition (DCD) specifications are published in an MS Excel file using a slightly modified XLSForm format. XLSForm is a form standard created to simplify the creation of forms. The creation is done in a human readable format. XLSForms are a convenient standard for sharing and collaborating on form creation. For a detailed guide to the XLSForm standard, we refer you to https://xlsform.org/en/.

Each DCD Excel workbook has three worksheets: "settings", "survey" and "choices". Sometimes a project is composed of several DCDs. In this case, a "survey" worksheet is created for each DCD. The lists of values for all DCDs are listed in a single "choice" worksheet.

While not all survey and choice characteristics are used by healthdata.be to describe the data collection definitions, all standard XLSForm columns are present in the MS Excel file.

Note: healthdata.be itself does not use the XLSForm standard to create its DCD in its own applications (HD4DP, HD4Patient). The XLSForm standard (used by popular electronic data capture systems such as OpenClinica, LibreClinica, ODK,…) is chosen to describe the DCD only because it is a human readable format.

The "Survey" worksheet

This worksheet gives the general structure of the DCD and contains most of the content. It contains the complete list of variables and information on how they should appear in the form. Each row usually represents one variable.

The following columns are primarily used in the survey worksheet to describe DCD:

  • type: Defines the type of question/variable
  • name: Unique ID (name) of the question / variable
  • label::[English]: Question / variable in English, appears on the screen
  • label::[French]: Question / variable in French, appears on the screen
  • label::[Dutch]: Question / variable in Dutch, appears on the screen
  • label::[German]: Question / variable in German, appears on the screen
  • hint::[English]: Hint or explanatory text for a question, in English
  • hint::[French]: Hint or explanatory text for a question, in French
  • hint::[Dutch]: Hint or explanatory text for a question, in Dutch
  • hint::[German]: Hint or explanatory text for a question, in German
  • constraint_javascript: Constraint on the allowed values for a response defined in javascript
  • constraint_message::[English]: The message displayed to the user if the answer is not valid, in English
  • constraint_message::[French]: The message displayed to the user if the answer is not valid, in French
  • constraint_message::[Dutch]: The message displayed to the user if the answer is not valid, in Dutch
  • constraint_message::[German]: The message displayed to the user if the answer is not valid, in German
  • required: If a question or variable must be completed for the form to continue or be submitted
  • relevant_javascript: Skip logic condition (the relevant condition that must be met for this question to be displayed)
  • read_only: If a variable question/answer can be changed
  • calculation
  • repeat_count: Number of repetitions for a group of repetitions
  • hidden: Hidden fields in the HD4DP application

The "Choices" worksheet

This worksheet is used to specify answer choices for multiple choice questions. Each row represents an answer choice. Answer choices with the same list name are considered part of a set of related choices and appear together for a question/variable. This also allows a choice set to be reused for multiple questions/variables (for example, yes/no questions).

The following columns are primarily used in the choices worksheet to describe the DCD:

  • list_name: A unique name for each choice set
  • name: ID (name or code) of the specific choice
  • label::[English]: The choice label, in English, appears on the screen
  • label::[French]: The choice label, in French, appears on the screen
  • label::[Dutch]: The choice label, in Dutch, appears on the screen
  • label::[German]: The choice label, in German, appears on the screen

 

The "Settings" worksheet

  • form_title: Title displayed at beginning of form, in form list
  • public_key: Key required for encrypted forms
  • submission_url: Specific URL for uploading data
  • default_language: If form uses multiple languages, this one sets which to use by default
  • style: Separate questions groups into pages. Switch to a different theme.
  • instance_name: Allows user to create a dynamic naming convention for each submitted instance
  • status: status of the form: options are "final" and "draft"
  • start_date: date start form in production
  • end_date: date end form in production
Bart.Servaes

The PITTER Dataflow Description

The PITTER Dataflow Description

Below we describe (high level) the PITTER dataflow between the data provider and the healthdata.be platform.

Step 1. (Automatic) data export from systems of data provider towards HD4DP v1 and prefill of forms if not complete.

Step 2. Manual registration (de novo or completion) of data in form component of HD4DP v1.

Step 3. Transfer of patient identifiers and registry data from HD4DP v1 towards eHBox messaging client of HCO (HCO UM/EM)

Step 4. Transfer of patient identifiers and registry data from eHBox messaging client of HCO (HCO UM/EM) towards TTP service of eHealth.

Step 5. Transfer of pseudonymized patient identifiers and registry data from TTP service of eHealth towards eHBox messaging client of HD (HD UM/EM)

Step 6. Transfer of pseudonymized patient identifiers and registry data from eHBox messaging client of HD (HD UM/EM) to HDRES v1

Step 7. Transfer of pseudonymized patient IDs and registry variables from HD4RES v1 towards Data Validation environment on HD DHW.

johanvanbussel

Future PITTER dataflow description

Future PITTER dataflow description

Below we describe (high level) the PITTER between HD4DP v2 and the healthdata.be platform.

Step 1. Automatic data export from systems of data provider towards HD4DP v2 and prefill of forms if not complete.

Step 2. Manual registration (de novo or completion) of data in form component of HD4DP v2.

Step 3. Direct real time transfer of registry variables and technical ID of record from HD4DP v2 towards HD.

Step 4. Transfer of patient identifiers and technical ID of record from HD4DP v2 towards eHBox messaging client of HCO (HCO UM/EM).

Step 5. Transfer of patient identifiers and technical ID of record from eHBox messaging client of HCO (HCO UM/EM) towards TTP service of eHealth.

Step 6. Transfer of pseudonymized patient identifiers and technical ID of record from TTP service of eHealth towards eHBox messaging client of HD (HD UM/EM).

Step 7. Transfer of pseudonymized patient identifiers and technical ID of record from eHBox messaging client of HD (HD UM/EM) to HD Integration engine.

Step 8. Joining of pseudonymized patient IDs and the registry variables based on the technical ID and Transfer of the records from HD Integration engine towards Data Validation environment on DHW.

Bart.Servaes

HD4DP v1

HD4DP v1

Please be advised that HD4DP v1 will soon be phased out. This application will be replaced by HD4DP v2.

The exact date when the project will be available in HD4DP v2 will be communicated soon.

johanvanbussel

General description of the application HD4DP v1

General description of the application HD4DP v1

HD4DP v1 is a local application developed by healthdata.be (Sciensano) and installed on the infrastructure of the data provider. The application allows the data provider to extract data from the primary system and map that data into one or more data collection projects.

The local application HD4DP v1 is also accessible via web browser. Questions that cannot be answered with the data from the primary systems can be answered manually in (‘prefilled’) electronic forms.

If the registrations are complete, the data can be transferred towards the central data platform healthdata.be. For this transfer, HD4DP v1 connects with the ehealth messaging software of the data provider.

Bart.Servaes

User manual of the application HD4DP v1

User manual of the application HD4DP v1

An extensive user manual, for both participating healthcare organizations and their IT service providers, is available on this docs.healthdata.be portal: https://docs.healthdata.be/hd4dp-v1.

Bart.Servaes

Request account for HD4DP v1

Request account for HD4DP v1

To access the HD4DP v1 application, you need an account, a username and a password. If you do not have an account, you can request one by following the steps below. If you have an account, follow the "sign in" instructions at the end of this page.

  • Open the link for the HD4DP v1 application. You will see this screen:
  • Click on the Request account link on the login page.
  • Fill out the request form:
    • Enter a username, first name, last name and e-mail address
    • Select the organization and data collection(s)
    • Fill in the Requester e-mail field if a person requests an account for a third person
    • Submit the request user the Request button 
  • Confirmation e-mails are sent to the person for whom the account was requested as well as the requester, if the field "Requester e-mail" was filled.
  • The approval or rejection for the user account is confirmed by mail. Depending on your organization, this could take a few hours.
    • This action will be done by an HD4DP v1 administrator in your organization 
    • The confirmation mail will include all the necessary information to log in

Sign in

Logging in to the HD4DP v1 application is done in 3 steps:

  • Enter your username and password​ in the appropriate fields
  • Select the correct organization
  • Click on "Log in"
johanvanbussel

Create a registration in HD4DP v1

Create a registration in HD4DP v1

The Data Collection view leads a user to the existing registers. A user can start collecting data from this view.

Creating and submitting a registration consists of 4 steps:

  • Select the register for creating a registration.
  • Click on "New registration" button.
  • Fill in the registration form and save or submit the registration
  • Save the registration temporarily if needed. The status of the record will be "Open" for saved registrations.​
  • Submit the registration if  no validation errors present. The status of the registration will change to "Sending".
  • When the record has been processed, the status will change to "Submitted".

As soon as a registration is sent, the "status confirmation" column will show "Pending".

  • ​It shows "OK" once the registration has arrived, and "NOK" if the registration did not arrive within 48 hours. If the status is "NOK", the software will automatically try to resend the registration up to 10 days after the initial submission.
  • For the statuses "Sending","Corrections needed" and "Approved" the status confirmation will be empty because the registration has not yet been submitted.
  • A registration can be "Reopened" if needed as long as the status of the registration is "Submitted".
johanvanbussel

Change a registration in HD4DP v1

Change a registration in HD4DP v1

A user can modify and complete a registration in four steps:

  • Select the register from which you wish to modify one or more registration(s).
  • Click on the registration to be changed, and complete the form in full. The status of the record is then:
    • Open for registrations saved manually or by uploading a csv file
    • Corrections needed for registrations with errors
  • Save registration temporarily if necessary. Record status becomes Open for stored registrations.
  • Send the registration if there are no more validation errors.
    • Registration status changes to Sending
  • When the record is processed, the status changes to Submitted.

Once a registration is sent, the message Pending appears in the status confirmation column.

  • When the registration is received, the message OK appears; if the registration is not received within 48 hours, the message NOK appears. With the status "NOK", the software will automatically try to send the registration up to 10 days after the initial submission.
  • For the statuses Sending, Corrections needed and Approved, the status confirmation is empty because the registration has not yet been sent.
  • A registration can be Reopened if necessary, as long as the status of the registration is "Submitted".
johanvanbussel

Delete a registration in HD4DP v1

Delete a registration in HD4DP v1

Only registrations with status Open or Corrections needed can be deleted.

The following steps are required to delete the registration:

  • Select the record and version for which you wish to delete a registration
  • Select the registration(s) you wish to delete
  • Select the Actions button and select the Delete registrations option
  • Select Yes to confirm
johanvanbussel

Technical manual of the application HD4DP v1

Technical manual of the application HD4DP v1 Adelaide.DAmore

HD4DP v1 csv upload

HD4DP v1 csv upload

The upload center is introduced to make the upload of multiple registrations more performant and user friendly.​

The link to the upload center can be reached by the main menu:

If uploads are processed, an overview with the name of the uploade file, the status and a visual representation of the status, the number of records that were processed, the way of uploading, the user and the upload date is saved in the main screen of the upload center is given to the user a quick and visual impression of the data uploaded in bulk by using the upload center:

In the right upper corner two buttons are shown.

  • Configuration: the default settings for a register can be set by any user that is authorized to participate in a register. 

Following options are available:

  • Conflict mode: what need to be done in case of conflict
  • Conflict master: is the data from the new registration of from the record in the database saved in case of conflict
  • Ignore duplicate records
  • Autosubmit: send the data automatically for processing in HD4RES
  • Validation: what need to be done after validation the registration:
    • None: only the registrations without errors will be saved
    • Save on validations: Save the registrations when there are validation errors upon uploading
    • Validate all: Only perform commit if non of its records have (errors or) validation errors

4 steps need to be executed for a new upload. When the titel bar of a separate step turns green, orange or red and the icon of the step in the overview, the step has respectively ended with success, with warnings or errors.

Step 1 - Select file

The first step is to select the CSV file with the data to be uploaded. The default settings for a register can be found in the Configurations on the main screen of the upload center. 

Be sure to deselect the "Use default configurations" when changing the default settings: 

For the BCR register, the possibility exists to upload two files and link them during the process:

  • Both documents will be validated separately. By using the link "Click here to see the linked upload" the user can switch between the linked documents. Refresh of push F5 on you to see the status of the upload.

After uploading succesfully, the title bar of this step will turn green.

Step 2 - Validity Check

Validation checks are executed for every record. 

Step 3 - Upload

The file is being uploaded and the result is shown in this step per line of data added:

Step 4 - Finalize 

The result is shown visually for all registrations and for all registrations in a CSV file in reports after finalization:

Succes report is a CSV file with all registrations who were processed succesfully.

In case of errors, a link to a detailed error report is shown too:

Please find below the movie that guides you through the functionalities of the Upload Center:

johanvanbussel

Create a csv for HD4DP v1

Create a csv for HD4DP v1

Processing registrations in bulk is done by uploading CSV files. These files are plain text files which can contain multiple registrations at once and are extracted from your primary system. 

The first step is to create the file correctly.

Using a CSV editor

While Excel is a fine tool to view CSV’s, we do not recommend it to edit CSVs. Instead use notepad++ or any other text editor. Here are a few risks you should be aware of when editing a CSV in Excel. Excel will interpret the content, which may lead to changes:

  • Leading zeros disappear in fields that are recognized as numeric fields
  • Entries like 3-9 can become March-9
  • ​The only accepted date format DD/MM/YYYY can be modified (e.g. To DD/MM/YY)
  • The decimal separator can differ from that in HD4DP, a semicolon wil lead to a correct upload
  • When saving a file as .csv, Excel uses the default field separator. HD4DP only accepts CSV with a semicolon as separator. This default setting can be adapted in the properties of your computer.
  • CSV encoding must be in UTF-8.

Setting up the document 

Every column in the CSV file needs to be recognized as a field of the register by the HD4DP application. Therefor each column in the file must be identical by the technical name of the field in the register.

Tip:
 Downloading (manually) entered data from HD4DP will guide you in formatting a CSV file and may help during the development of the CSV extraction from the primary systems.

The Data Collection Definition (DCD) specifications for a register and its fields are defined and documented on this documentation portal.

Each field in the form can be completed through a value in a CSV file.
An example field is “Date of last follow-up”, shown in the screenshot below.

This field is of the type “date” and is required (*). Within the technical documentation of this data collection, this is shown as follows:

To include this field in a CSV upload file, it is sufficient to create a column with the name “date_of_last_followup” and populate it with the appropriate data i.e. a date in the format dd/mm/yyyy.

Fields can be required, read-only and computed (automatically calculated). Fields can also have a default value.

This information is present in the detailed technical description for each data collection.

General requirements

  • The column separator is the semicolon (;)
  • The decimal separator for numbers is the comma (,)
  • The date format is dd/mm/yyyy

Basic content types

Depending on the type of the field, a different representation of the data is expected. The table below describes the different basic types and the rules on how to provide the content for these types.

Content typeExpected format/content
booleanTRUE, FALSE
datedd/mm/yyyy
choicecode from choice list
listoption1_label|option2_label|etc.
multilinefree text
numbernumber (decimal separator = ,)
patientIDSSIN number. If the person does not have a SSIN, leave this field blank.
questionnairecode from questionnaire answer list
text●   free text
●   if a binding reference list is used: a code from the reference list
●   if a non-binding reference list is used: a code from the reference list or free text
attachment●   expected format/content: Name of the file that must be attached (e.g. protocol.txt).
●   expected extension: .txt
●   file must be stored in the same folder as the folder that is used for the CSV-upload

Advanced content types

Other than these simple types, more complex data structures can be used, as shown in the table below. Each of these types is explained in more detail below the table.

Content typeCSV column nameExpected format
fields within fieldsetfieldset_label|field_labeldepending on the field type
list (1 field)list_label|fieldvalue1|value2|etc
list (block of fields)list_label|0|field1
list_label|0|field2
list_label|1|field1
list_label|1|field2
etc.
depending on the field type
nested fields below choice or multichoicechoice_label|nested_itemdepending on the field type

Fieldset

A fieldset is a collection of fields, as shown in the image below:

Anthropometry is the title of the fieldset, and this fieldset contains two fields, weight and height. Fieldsets fieldsets do not have a number cfr. image below - Anthropometry.

Sections do not have an impact on the CSV file, whereas fieldsets do. The title of the fieldset must be included in the field name column as follows: fieldset_label|field_label.

E.g. for the two Anthropometry fieldset fields weight and height below, the correct CSV column headers are: anthropometry|weight en anthropometry|height.

Lists

A list is also a collection of fields, like a fieldset, but with the additional property that the collection of fields can be repeated.

An example is shown in the image below: “Birthdays of the biological children for this patient” is a list. One list item consists of two fields, “Child birth month” and “Child birth year”. For each child, a list item can be added.

The CSV column names consist of the list header label and the field label (as for fieldsets), together with a counter to distinguish the different list items. The correct CSV column names for the two list items below are:

  • birthdays_of_the_biological_children_for_this_patient|00|child_birth_month
  • birthdays_of_the_biological_children_for_this_patient|00|child_birth_month
  • birthdays_of_the_biological_children_for_this_patient|01|child_birth_month
  • birthdays_of_the_biological_children_for_this_patient|01|child_birth_year

Please note that for every line, the numbers should increment, starting from 0 (|00|,|01|, .. is ok, |01|, |03|, ... is not). You can't have blank values for |00| and filled values for a higher number.

Please note that the numbering requires a stable format, meaning the number of characters used by the number has to be constant. You can't have one record using |00| and another using |0|. Generally we advice to use a string length of 2 digits.

For lists consisting of 1 field a simplified implementation is possible. The CSV column header only consists of the list header label and multiple values are provided in the one column, separated by a pipe (|).

E.g. for the list in the image below, the CSV column header is diagnosis_orphacode and the content of the column is 562|702. This is the example of a text field with a reference list: providing the codes of the reference list is sufficient.

Nested fields

Nested fields are fields that only become available when specific options are selected in the form. An example is shown below: the field “Specify” only becomes available if the checkbox “Other” is marked. These fields also have a combined CSV column header, consisting of the choice list label and the field label. For the example below, the correct CSV column header is hence base_of_diagnosis|specify.

Attachments

When a CSV is prepared and put in the provisioning folder, it can contain references to attachments for data collections that specifically allow this.

These references are relative paths to the file location. If such a reference is present in the CSV file, the attachment content is uploaded and linked to the created registration. The attachment is then available in the HD4DP client as well as in the HD4RES client when the registration is submitted.

The maximum file size for attachments is 6 MB

If a data collection permits you to send attachments you should have the column name to use in the CSV. If not, you should be able to find it at https://www.healthdata.be/dcd/#/collections or you can contact Support.Healthdata@sciensano.be.

Add the column name to the header of the CSV and add the file names as values in the column.
Example: “picture.png”

Put the CSV file in the correct provisioning folder (organization sub folder, then in the register sub folder), along with a “picture.png” file of your choice. The application picks the CSV file and creates a new registration.

Open the registration and verify the attachment has correctly been uploaded.

johanvanbussel

CSV download and upload for stable data

CSV download and upload for stable data

Before starting a new data collection based on stable data of another data collection, you need to finalize the data collection which serves as the starting point of your new data collection cf. article "Finalize the data collection"

To start the new data collection select the new version in the Data collection section. In this case v3. 

Click the button "Go to the participation page":

  • Click on ‘Participate’:
  • The Start date in the Participation status will be updated and access to the new version is completed and the user can return to the Data Collection section:
  • Once the previous data collection is finalized and the new one has been started, you can download data from the first version and add those to the next version. 
  • Go to the Registrations tab:
  • Download the data by using the Download button "CSV Download All (Stable Data)":

When everything is downloaded, you can start uploading by Using the upload center.

Adelaide.DAmore

HD4DP v2

HD4DP v2 Adelaide.DAmore

General description of the application HD4DP v2

General description of the application HD4DP v2

The HD4DP version 2.x Local is an electronic data capture (EDC) system: a computerized system designed for the collection of clinical data in electronic format for use in research supporting human public health policy. HD4DP (Health Data for Data providers) replaces the traditional paper-based data collection methodology and the proliferation of websites to streamline data collection and expedite the time to analysis and reporting.

Components and features

The HD4DP version 2.x Local application contains the following major components: NextGen Connect, Form.io, HD Connect (LOCAL Proxy), Local datawarehouse.

NextGen Connect

NextGen Connect is a health care integration engine that translates message standards into the standard required by the receiving system, including data formats and standards like HL7, DICOM, ANSI X12, ASCII, and XML. Main functionalities are filtering, transformation, extraction and routing.

The NextGen Connect component is used to handle all integrations within HD4DP 2.0 itself but also all integrations with the external world.

Data collections API: The form.io server offers a REST API which can be used to submit data for each known data collection. Data provider Master Systems cannot access this API directly but need to use the API exposed by the NextGen Connect component. This API is simply a proxy for the form.io API, but allows extra features on top of the form.io API such as security, monitoring, throttling, …

CSV API: For each data collection data can be submitted file-based using a CSV. A CSV can contain multiple data entries for a single data collection definition. These data entries are transformed and pushed by the NextGen Connect component towards the form.io server for potential manual post-processing and validation.

HL7 FHIR API: For some data collections an HL7 FHIR API will be available. The NextGen Connect component performs the transformation towards the Data Collections API and push the data into the form.io server.

Data delivery: the NextGen Connect component handles all routing of data towards the external world. This means it verifies the form.io server for completed data entries which have not yet been delivered. For each data entry that needs to be delivered, it determines where to send the data to, how it needs to be transformed and how it needs to be split. It performs all these actions in a guaranteed delivery fashion: it makes sure the data reaches its destination, possibly retrying when something went wrong.

Feedback: the NextGen Connect component coordinates the receival of feedback, potentially transforming it and pushing it towards the respective data collection entry using the data collections API.

Form.io

Form.io is a data management platform that includes a form builder with a drag and drop interface, management of data with complete API platform, management of users, offline forms, dynamic forms, automatic creation of API, and application embedding. In HD4DP v2, an Angular frontend application is available on top of the form.io server. This application provides a user interface to data providers in which they can see the different data collections for which they are allowed to record and submit data manually. A form.io backend server is responsible for providing the form definitions and registrations of new/updated entries.

HD Connect (LOCAL Proxy)

The HD Connect component is used to retrieve metadata from Master Data Management Database (MDM DB) residing on healthdata.be side.

Local datawarehouse

Each and every change in data entries on the form.io server is pushed towards the local datawarehouse (Local DWH) for easy reporting and data extraction. This local DWH consists of a PostgreSQL database.

Installation and maintenance

The application HD4DP v2 Local is provided without cost and installed remotely on the infrastructure of the healthcare organization by healthdata.be. Healthcare organizations are provided the system requirements for installation of HD4DP v2 application. Healthcare organizations that cannot provide the system requirements can opt to request access and use of a HD4DP v2 Local application of another healthcare organization. Healthcare organizations that cannot provide the system requirements and cannot access and use a HD4DP v2 Local application of another healthcare organization, can request access and use of HD4DP v2 WEB hosted by healthdata.be.

The application HD4DP v2 Local is maintained without cost remotely on the infrastructure of the healthcare organization by healthdata.be. The infrastructure on which the application HD4DP v2 Local is installed, should be maintained by the healthcare organization.

Adelaide.DAmore

Position of HD4DP v2 in HD Architecture 2.0

Position of HD4DP v2 in HD Architecture 2.0
Adelaide.DAmore

User manual of the application HD4DP v2

User manual of the application HD4DP v2

In this manual we describe the following functions of the application HD4DP v2:

Adelaide.DAmore

Request access to an HD application for a specific project

Request access to an HD application for a specific project

Healthdata.be applications such as HD4DP v2 and healthstat.be process sensitive personal information. Therefore, strictly controlled processes are used to grant access to these applications.

The Entity Access Management (EAM) portal of healthdata.be facilitates these processes. In this article we describe how to use it. To navigate to the EAM application, enter the URL https://eam.healthdata.be in your internet browser.

Note: As the documentation of the EAM portal is being updated on a regular basis, please be advised to check the Release notes first.

Select one of the following capacities that suits your position in order to request access to an HD application:

Standard End-users

To request access to healthdata.be applications (such as HD4DP v2 and healthstat.be) as a standard end-user, you need to click on REQUEST ACCESS in the blue text box in the middle of the screen.

You will be directed to the next screen, where you select the button Log in with eID.

Clicking on this button leads you to the government's Federal Authentication Service (FAS), where you can log in with multiple digital keys with eID or digital identity.

If you choose to connect with ItsMe, you can enter your cell phone number.

Follow the instructions on your mobile device via the ItsMe application.

Once you have run through the ItsMe login procedure, you want to select the green confirmation button (available in FR and NL) in the screen below to access the Sciensano environment.

After selection of the confirmation button, you are logged in to the EAM portal page as indicated by the available My profile and Log out options to the top-left of your screen.

When selecting the REQUEST ACCESS link in the blue highlighted text box, in order to fill out the Request access form, the following message appears:

Click on the My profile link in the message, which redirects you to your profile page. Your user profile needs validation before being able to enter and complete the Request access form.

Select the Edit tab to complete your profile information.

Next to the profile information that is automatically prefilled based on your eID data, you need to complete the following fields:

NIHDI Number: Your NIHDI number if available.

Organization: Add the organization(s) you are affiliated with. This field includes the name and NIHDI number of the organization.

Email address: Mandatory field for which the content can't be retrieved from the eID. Your email address will be used for communication on the profile validation and access request.

State: Select one of the options (see image underneath):

  • Draft: This status indicates that you have not finished completing the profile fields yet. Only you can see the filled in data at this stage. Modification of the profile information is restricted to the status "Draft". You can however Save profile information as Draft to finalize and send it for validation lateron.
  • Validation Requested: The provided user profile information is complete and you want to send it for validation to the SPOC.

Click on the Save button to send your profile information to the SPOC. An Access Denied message appears on the screen, indicating you can't modify your filled in and sent profile information anymore.

Return to the My profile page to see your profile has the pending status. Also, the Edit tab has disappeared, preventing from modifications afterwards:

Your profile will soon be validated by the SPOC, which will be visible on your profile page as follows:

After validation of your profile by the SPOC, you select Home to return to the EAM portal page. Attention: Do not select the button "Request access" (soon: "Request SPOC rights"), since this leads to the process of requesting access as a SPOC.

In the EAM portal page you want to select the REQUEST ACCESS link in the blue highlighted text box again.

Select the hospital you are affiliated with for the application(s) and project(s) you want to request access to.

You can now start completing the Request Access form.

Please fill in all required fields (indicated with a red asterisk *), make a selection in the mandatory drop-down lists and, optionally, tick the check boxes for additional help and/or information.

Type of login field:

If you select "Belgium resident" for the field “Type of Login”, entering the mobile phone number is optional.

If you are a "Non-Belgium resident", the Mobile phone number field becomes mandatory to allow for the two factor authentication:

Role of requestor in project field

You must indicate your role in the project (Local Study Lead, Local Study Associate or Local Study Support). Your role determines your access options in HD4DP2 for this project. Read more about the scope of the roles in User roles in HD4DP v2.

When selecting Local Study Support you will be asked to select the name of your Local Study Associate in a drop-down list. This list is automatically populated and specific to the organization you have selected earlier.

HD4DP2.0 field

Click in the field under HD4DP2.0 if you want to access the application to make registrations for the selected project:

Healthstat.be field

Click in the field under healthstat.be if you want to access the reporting of the selected project:

It can happen that a user inadvertently submits requests for access to the same applications and/or projects. The requests are screened for duplicates by checking on organization number, role, author group and project code. In case duplicates are detected, the end-user will receive the following message:

Once you have completed the Request Access form, click on the Submit button. When the submission was successful, you will receive a confirmation message.



Single IT points-of-contact (IT SPOC)

A single-point of contact or SPOC is a role that extends beyond the function of a VTE/RAE. More specific, it can be any employee within an organization whom this role has been assigned to.

To request access to healthdata.be applications such as like HD4DP v2 and healthstat.be as a single-point of contact (SPOC), you want to select GIVE ACCESS in the white text box to the right of the screen.

If you have not yet requested access to these forms, and therefore are not recognized as a user with the SPOC role, you will receive the following message:

In this case you want to select My Profile (top left in the menu) and click on the button Request access (soon: "Request SPOC rights").

The Request access [RAE] screen pops up.

Fill in all requested fields and click on the Submit button.

After submission of the RAE form healthdata.be support carries out a background check considering your SPOC authority within the organization mentioned, and will send you a confirmation e-mail with a special token. Once you have received this token, return to the My Profile page and select the button Enter access token.

The Access token screen appears:

Fill in the NIHDI code for your organization and the access token you received per e-mail. After clicking on Submit, you will be redirected to the EAM portal page, where you again select GIVE ACCESS.

The ACCESS REQUEST form appears. By filling out the requested fields, a SPOC is able to give access to users within their organization who want to access a healthdata.be application (HD4DP2.0 or Healthstat).

Once you have completed the Access Request form, click on the Submit button. When the submission was successful, you will receive a confirmation message.

If you now return to My profile, you will see that it has been extended with the information "Responsible Access Entry" under User role(s). Also the tabs Profiles, Requests, Batch create requests and Edit have been added.

The Profiles tab of the validated SPOC profile offers the possibility to Search, Select and Sort profiles. Selected user profiles in the list can be Validated or Rejected via the Action drop-down menu.

In the Requests tab the SPOC can manage the overview of requests. More information is to be found on SPOC actions upon a request.

See documentation under Give access to multiple users in batch for more information on the Batch create requests tab.

Saved user profile information can't be modified, unless upon action of the SPOC. The Edit tab offers the option to enter the NIHDI number, add organizations, modify the email address and toggle the state between Validated or Rejected. Select the Save button to install the new profile information.

International users

For international users a link to a special form will be provided:

https://eam.healthdata.be/forms/hd_eam_access_request_user_int

Selecting this link redirects you to a more extensive Request Access form. Fill in all required fields (indicated with a red asterisk *), make a selection in the mandatory drop-down lists and, optionally, tick the check boxes for additional help and/or information:

After submitting the form, an e-mail is sent to the Service Desk staff for an identification and authorization process. If the request is approved, the international user receives an e-mail with account information. International users, however, are not able to log in, nor can they consult overviews of requests at this moment.

Adelaide.DAmore

User roles in HD4DP v2

User roles in HD4DP v2

Several user roles are possible in the HD4DP v2 application:

Local Study Lead: This role takes responsibility for the study or project within the participating healthcare organization. Often this is the head of the clinical department involved in the study or project. The Local Study Lead can:

  1. make registrations in HD4DP v2
  2. view all registrations made by colleagues (regardless of role) for the study or project

Local Study Associate (author): The Local Study Associate is a healthcare professional that participates in the study or project. He/she reports/records medical information towards the researcher using HD4DP v2 and thereby assumes responsibility on the correctness of the reported information. He/she is considered to be the author of the registration. For each author an author group will be created. This will be represented in the registration form. The Local Study Associate can:

  1. make registrations in HD4DP v2
  2. only see all registrations assigned to his/her author group, not those of other colleagues (other author groups) in the same healthcare organization participating in the same study or project

Local Study Support (co-author): A Local Study Associate can delegate registration to a Local Study Support. Often this is an administrative collaborator or staff of a department medical coding. The Local Study Associate is still considered the author of the registration; the Local Study Support is considered co-author. The Local Study Associate can view and change registrations made by Local Study Support. The Local Study Support can:

  1. make registrations in HD4DP v2
  2. only see all registrations assigned to his/her author group, not those of other colleagues (other author groups) in the same healthcare organization participating in the same study or project

By default, only 1 Local Study Lead is created by healthdata.be (Sciensano) for each project within each organization. This means that only 1 person can see all registrations made for that project within that organization. This policy prevents HD4DP v2 users to see personal and sensitive information from persons they do not have a therapeutic relationship with.

In case organizations create more then 1 Local Study Leads for a project within that organization, so that they all can see each others registrations, and thus personal and sensitive information from persons they do not have a therapeutic relationship with, the organizations are fully responsible and accountable for this policy deviation. Healthdata.be (Sciensano) cannot be held responsible or accountable for this policy deviation. Professionals wanting to participate in projects are kindly suggested to contact the Data Protection Officer (DPO) of their organization to consult them about this intended policy deviation.

Adelaide.DAmore

Give access to an HD application for someone from your organization

Give access to an HD application for someone from your organization

To give access to the applications of healthdata.be (like HD4DP v2 and healthstat.be), you need to click on GIVE ACCESS in the white text box on the EAM portal page.

You can give access to

Give access to a single user

After selection of GIVE ACCESS on the EAM portal page, an ACCESS REQUEST form is shown.

Completing this form is similar to the process on the Request Access page for standard end-users. In the capacity of a SPOC, however, you will now fill in an Access Request form for a user within your organization.

Please fill in all required fields (indicated with a red asterisk *), make a selection in the mandatory drop-down lists and, optionally, tick the check boxes for additional help and/or information.

Organization NIHDI number

The NIHDI number of the organization is already provided, since your account is connected to this organization.

Role in project

When selecting Local Study Support, you will be asked to make a selection in the drop-down list of Author groups. These author groups are specified for the organization in question.

HD4DP2.0 field

Click in the field under HD4DP2.0 if you want to access the application to make registrations for the selected project:

Healthstat.be field

Click in the field under healthstat.be if you want to access the reporting of the selected project:

Once you have completed the access request form, click on the Submit button. When the submisson was successful, you will receive a confirmation message.



If you now return to My profile, the User profile is extended with the Organization name and code. And an extra tab Batch create requests has been added.

Continue to Give access to multiple users in batch in order to give access to multiple users in one operation.

Give access to multiple users in batch

The person whom has been assigned the SPOC role for the healthcare organization (HCO) is able to give access to multiple users in batch. The SPOC therefore needs to return to the User profile page and select the tab Batch create requests.

In the tab Batch create requests a CSV file can be selected via the file selection button.

Upload the CSV file and click on the Run the batch creation button. An example of a CSV file structure is available here:

By doing so, a master request per line will be automatically generated, and then the information will be split into sub-requests (one per application or project) and saved in the healthdata.be DB2 for further processing.

A table schema (https://specs.frictionlessdata.io//table-schema/) to validate CSV looks as follows. An example file is available here: eam_csv_batch_requests_schema.json

User roles and corresponding values

To complete the “role”, 3 different choices are possible:

  • 1= Local Study Lead: Only 1 Local Study Lead can be created by healthdata.be (Sciensano) for each registry within each organization.
  • 2= Local Study Associate (= author). This will be the default role a user will receive, the reason why it was prefilled with “2”.
  • 3= Local Study Support (= co-author). This role can be given if it is more suitable for the user. A Support will always need an Associate to which he/she will be assigned.

When selecting role 3 (= Local Study Support), the name of the ‘Local Study Associate’ is expected in the field “author_group”. To be filled in in the format <first_name last_name> of the Associate, with just 1 space (tab) between the two names).

When selecting role 2 (= Local Study Associate), the field author_group must be left empty.

Adelaide.DAmore

Overview of the requests

Overview of the requests

After submission of the requests for access and receipt of the confirmation message, you are able to consult the validation process and other features of the requests via the tab Requests overview on the My Profile page.

Based on the scope of the requests overview, we can distinguish between

Overview of the requests for end-users

In order to view their own requests, end-users can open the My Profile page and click on the tab Requests overview.

The overview shown can be searched and sorted in the top row as needed (see figure below). End-users will only see a list of requests they have created for themselves.

Request UUID field

This field contains the unique ID’s of the requests. The occurence of the same unique ID in several rows indicates that this master request consists of several subrequests, each one per project and per application that has been selected in the request form. These subrequests are than saved in the healthdata.be DB2 for further processing.

Status field

The Status field indicates whether the request has been created (value “created”; meaning to be approved by the SPOC) or approved (value “approved_rae”; meaning the request was approved by the SPOC and will be ready for sharing credentials).

Role in project field

The values in this field are Local Study Lead, Local Study Associate, Local Study Support. More detailed information about these roles can be found in User roles in HD4DP v2.

Application field

This field contains the application you have selected in the Request Access (End-User) or Access Request form to access the public health projects: HD4DP2.0 or Healthstat.be.

Project code field

The value in this field is the Healthdata.be business project code. Entering this code in the publically accessible FAIR portal (fair.healthdata.be) results in the dataset for this project.

Or you can enter this code in the Advanced search field on the Healthdata.be docs pages to find the respective project’s documentation.

Overview of the requests for IT single points-of-contact (IT SPOC)

SPOCs have the capacity to view all requests for their organization.

To view the Status of the request of the users of their affiliation, the SPOC needs to select the My Profile page and to click on the tab Requests overview (see screenshot below). Requests in this overview can be searched and sorted as needed.

New: Actions field

This field describes the extra actions a SPOC can take, i.e. approve or reject requests. This functionality is explained in SPOC actions upon a request in more detail.

Request UUID field

This field contains the unique ID’s of the requests. The occurence of the same unique ID in several rows indicates that this master request consists of several subrequests, each one per project and per application that has been selected in the request form. These subrequests are than saved in the healthdata.be DB2 for further processing.

Status field

The Status field can only receive the status “approved_rae” since the request was made by the SPOC.

Role in project field

The values in this field are Local Study Lead, Local Study Associate, Local Study Support. More detailed information about these roles can be found in User roles in HD4DP v2.

Application field

This field contains the application you have selected in the Request Access (End-User) or Access Request form to access the public health projects: HD4DP2.0 or Healthstat.be.

Project code field

The value in this field is the Healthdata.be business project code. Entering this code in the publically accessible FAIR portal (fair.healthdata.be) results in the dataset for this project.

Or you can enter this code in the Advanced search field on the Healthdata.be docs pages to find the respective project’s documentation.

Adelaide.DAmore

SPOC actions

SPOC actions

In this article, we cover the different actions of a SPOC in more detail.

SPOC actions upon a request

SPOCs will be notified in case a request for access was made by a colleague, allowing them to review the overview table to manage all requests for their organization.

To open the overview table, the SPOC needs to navigate to "My Profile" followed by selection of the "Requests" tab. The overview of the requests appears (see below).

In the Actions field an Approve/Reject selection button is displayed next to each request with the status created or approval_requested (framed in blue). Two actions are possible now: the SPOC can either approve or reject the user's request.

When selecting Approve, and after confirmation of this action, the status of the request changes to "approved_rae" and the dates in both fields Updated and Completed are updated accordingly as demonstrated in the screenshots below. Once the registry goes in production the account will be created automatically and the credentials will be shared to the user by e-mail.

Approve action:

Pop-up confirmation query:

Approved:

When returning to the overview, you will notice that the status of the request has changed to "approved_rae". The Approve/Reject button in the Actions field has disappeared.

When selecting Reject, and after confirmation of this action, the request receives the status "rejected", the dates in the fields Updated and Completed are updated accordingly. A rejected request remains in the overview for information purposes. Compare following screens:

Reject action:

Pop-up confirmation query:

Rejected:

The requester will also be notified of the rejected request by e-mail:

Dear,

Your request for access to EAM was rejected.

Please contact your HD4DP SPOC for more information.

Best regards
Healthdata Support

Bart.Servaes

Access the application HD4DP v2

Access the application HD4DP v2

To access the application HD4DP v2, you must first request an account. If you do not have an account yet, please read the article "Request access to an HD application for a specific project" first.

Once your account has been created, you will receive an e-mail with following information (Note that the text between the [ ] will be adapted.):

  • Organization: [RIZIV number - Name] 
  • Login: [email] 
  • Password: [password] 
  • Application URL: [url] 

With these credentials you can access the application HD4DP v2 of your organization:

  1. Go to the url mentioned in the email 
  2. Select "your organization" from the list 
  3. Your organization: [RIZIV number – Name] 
  4. Click on "Next
  5. Fill in your "username" and "password"
  6. Click on "Log in"
Adelaide.DAmore

Navigate to the PITTER project

Navigate to the PITTER project

When logged in, you will see the Welcome page. In the left dark blue menu you can see all the study programs and projects you have access to.

When you select the study program Companion DIagnostics, you can see the study project Predictive Tests for a Therapeutic Response.

Select the study project Predictive Tests for a Therapeutic Response.

You will see that the study project Belgian Cerebral Palsy Registry consists of 1 part: Main registration form.

This documentation is being updated regularly. We try to provide as correct, complete and clear as possible information on these pages. Nevertheless, if you see anything in the documentation that is not correct, does not match your experience or requires further clarification, please create a request (type : request for information) via our portal (https://sciensano.service-now.com/sp) or send us an e-mail via support.healthdata@sciensano.be to report this documentation issue. Please, do not forget to mention the URL or web address of the page with the documentation issue. We will then adjust the documentation as soon as possible. Thank you!

Adelaide.DAmore

Create a PITTER registration

Create a PITTER registration

To create a registration for the study project Predictive Tests for a Therapeutic Response, select "Main registration form" in the dark blue left menu.

You will see the number of versions of this study section. In this case the third version: v3.

When you select the highest version of this study section for the first time, you will see an empty overview table in the main part of your screen. The table contains, among others, the following items: Registration IDProgressAuthorCo-authorUnique ID, Business keyRegistration codeNational registry ID of the patient...

NOTE:

The study section is not always available in the selected language. In that case the text frame pictured below covers the language selection buttons. It automatically disappears after a few seconds.

You will have to select now the desired language with one of the other language buttons:
NL for Dutch, FR for French or EN for English.

In the top right corner of the screen you can find a green button "+ New registration". Select this button.

After selection of the "+ New registration" button the main screen will be replaced by 2 sections: a study form in the middle of the screen and a table of contents on the right-hand side of the screen.

By completing the study form you will create a registration for the respective study project.

Table of contents

The Table of contents indicates which sections you must complete. You can also use the table of contents to navigate through the study form: clicking on a section in the table of contents will take you to this section in the study form.

Progress

By selecting the tab "Progress" on the right-hand side of the screen, the table of contents will be replaced by a progress bar and a list of open validation errors).

You can use the list of open validation errors to navigate through the study form: selection of a validation error in the list will take you to this section in the study form.

When the study form is completed and there are no validation errors, you can save or submit this registration: Save or Submit. Notice that the Submit button is in clear green.

When the study form is completed but there are validation errors, you can save but not submit this registration: Save but not submit. Notice that the Submit button is in dim green.

When the study form is saved or submitted, the screen switches to the overview table. Now, this table is not empty anymore but shows the saved or submitted registration.

This documentation is being updated regularly. We try to provide as correct, complete and clear as possible information on these pages. Nevertheless, if you see anything in the documentation that is not correct, does not match your experience or requires further clarification, please create a request (type : request for information) via our portal (https://sciensano.service-now.com/sp) or send us an e-mail via support.healthdata@sciensano.be to report this documentation issue. Please, do not forget to mention the URL or web address of the page with the documentation issue. We will then adjust the documentation as soon as possible. Thank you!

Adelaide.DAmore

Find a PITTER registration

Find a PITTER registration

To find a registration for the study project Predictive Tests for a Therapeutic Response select "Main registration form" in the dark blue left menu.

When you select a version of this study section, you will see the overview table in the main part of your screen. This table contains, among others, the following items Registration ID, Progress, Author, Co-author, Unique ID, Business Key, Registration Code, National Patient Registry Number…

Use the filter below each column label to find the registration that you are looking for.

This documentation is being updated regularly. We try to provide as correct, complete and clear as possible information on these pages. Nevertheless, if you see anything in the documentation that is not correct, does not match your experience or requires further clarification, please create a request (type : request for information) via our portal (https://sciensano.service-now.com/sp) or send us an e-mail via support.healthdata@sciensano.be to report this documentation issue. Please, do not forget to mention the URL or web address of the page with the documentation issue. We will then adjust the documentation as soon as possible. Thank you!

Adelaide.DAmore

Update a PITTER registration

Update a PITTER registration

To update a registration for the study project Predictive Tests for a Therapeutic Response, select "Main registration form" in the dark blue left menu.

When you select a version of this study section , you will see the overview table in the main part of your screen. The table contains, among others, the following items: Registration IDProgressAuthorCo-authorUnique ID, Business keyRegistration codeNational registry ID of the patient...

Use the filters in the header of the overview table to find the registration you want to update.

If you have found the registration, you can open the study form of the registration by clicking on the corresponding row in the overview table.

You can complete the missing fields and / or change previously completed fields in the study form.

At the end of the study form you can Save or Submit the registration.

A Spine Surgery registration can be updated as long as the registration has not yet been submitted. If the status of a registration is "Saved", the registration can still be updated.

If you save the registration, you can still edit it. A submitted registration can no longer be modified or deleted.

This documentation is being updated regularly. We try to provide as correct, complete and clear as possible information on these pages. Nevertheless, if you see anything in the documentation that is not correct, does not match your experience or requires further clarification, please create a request (type : request for information) via our portal (https://sciensano.service-now.com/sp) or send us an e-mail via support.healthdata@sciensano.be to report this documentation issue. Please, do not forget to mention the URL or web address of the page with the documentation issue. We will then adjust the documentation as soon as possible. Thank you!

Adelaide.DAmore

Delete a PITTER registration

Delete a PITTER registration

To delete a registration for the study project Predictive Tests for a Therapeutic Response select "Main registration form" in the dark blue left menu.

When you select a version of this study section , you will see the overview table in the main part of your screen. The table contains, among others, the following items: Registration IDProgressAuthorCo-authorUnique ID, Business keyRegistration codeNational registry ID of the patient...

Use the filters in the header of the overview table to find the registration you want to delete.

Once you have found the registration you want to delete, you must select the registration by checking the checkbox at the beginning of the row in the overview table.

Then you need to press the "Actions" button at the top right of the summary table.

There are now two options, "Submit" and "Delete". Now press "Delete".

After you press "Delete," a pop-up message will appear asking you to confirm the deletion of the selected registration(s). If you are sure about this action, press "Confirm." If not, press "Cancel."

If you delete the registration, you cannot change its status or content.

The deleted registration will not be removed from the summary table. It remains present, but the status has changed from "Open" to "Deleted".

If you want to see only Open and Sent registrations, you can adjust the filter on the "Status" item in the summary table.

A registration can be deleted as long as the registration has not yet been submitted. If the status of a registration is "Open", the registration can still be deleted.

This documentation is being updated regularly. We try to provide as correct, complete and clear as possible information on these pages. Nevertheless, if you see anything in the documentation that is not correct, does not match your experience or requires further clarification, please create a request (type : request for information) via our portal (https://sciensano.service-now.com/sp) or send us an e-mail via support.healthdata@sciensano.be to report this documentation issue. Please, do not forget to mention the URL or web address of the page with the documentation issue. We will then adjust the documentation as soon as possible. Thank you!

Adelaide.DAmore

Submit a PITTER registration

Submit a PITTER registration

To submit a registration for the study project Predictive Tests for a Therapeutic Response using the overview table, select "Main registration form" in the dark blue left menu.

When you select a version of this course of study, you will see the overview table in the main body of your screen. The table includes, among others, the following items: Registration ID, Progress, Author, Co-author, Unique ID, Business Key, Registration Code, National registry number of the patient…

Use the filters in the header of the table to find the registration(s) you want to submit. For example, you can use the filters "Status" (set to "Open") and "Validation Errors" (set to "0") to find the registrations that are eligible for submission.

Once you have found the registration(s) you want to submit, you must select the registration(s) by checking the checkbox at the beginning of the row in the overview table.

Then you need to select the "Actions" button at the top right of the overview table.

Two options will be available: "Submit" and "Delete". Select "Submit".

After you have selected "Submit," a pop-up message will appear asking you to confirm the submission of the selected registration(s). If you are sure about this action, click on "Confirm." If not, click on "Cancel."

Once you have confirmed the submission, you can't change the content of the registration(s) anymore. Submitted registrations can also no longer be deleted.

The submitted registration remains present in the overview table, but the status has changed from "Open" to "Submitted".

If you want to see only "Open" registrations, you can adjust the filter on the "Status" item in the overview table.

A registration can be submitted at the end of the creation process using the study form (see: Create a [project name] registration).

When the registration was completed using the study form, saved and there are no more validation errors, the registration can also be submitted via the overview table. This method can be useful to submit multiple registrations in the same action.

This documentation is being updated regularly. We try to provide as correct, complete and clear as possible information on these pages. Nevertheless, if you see anything in the documentation that is not correct, does not match your experience or requires further clarification, please create a request (type : request for information) via our portal (https://sciensano.service-now.com/sp) or send us an e-mail via support.healthdata@sciensano.be to report this documentation issue. Please, do not forget to mention the URL or web address of the page with the documentation issue. We will then adjust the documentation as soon as possible. Thank you!

Adelaide.DAmore

Send a correction registration

Send a correction registration

Suppose you want to send a correction to a submitted registration. In that case you need to navigate in the dark blue left menu to the study program and next to the study project concerned. Then, select the respective part.

Important: A correction registration can only be added, if the status of the registration is submitted.

A correction registration can be added in two ways:

  • via the overview table;
  • via the preview page of a registration.

Send a correction via the Overview table

When the registration was submitted, the correction registration can be added via the overview table. This table will appear in the main part of your screen, when selecting a version of a study section. It contains, among others, the following items: Registration ID, Progress, Author, Co-author, Unique ID, Business Key, Registration Code, National Registry ID of the patient…

Use the filters in the table header to find the registrations that need a correction. For example, you can use the "Status" (set to "Sent") filter to get only submitted registrations.

Then, you must select the "Actionbutton at the top right of the overview table.

Three options are displayed: "Submit", "Delete" and "Add correction", but only the option "Add correction" is available for submitted registrations. Now select "Add selection".

After you have selected "Add correction", a pop-up window will appear asking you to confirm the action of adding a correction registration for the selected registration. If you are sure of this action, click on "Confirm". If not, click on "Cancel".

If you confirm, you will be redirected to the correction registration form.

The correction DCD only contains:

  • Business key of original registration,
  • The name of Data Collection,
  • The field or variable which is wrong,
  • The correction value,
  • Comment field.

Some fields are automatically filled with values of the original registration, e.g "Data collection " and "Business_KEY" .

The number of fields to correct in the same correction registration is limited to three. You can add another field to correct by clicking on "Add another".

When you finish filling the correction registration, you can add a comment and send the correction by clicking on the "Submit" button.

Send a correction via the Preview page

We can also add a correction form in the preview page of a registration. Therefore, open the overview table and click on the registration you want to correct. Now, you will be redirected to the preview page.

Click on the "Add correction" button to add a correction for current registration.

Follow same steps described in previous section (See "Send a correction via the Overview table")

Preview a correction registration

The correction form is a generic form available in the left dark blue menu for all projects and DCDs.

If you want to preview "correction registrations" already submitted, you navigate to the study program Correction form and then to the study project Correction form. Finally, you select the last version of "Correction form" in the dark blue left menu.

All correction registrations (of different projects) will be displayed. You can use the filters in the table header to find a specific registration.

If you want to preview a correction registration, you need to click on the desired registration in the overview table. You will now be redirected to the preview page.

This documentation is being updated regularly. We try to provide as correct, complete and clear as possible information on these pages. Nevertheless, if you see anything in the documentation that is not correct, does not match your experience or requires further clarification, please create a request (type : request for information) via our portal (https://sciensano.service-now.com/sp) or send us an e-mail via support.healthdata@sciensano.be to report this documentation issue. Please, do not forget to mention the URL or web address of the page with the documentation issue. We will then adjust the documentation as soon as possible. Thank you!

Adelaide.DAmore

Registration statuses in HD4DP v2

Registration statuses in HD4DP v2

This article explains the different registration statuses in HD4DP v2.

Statuses are shown in Status column

You can select the columns you want to display via the menu Select visible columns located in the top-right corner:

Select the columns you want to display and click on Apply.

Description of the statuses:

Open: Registration is created and stored. It has not been submitted

Deleted: Registration has been deleted.

Submitted: Registration has been submitted and sent.

Adelaide.DAmore

Technical manual of the application HD4DP v2

Technical manual of the application HD4DP v2

For consistency within the project specific template only the titles of the components have been translated in NL and FR. The content of the technical manual, however, is available in EN only.

Adelaide.DAmore

Technical user roles in HD4DP v2

Technical user roles in HD4DP v2

IT administrator: An IT administrator has the highest level of all roles and permissions and can:

  1. log in using Active Director;
  2. grant access to Local Study Lead, Local Study Associate and Local Study Support;
  3. select and access all projects;
  4. create, find, update, delete, send (to healthdata.be, MyCareNet and other destinations) and correct a record using the form.io component;
  5. create, update, send and correct a record using the API data collection;
  6. create, update, send and correct a record using CSV upload;
  7. create and send a MyCareNet record using MyCareNet XML;
  8. view all records for all projects;
  9. harvest all records for all projects from the local DWH using the PostgreSQL database.
Adelaide.DAmore

HD4DP v2 Installation

HD4DP v2 Installation

HD4DP v2 Local is an application installed on the infrastructure of the Health Care Organisation participating in research projects facilitated by healthdata.be.

The installation of HD4DP v2 Local is executed by the DevOps team of healthdata.be.

Server Installation and Configuration

Installing and configuring the server requires the following actions:

The HD4DP v2 application is more modular and will support scaling up to meet the requirements of the various data collection projects we facilitate. It will offer several micro-services that will run concurrently on the same machine.

The server should therefore require more resources than the one currently hosting the HD4DP 1.0 application. Furthermore, the resources allocated should be increased.  It is therefore on the one hand imperative to use virtualization for the creation of the machine. On the other hand. It is also imperative to store files and make regular backups to a file server.

Below we take up our three categories of organizations sending data to healthdata.be and the resources we recommend allocating to their virtual machine:

  • "Small": Small data provider;
  • "Medium": Medium data provider;
  • "Large": Big data provider.

Finally, we also offer the possibility for each hospital to have an integration server and a production server. Healthdata.be will deploy the new release of the application on the integration server. This will allow you to accept or decline the promotion of a new release of the HD4DP 2.0 application to the production server. This option is highly recommended, but not mandatory.

Therefore, could you answer the question: Do you want to first deploy HD4DP on an integration server? Yes/No. If Yes, Could you provide a server whose label used for specifications is "Small" (following the instructions in section 1 of this mail), that is:

  • Processors number: 1
  • Physical cores/Processor: 8
  • RAM memory: 16 Go
  • Disk space: 100 Go
  • Network Station Mount with Space for Backups
  • Operating System: Linux Ubuntu v18.04
  • Virtualization

Server installation timing

In order to establish the deployment schedule for the HD4DP 2.0 application within your organization, we would like to know when the server could be installed and configured. To this end, could you give us the 2 dates relating to the installation of the server:

  • Starting date;
  • Finalization date.

Based on these dates, an employee of healthdata.be will regularly monitor the operations linked to the installation of the server.

For any request for information on installing the HD4DP 2.0 server, please send an email to hd-architecture-20@sciensano.be.

Adelaide.DAmore

HD4DP v2 Infrastructure instructions

HD4DP v2 Infrastructure instructions

Introduction

This document is written for IT staff / system engineers of data providers and therefore assumes technical knowledge. It acts as a guide through the on-boarding process of HD4DP v2 and covers installation of the server, user configuration, network configuration and remote access.

The order of steps in this document should be respected during execution.

Overview

HD4DP v2 consists of a modular application stack, which allows healthdata.be to seamlessly upgrade individual elements.

An HD4DP v2 deployment comprises of following components:

  • Form.io component
  • MongoDB
  • PostgreSQL
  • Nextgen Connect

As it is the case in HD4DP 1.0, an Encryption Module with a connection to the eHealthBox is still required for HD4DP v2 and must be provided by the data provider.

Network configuration

IP

The HD4DP server needs to be accessible via domain names in DNS, and must have a static IP in your private network.

DNS

The application stack of HD4DP v2 requires four domain names pointing to the IP of the locally installed HD4DP v2 server. Use the following names in your DNS:

  • nextgenconnect.hd4dp.<yourdomain.be>
  • hd4dp.<yourdomain.be>
  • metabase.hd4dp.<yourdomain.be>
  • admin.hd4dp.<yourdomain.be>

Firewall

The following connections should be possible in the firewall flow:

  • To and from (a) machine(s) in your IT department on port 22 for initial configuration and local support.
  • To and from the Encryption Module server. The protocol and ports depend on your local EM implementation. Contact your EM vendor if more information is necessary.
  • Reachable by your staff who uses HD4DP, on ports 80 and 443 for HTTP(s) traffic.
  • To and from the LDAP server (this is not mandatory if you are not using LDAP to authenticate) (port 389 by default)

The healthdata.be proxy server is used as a gateway to the internet for the security of HD4DP servers. The configuration of this proxy server will be provided to you by healthdata.be at a later date.

Server installation

To install the application stack of HD4DP v2, healthdata.be requires a fresh installed operating system, specifically Ubuntu Server 18.04 LTS.

Please use these instructions even if you have previous experience with installing this operating system, as its configuration is specific for healthdata.be.

These instructions assume that the network configuration described in the previous section is completed.

Instructions

HD4DP v2 requires a (virtual) machine running Ubuntu Server 18.04 LTS.

We assume knowledge of loading a .iso file onto a (virtual) machine. Healthdata.be can’t provide instructions for this, as the environment of your center is unknown. Should you have any trouble, however, please contact Healthdata.be support so that we can help out.

Please find the installation steps below.

Installation steps

  1. Download the .iso file from the link below.
    Download Ubuntu Server 18.04 LTS
  2. Create a new (virtual) machine with Linux Ubuntu 64 bit as the OS family
  3. When prompted, select the .iso file downloaded in step 1.
  4. After some time, you will be prompted to select a system language. Select English.
  5. “Keyboard configuration”
    Select your preferred keyboard layout and press enter
  6. “Network Connections”
    Highlight the network interface and press enter. Navigate as follows:
    Edit IPv4 -> Manual -> enter the network details -> save -> Done
  7. Proxy IP -> Leave default/empty.
  8. “Configure Ubuntu Archive Mirror” -> leave default
  9. “File system Setup” -> Use An Entire Disk
  10. Proceed until “Confirm destructive action” -> press continue. The installation process starts, this can take several minutes.
  11. In the meantime, create the user for Healthdata.
    username = healthdata,
    Password = choose a secure password and communicate it to healthdata.be.
  12. Mark “Install OpenSSH server”. This will be used for remote access. “Import SSH Identity” -> no -> done
  13. “Featured Server Snaps” -> Select nothing and press Done.
  14. Wait until installation is finished.

Configuration steps

Connecting to the server

Log into the machine with the healthdata.be user created in the previous section.

Instructions (from a Windows machine):

  1. Install the tool Putty and open the application.
  2. On the configuration screen, enter the following (replace cursive text with the appropriate values)
    • Host Name: healthdata@server_private_ip
    • Port: 22
    • Connection type: SSH
  3. Click Open. Enter the password (you will not see text as you type, you can paste into putty by right-clicking in the terminal).
  4. You should now be logged in and see a prompt  “healthdata@server_name:~$”

Administrator account for internal use

An administrator account for internal use can be created on the HD4DP v2 server.

The configuration of remote access (described below) should not happen on this account, but on the Healthdata.be account.

The internal account can later be used to install and configure OS monitoring software and antivirus software by the internal IT team. For more information, see the section on Antivirus and Monitoring.

(Text with a gray background should be entered as a command in the terminal of the server)

Create the user:

            sudo adduser <username>

Add the user to the sudo group

            sudo usermod -aG sudo <username>

Installation and configuration of the software stack

Healthdata.be support will instruct you when to execute the next step, which is to enable remote access so that Healthdata.be can execute the software installation and configuration.

Backups

The configuration of the HD4DP v2 server is administered by healthdata.be and does not require backups.

HD4DP v2 regularly dumps its databases automatically to the /backup directory on the server. A network storage should be mounted at this location.

Please fill out the infrastructure sheet with the required credentials, domain name/url, protocol… to connect to the network drive. The connection will then be configured by healthdata.be.

Patching and Updates

Healthdata.be configures HD4DP v2 servers to automatically receive recommended security updates. The choice for Ubuntu 18.04 is motivated by the long-term support for this version. Security flaws are rare in this distribution, and security updates are quick and often don’t require a system reboot.

If the IT department of your organization prefers to manage patches, this is possible but not encouraged. Please use the account for internal use created in Section 3 for this purpose.

Antivirus and Monitoring

Most data providers will want to manage their own antivirus and OS monitoring on all machines in their network. Installation of such software on the HD4DP v2 server is allowed, but healthdata.be should be informed about all extra software installed on the server. Additionally, healthdata.be will not provide support for the installation of this software.

Contact information

Adelaide.DAmore

HD4DP v2 Infrastructure sheet

HD4DP v2 Infrastructure sheet

The HD4DP v2 Infrastructure Sheet contains information that healthdata.be needs in order to start the installation of the HD4DP 2.0 Software at your organization.

Below you can find the description of the necessary information:

SERVER CONNECTION

Healthdata.be performs its installation and support tasks remotely (using VPN or remote port forwarding via SSH). Please provide the required credentials.

  • Type of connection (VPN / Remote port forwarding via SSH)
  • Link (IF VPN)
  • Username, token, other (if VPN)
  • Password (if VPN)³
  • Public SSH Key (if remote port forwarding)

³ For security reasons, we advise to communicate passwords to us either by phone, or via a link using a secret-sharing service such as onetimesecret.com.

SERVER MACHINE

  • Server Name
  • Internal IP-Address
  • Ram (in GB)
  • CPU (number of CPU's and number of cores)
  • Disk space (in GB)
  • Username: Healthdata
  • Password ³

³ For security reasons, we advise to communicate passwords to us either by phone, or via a link using a secret-sharing service such as onetimesecret.com.

ATTACHED DRIVE FOR BACKUPS

HD4DP 2.0 regularly performs data dumps for backup purposes. Please provide connection information to a network share volume.

  • Link / IP address
  • Path
  • Username
  • Password ³

³ For security reasons, we advise to communicate passwords to us either by phone, or via a link using a secret-sharing service such as onetimesecret.com.

USER MANAGEMENT

HD4DP can either connect to a LDAP server or use its own application database for performing user authentication and management. Please check the user management mechanism you want to use.

  • LDAP user management : Yes / No
  • Application user management : Yes / No

LDAP configuration (Optional)

If you chose ‘LDAP user management’ as user management mechanism, please provide the following information that allows us to connect to your LDAP system.

  • Connection URL
  • Username
  • Password³

³ For security reasons, we advise to communicate passwords to us either by phone, or via a link using a secret-sharing service such as onetimesecret.com.

SOFTWARE CONFIGURATION

Encryption Module interface

HD4DP communicates with the Encryption Module (EM) either using the file system interface or by calling a REST web service. Please choose which interface HD4DP should use for its communication with the Encryption Module.

Note: if the encryption module is not yet purchased (or developed), HD4DP can already be installed; the EM can then be configured in HD4DP once it is available. Please note that HD4DP 1.x and HD4DP 2.0 cannot use the same EM.

  • REST web service
  • File system

REST web service interface

If you chose to communicate with the Encryption Module using a REST interface, please provide the web service URLs that should be used by HD4DP for its communication with EM.

  • "Outgoing flow URL: Example: http://host:8080/encryptionmodule/send"
  • "Incoming flow URL : Example: http://host:8080/encryptionmodule/receive"

File system interface

  • "Incoming directory: Directory where HD4DP checks for incoming files"
  • "Incoming directory: Directory where HD4DP writes outgoing files"
  • "Incoming directory: Directory to which HD4DP moves successfully processed files"
  • "Incoming directory: Directory to which HD4DP moves unsuccessfully processed files"
Adelaide.DAmore

HD4DP v2 S2S API

HD4DP v2 S2S API

The HD4DP v2 S2S API is a unified Application Programming Interface (API) that will allow participating Healthcare Organizations (HCO) to submit DCDs data to HD4DP2.0 fully automated. In the manual of the application HD4DP v2 we provide detailed information about the S2S API:

Important note: For code fields (fieldType = 'CODE') the id of the codeListValue item must be sent, not the code value or the label. In future releases it will be made possible to also send the code value.

Please read this documentation before its project specific use.

The study project PITTER consists of one sections or DCD: 

  • Main registration form

On the following pages we explain how to submit data for PITTER using the HD4DP v2 S2S API for each section.

This documentation is being updated regularly. We try to provide as correct, complete and clear as possible information on these pages. Nevertheless, if you see anything in the documentation that is not correct, does not match your experience or requires further clarification, please create a request (type : request for information) via our portal (https://sciensano.service-now.com/sp) or send us an e-mail via support.healthdata@sciensano.be to report this documentation issue. Please, do not forget to mention the URL or web address of the page with the documentation issue. We will then adjust the documentation as soon as possible. Thank you!

Adelaide.DAmore

S2S API for PITTER

S2S API for PITTER

Documentation for System 2 System API on Architecture 2.0

Description of the service

API is the acronym for Application Programming Interface, which is a software intermediary that allows two applications to talk to each other.

In this case, the API is used to have the system of the Data Providers communicate with the system of HealthData.

The S2S API is a unified API that will allow clients (Data Providers) to submit DCDs data to HD4DP2.0 in fully automated way.

End point information (per DCD) + examples

APIResponseNotes
/api/organizationsList of organizations. Client
must select the right
organizationId
Current existing end-point is:
/api/installation/organizations

We’ll create this new end-point with a
different signature re-routing the call to
this existing one or we will refactor the
existing one to this new signature.
/api/dcd/menu/structure?
organization-id={organizationId}
List of projects of the given
organization, dcds of each project, dcdVersions of each dcd in a JSON format
Client can get dcdId and dcdVersionId
(optional) which are needed on following API calls.
/api/dcd/payload/definition? 
dcd-id={dcdId}; 
<optional>version={version}; 
<optional>language-id={languageId} 
List of all the fields of the form as well as their corresponding data-types that are allowed in the json data structure for the  Payload   This field names values are the key properties in the formIO json config form. When we implement this new api end-point, we need to parse the json content in order to get the key properties. Given these field keys, we’ll get each field definition from new API end-points helpers: 
 
/api/dcd/field?field-id={fieldId} 
/api/dcd/codelist?codelist-id={codelistId} 
 
These ones are described in the next table. 
 
<optional parameter> version={version} : If this parameter is not provided, latest one is assumed 
 
<optional parameter> language-id = {languageId} : language id for the code_list example results. If this parameter is not provided, default language will be English. Current permitted values: 
en: English 
nl: Dutch 
fr: French 
 
Client must build this json object as the payload data to be sent based on this list of fields, on the last api call 
/api/dcd/payload/example?dcd-id={dcdId}; 
<optional>version={version} 
Example of payload in JSON format Providing this API end-point in order to help the Client on the Payload build with an example 
 
<optional parameter> version={version} : If this parameter is not provided, latest one is assumed 
/api/dcd/payload/submit? 
organization-id={organizationId}; 
dcd-id={dcdId}; 
<optional>version={version}; 
<optional>data-src-type={dataSrcType}; 
 
POST Payload 
 
/api/dcd/payload/submit? 
organization-id={organizationId}; 
dcd-id={dcdId}; 
<optional>version={version}; 
<optional>data-src-type={dataSrcType}; 
 
POST Payload 
 
Some implementation tasks is needed in here in order to return the result info (either succeed or failed).  
Similar like the one in HDConnectProxyRestTemplate.postCsv method, and the CsvExecutionResult object build. 
 
<optional parameter> version={version} : If this parameter is not provided, latest one is assumed. 
 
<optional parameter> data-src-type={dataSrcType} :  
permitted values:  
API 
CSV 
If this parameter is not provided, default values is <HD4DP>. 
api/dcd/submit?organization-id={organizationtId};dcd-id={dcd-id};<optional>dcd-version-id={dcdVersionId};<optional>incl-submit-data={inclSubmitData}; <optional>incl-submit-results={inclSubmitResults}; 
GET method 
 
List of submitted dcds data and/or their corresponding business keys or validation errors.  
 
<optional parameter> dcd-version-id={dcdVersionId} : If this parameter is not provided, lastest one is assumed 
 
<optional parameter> incl-submit-data={inclSubmitData} : If this parameter is not provided, default values is <false> 
 
<optional parameter> incl-submit-results={inclSubmitResults} : If this parameter is not provided, default values is <true> 
 

HOW TO: Upload data using System 2 System

Steps To Upload data

1. IT services of data providers must setup their systems to be able to communicate with HD4DP v2 System 2 System API

A prerequisite to be able to use the Health Data's System 2 System API, is that the IT services of the hospitals must have the following in place before the systems can communicate:

  • The endpoint/URL is protected by credentials for which the support services need to be contacted.
  • End-to-end API process to submit DCD registrations in a fully automated manner.
  • Support for searching submitted DCD registrations.

2. Prepare the JSON file (example file in this section)

To send DCD registrations to Health Data, the file must be in a .json file format.

  • At the Data Provider's side, we must foresee a way to extract the JSON file from the electronic patient files and/or other local databases.
  • Author group, Author and Coauthor:
    • When the Author group, Author and Coauthor has been left out in the json file, the default Author group, Author and Coauthor will be used automatically.
    • When the desired Author group, Author and Coauthor are specified in the json file, the following fields TX_AUTHOR_GR, TX_AUTHOR and TX_COAUTHOR must be added to the json file with their values respectively.
      Example:
"TX_AUTHOR_GR": "Author Group",
"TX_AUTHOR": "author@example.com",
"TX_COAUTHOR": "coauthor@example.com",

Note:
The Author group, Author and Coauthor must exist and are well configured at the back-end of the system. TX_AUTHOR_GR can be a string that identifies the Author group to which this Author belongs. Commonly, the first name and last name are used to identify the TX_AUTHOR_GROUP. Be sure to avoid leading and trailing spaces when entering the Author group value.

  • Make sure the name of the JSON file has the correct format:
    HD_DCD_submjson_HDBPnumber_HDBPabbreviation_versionnumber_versionreleasedate

So for PITTER - Main registration the format would be : HD_DCD_subjson_HDBP0078_PITTER_03_20230508.json

EXAMPLES:

Disclaimer: The example files above are only provided as a guideline and do not contain real life data.

3. Uploading the JSON File

  • The IT department of the Data Provider must provide a manner in their system to send the API requests containing DCD registrations in a JSON file format, the correct end-points must be addressed.
  • In this case the end-point to upload the json file will be:

4. Validate the JSON Upload

4.1 Validation of the S2S API Upload via the response:

Verify in the same way the request was sent, that the returned response is containing a valid Business key.

If a valid Business key has been provided, the registration upload via System 2 System API was succesful.

4.2 Validation of the System 2 System API via HD4DP 2.0:

Step 1: Open the web application HD4DP 2.0.

Step 2: Select the concerned organization in the dropdown list and click on Volgende (Next)

Step 3: Fill in the username and password, that has been provided by your IT Department or Healthdata team, and click on Log in to access the HD4DP 2.0 application.

Step 4: Navigate in the menu on the left-hand side panel to the desired study program:

<Screenshot of the menu item on the left-hand side panel>

Step 5: Check that the uploaded registration(s) is/are displayed in the overview table:

<Screenshot of registration on right-hand side panel>

Adelaide.DAmore

HD4DP v2 CSV Upload

HD4DP v2 CSV Upload

The CSV upload functionality enables the import of multiple parameters from a set of patients in one go into HD4DP2.0. The CSV file is based on an extract of the electronic patient files and/or other local databases.

Currently there is no user interface in HD4DP2.0 for the upload of CSV files. If a data provider wants to upload a CSV file, it has to be dropped at a specific location. These files will be picked up and processed periodically. The files should be “final”, meaning that no application is writing to them. The pick-up location will be identical for all registries.
Pre-registry handling will be based on a naming convention of the CSV file.

Refer to the page(s) hereunder for DCD specific CSV Upload documentation.

Adelaide.DAmore

CSV Upload for PITTER

CSV Upload for PITTER

Documentation for CSV Upload on Architecture 2.0

Description of the service

The CSV Upload functionality gives the possibility to import multiple parameters from a set of patients in one time into HD4DP 2.0. The csv file is based on an extract of the electronic patient files and/or other local databases.

Currently there is no user interface in HD4DP 2.0 for uploading csv files. If a data provider wants to upload a csv file, the file has to be dropped at a specific location. These files will be picked up and processed periodically. The files should be “final”, meaning that no application is writing to them. The pick-up location will be identical for all registries.
Pre-registry handling will be based on a naming-convention of the csv file.

HOW TO: Upload data using CSV Upload

Steps To Upload data

1. Prepare the csv file (example file in this section)

  • Extract the csv file from the electronic patient files and/or other local databases.
  • Author group, Author and Coauthor:
    • When the Author Group, Author and Coauthor have been left out in the csv file, the default Author group, Author and Coauthor will be used automatically.
    • When the desired Author Group, Author and Coauthor are specified in the csv file, the following headers TX_AUTHOR_GR, TX_AUTHOR and TX_COAUTHOR must be added to the csv file with their values respectively.
      Example:
TX_AUTHOR_GR;TX_AUTHOR;TX_COAUTHOR Author Group;author@example.com;coauthor@example.com

Note:
The Author group, Author and Coauthor must exist and are well configured at the back-end of the system. TX_AUTHOR_GR can be a string that identifies the Author group to which this Author belongs. Commonly, the first name and last name are used to identify the TX_AUTHOR_GROUP. Be sure to avoid leading and trailing spaces when entering the Author group value.

  • Similarly, add the filename 'STATUS' in an additional column. Add the value 'draft' in case a manual submission of the record is requested.
    If not, the record will be submitted without manual intervention.
  • Make sure the name of the CSV file has the correct format:
    HD_DCD_submcsv_HDBPnumber_HDBPabbreviation_versionnumber_versionreleasedate

So for PITTER - Main registration the format would be : HD_DCD_submcsv_HDBP0078_PITTER_03_20230508.csv

EXAMPLES:

Disclaimer: The example files above are only provided as a guideline and do not contain real life data.

2. Uploading the csv file

Step 1: Open the sftp tool like WinSCP

Step 2: Get the credentials (Host name, Port number, User name and Password) from the IT department of the Data Provider, to log on to the sftp server located on the Data Provider side.

Step 3: Fill in the credentials into the Login screen and click on Login to be able to access the different upload folders:

Note: a warning might be given, just click on Update

Now the CSV Upload folder structure is displayed on the right-hand side panel:

Step 4: Select the project folder <project folder name> and open it by double-clicking on it:

<Screenshot of Project with DCD folders>

Step 5: Double-click on the DCD folder to open it:

<Screenshot of DCD folders>

Step 6: Now go to the folder on the left-hand side panel where the csv file to be uploaded is located:

<Screenshot of DCD folders>

Step 7: Drag the csv file to be uploaded from the left-hand side panel into the folder on the right-hand side panel:

<Screenshot of file on right-hand side panel>

Step 8: Wait until the polling system of the CSV Uploader has picked up the CSV file and has processed it.
Once the csv file has been processed it will disappear from the folder, when we refresh the page manually!

<Screenshot of DCD folder where the file has disappeared after a refresh>

3. Validate csv upload

Once the csv file has been processed 3 folders will be created (if they haven't been created already) in the DCD folder:

  • ARCHIVE (after a csv file has been processed, the original csv file will be saved in this folder)
  • RESULT (when the csv file is placed in this folder, it means that the csv file has been processed, a file will be created or (or appended, if the file already existed) with the result of the upload of the csv file).
    All the errors that are described in this file are business related, which means that they are technically correct, but in violation with the business rules or contain wrong values for that field.
  • ERROR (when the csv file is placed in this folder, it means that a technical error has occurred like the csv file contained erroneous formatting. The csv file won't get processed and an error file will be created with the errors and reason why the csv file couldn't be processed)

3.1 Validation of the csv upload via sftp tool:

Step 1: Double-click on the ERROR folder to open it, click on the refresh button and verify that there is no error file present.

Step 2: Return to the DCD folder. Now double-click on the RESULT folder to open it, click on the refresh button and verify that the result file is present.

Step 3: Double-click on the result file to open it.

<Screenshot of result file of the DCD>

Step 4: If there are multiple records in the result file, scroll to the entry of the current csv upload by looking at the upload date (Started at dd/mm/yyyy hh:mm).
Verify the result file that the upload was successful by searching for the word SUCCESS and having a look at the Status. This Status must contain: Success;Success Count:1;Error Count:0

<Screenshot of result file of the DCD>

3.2 Validation of the csv upload via HD4DP 2.0:

Step 1: Open the web application HD4DP 2.0.

Step 2: Select the concerned organization in the dropdown list and click on Volgende (Next)

Step 3: Fill in the username and password, that has been provided by your IT Department or Healthdata team, and click on Log in to access the HD4DP 2.0 application.

Step 4: Navigate in the menu on the left-hand side panel to the desired study program:

<Screenshot of menu navigation to the DCD>

Step 5: Check that the uploaded registration(s) is/are displayed in the overview table.

<Screenshot of DCD Overview screen>

Adelaide.DAmore

Retrieve PITTER data from the local database of HD4DP v2

Retrieve PITTER data from the local database of HD4DP v2

Warning

The person with the login for the local database of "HD4DP v2 local" has access to all the data stored in the database. This means that the personal data of the patients will be VISIBLE to that user.

Requirements

URL Local DWH Database: postgresql://<server_ip>:5432/localdwh. If this is not the case, the IT department hosting HD4DP v2 needs to open the port and allow traffic to this port.

URL NIPPIN Database: postgresql://<server_ip>:5432/nippin

Username/Password: The service desk of healthdata.be will forward, via a secure link, the username and password.

Client: Download one of the clients that support PostgreSQL . A list is available here.

"data_collection_name" in local database

  • "data_collection_name" =

Query examples

With the "data_collection_name" and the following information, you will be able to link multiple tables with each other.

  • local_dwhmessage_key_value: Key value table with more information about the registration
  • msg_document_id: document id of your message located in local_dwhmessage table
  • document_id: document id of your registration
  • local_dwhmessage: table where you can find all the registrations
  • local_dwhmessage_key_value_plus: Extra table to define attribute type and value of a key value
  • key_value_id: Key value id linked to the id of the local_dwh_message_key_value
  • local_dwhmessage_key_value:

"local_dwhmessage_key_value" column "msg_document_id" refer to the "document_id" of "local_dwhmessage".

"local_dwhmessage_key_value_plus" column "key_value_id" refer to the id of "local_dwhmessage_key_value".

Query 1: Get all registrations from the last 15 days.

SELECT * from local_dwhmessage WHERE data_collection_name = 'add data_collection_name' and created_on > current_date - interval '15' day;

Query 2: Get all registrations and key value.

SELECT * from local_dwhmessage as ldm left join local_dwhmessage_key_value as ldmkv on ldmkv.msg_document_id = ldm.document_id WHERE ldm.data_collection_name = 'add data_collection_name';

Query 3: Get all registrations, key value and key value plus from.

SELECT * from local_dwhmessage as ldm left join local_dwhmessage_key_value as ldmkv on ldmkv.msg_document_id = ldm.document_id left join local_dwhmessage_key_value_plus as ldmkvp on ldmkvp.key_value_id = ldmkv.id WHERE ldm.data_collection_name = 'add data_collection_name';

This documentation is under construction. We try to provide as correct, complete and clear as possible information on these pages. Nevertheless, if you see anything in the documentation that is not correct, does not match your experience or requires further clarification, please send us an email via support.healthdata@sciensano.be to report this documentation issue. Please, do not forget to mention the URL or web address of the page with the documentation issue. We will then adjust the documentation as soon as possible. Thank you!
Bart.Servaes

HD4DP v2 Online Acceptance Environment

HD4DP v2 Online Acceptance Environment

Introduction

To support development and validation of data transfers using S2S API or CSV upload, a central Online Acceptance Environment is available for the IT services or IT partners of data providers. It is meant to replace the locally installed acceptance environments at the side of the data providers. With the Online Acceptance Environment the three types of data transfer can be tested and validated: data transfer via an API platform, via an SFTP client and via manual input in the study form.

In order to keep the acceptance environment light, it is redeployed once a week, deleting all data that were entered for testing. The data are stored locally and will not be sent to Healthdata.be infrastructure. The testing is limited to the upload to the HD4DP v2 application.

Application URLs and port

Navigate to and access the Online Acceptance Environment

The Online Acceptance Environment can be found on https://hd4dp.acceptance.healthdata.be, which is a publically accessible URL.

On the homepage you are requested to select your organization from the drop-down list in order to proceed.

Log in with the credentials you have received upon request. The username is test@sciensano.be for all users.

Since the list of organizations to choose from is limited, you might not find your organization in it. In that case we advise you to request your credentials through our service portal at https://sciensano.service-now.com/sp via the Request something tab and subsequently the Request for Information box.

When requesting an account for this acceptance environment you will receive 3 types of credentials:
⦁ credentials to log in to the front end of the online acceptance environment
⦁ credentials to use the API (-> authorization tab in Postman)
⦁ credentials for the SFTP server you use to test the CSV Upload

Once logged in, the layout looks very familiar: to the left you will find the navigation panel with all running projects and projects that have passed the user acceptance testing (UAT) phase. Note that the list of projects featuring in our Online Acceptance Environment is not filtered out for the organization you have selected.

The data transfer methods

As mentioned above, the Online Acceptance Environment enables the testing of the uploads for the following three types of data transfer. They are described in order of preference underneath:

Data transfer via an API platform

The data are extracted directly from the EPD systems and sent to HD4DP v2 local using S2S API before they are sent to healthdata.be. This transfer method requires the use of an API development platform, such as Postman (freely available).

The endpoint (URL) to send your payload to for testing is

https://hd4dp.acceptance.healthdata.be/proxy/api/dcd/payload/submit

This endpoint is to be completed with some parameters, such as the ID of an organization, the ID of a dcd, the version number:

https://hd4dp.acceptance.healthdata.be/proxy/api/dcd/payload/submit?organization-id=6&dcd-id=18&Version=1

Click on the Send button to post the payload. A succesful submission is indicated with the status message “202 Accepted”. This can also be checked visually in the front end of the Online Acceptance Environment.

The field Data source in the top selection bar indicates whether the data were transferred via S2S API, CSV Upload or manually with HD4DP.

In the production environment records sent through API are sent directly to the healthdata.be infrastructure (status “Submitted” in the Progress field).

Next to posting payloads (POST) you can also retrieve information (GET). Examples of such "calls":

  • The call https://hd4dp.acceptance.healthdata.be/proxy/api/organization (see below) will return an organization id:
  • The call https://hd4dp.acceptance.healthdata.be/proxy/api/dcd/menu/structure?organization-id=6 (see below) will return the menu structure with all projects your organization is registered for.

More information about the API data transfer can be found at https://docs.healthdata.be/documentation/hd4dp-v2-health-data-data-providers/hd4dp-v2-s2s-api

Data transfer via an SFTP client

The csv upload is the second type of data transfer. The data are transferred to an SFTP server and subsequently picked up by the healthdata.be system. This transfer method requires the use of an SFTP client, such as WinSCP (freely available).

When logging in to WinSCP, you will need to navigate to the correct csv folder : csv/<project>/<dcd>. Here you need to drag and drop the csv you want to upload from the left panel to the right panel. The CSV file will now be picked up by the polling system of the CSV Uploader, which checks for new CSV files every minute.

The folders Archive and Result will only be created after the first CSV file has been uploaded for testing.

The Result folder shows a log file containing CSV Upload reports. The status Error Count shows technical errors such as incorrect name, code …

CSV files that were uploaded in Architecure 1 can be reused in Architecture 2. Prerequisite for this is the addition of necessary fields that are typical for Architecture 2, e.g.:

  • Author Group (TX_AUTHOR_GR)
  • Author (TX_AUTHOR)
  • Coauthor (TX_COAUTHOR).

To further facilitate the process of reusing CSV files a mapping table with old and new CSV names is provided.

Next to adding fields, you can also leave out fields, which is indicated in the log file reports as a warning.

Once again the back-end process can be checked in the study forms on the front-end interface. You want to refresh the window to update to the newest status.

More information about the CSV data transfer can be found at https://docs.healthdata.be/documentation/hd4dp-v2-health-data-data-providers/hd4dp-v2-csv-upload.

Manual input in the study form

The third data transfer method is the form entry, carried out manually. For this you can use a common browser such as Google Chrome. This method can also be used to validate data sent via S2S API or CSV Upload.

Bart.Servaes

Requesting access

Requesting access

A request for access to the online acceptance environment will be made available in the Entity Access Management tool available via eam.healthdata.be. See also https://docs.healthdata.be/EAM

This feature is foreseen to be added to the EAM portal during the summer of 2023. In the meantime or when the EAM portal should be unavailable, you can use the service portal to request access to the online acceptance environment by creating an incident and clearly mentioning you are an IT Department or IT partner of a data provider requesting access to the online acceptance environment.

More information on how to create an incident in the service portal is available on https://docs.healthdata.be/documentation/hd4dp-v2-health-data-data-providers/how-report-incident

You will receive 3 types of credentials:

  • Credentials for the HD4DP2 web form application.
  • Credentials for the API data transfer.
  • Credentials for the SFTP server to upload CSV files.
Bart.Servaes

MongoDb Postgres Backup Restore & Retention

MongoDb Postgres Backup Restore & Retention

To make sure the data is persistent on both Healthdata (HD) and data provider (DP) side the backup plan was confirmed and developed and tested as well, the postgres and the Mongodb will be taken the whole backup on the daily basis, this will be taken care of the timer-service that has been recently introduced.

Last 30 days Backup will be kept in the same server share or in the local path, to enable the backup we have introduced the new ansible role called “mongo-postgres-backup”, and to invoke the backup option the following variables needs to be defined on the “Host_var” file on hd-inventory to the specific deployment.

Enabling the backup part on the target server: As soon as the ansible role added to the respective playbook and the above backup type added to the hd-inventory host vars to the main/master branch, this can be enabled automatically on the hd-updater daily run or manually triggering the hd-updater on the target side server.

  1. When DP do not have the external share, then it is better to keep the backup of the postgres-mongodb dumps, on different directory on the same server. To enable this backup type, we must add the below variable on to the respective host-vars in the hd-inventory.

backup_mount_type: "VmBackup"

----Default backup path is "/hd4dp-backup"

2. When DP do not have both external share and Vm backup , then it is better to keep backup of the postgres-mongodb dumps, on different directory on the same server. To enable this backup type, we have to add the below variable on to the respective host-vars in the hd-inventory.

backup_mount_type : "local"

local_mount_path : /tmpBackup

3. When DP have External share (samba) then the below variable needs to be added to the respective hd-inventory host_var file.

backup_mount_type: "samba"

backup_mount_type: “samba”

samba_bkup_username: “user_name”

samba_bkup_domain: “example.com”

4. When DP provides External share (nfs) then the below variable needs to be added to the respective hd-inventory host_var file.

backup_mount_type: "nfs"

nfs_bkup_src: "0.0.0.0:/nfs/mount-share"

----Default backup path is "/hd4dp-backup"

Restore:

AS of the agreed approach is to restore the backup-dump manually by using the retention-script (restore_mongodb.sh & restore_postgresdb.sh) it can be found on the target server “/opt/hd-all/hd-backup”, by default it will restore the latest backup but if we wish to restore the particular date back this can be given as a input parameter refer below.

Restore Script Path on the target serever:

/opt/hd-all/hd-backup

Mongo Restore Input param:

"Provide bkp file with full path name for restore e.g. ${local_mount_path}/hd4dp-backup/mongodbBackup/mongo-20220510_2004.tar.gz" & ) to the script.

Mongo restore script:

restore_mongodb.sh

Postrges restore input Param:

"Provide bkp file with fullpath name for pg_wal restore e.g. ${local_mount_path}/hd4dp-backup/postgresBackup/pg_wal_latest.tar.gz"

“Provide bkp file with fullpath name for pg_wal restore e.g. {local_mount_path}/hd4dp-backup/postgresBackup/base_latest.tar.gz

Postgres restore script:

restore_postgresdb.sh

Note:

The postgres backup service timer will be scheduled by 15:00 aprox, the Mongodb backup service timer will be scheduled by 22:00, backup retention will perform few basic checks ex it will check if the space is sufficient to store the current day backup.

Adelaide.DAmore

Apache Superset

Apache Superset

The person with the login can see all the data stored in the database. This means the personal data of the patient is VISIBLE to that user.

Superset

Sciensano uses Apache Superset to provide the Data provider with a user-friendly UI for data exploration and visualization from the Local DWH database. Superset allows the user to export data into a CSV, and create their own queries, …

Prerequirements

URL: https://superset.<domain> or http://<ip>:3030 is available. If this is not the case, your IT department needs to open the port or add the domain to the DNS server.

Username/Password: Our Servicedesk will forward, via a secure link, the username and password.

Login

Superset is available on the local installation via the URL: https://superset.<domain> or via http://<ip>:3030.

Use the credentials provided by the servicedesk of Healthdata.

Login page

Home page

The first time you login to the application, an empty home folder will be shown. The more you use the application, the more tiles will be shown in your home dashoard. You see multiple subcategories like Favorite, Mine and Examples.

Favorite will show all the Dashboards, Charts or Queries you marked as a favorite.

Mine will show all the Dashboards, Charts or Queries you have created.

Examples leave it as is. You don't need to use this.

Home page(empty)
Home page with 1 favorite

Dashboards

Dashboards are created under the dashboard menu (on the top menu). A list of shared and personal dashboard will be visible.

Default the dashboard Local DWH will be visible at first login.

Dashboard overview page

Local DWH

The local DWH dashboard will provide you a dashboard with some information on how particular features are working inside Superset and an option to show registrations based on the data collection name.

Remark: if you are not able to see the Filters column, click on the "wifi" icon or arrow on the left side of your screen.

"wifi" icon
Information page of the Local DWH dashboard

Under the Data tab you will see 3 tables that are empty. With the filter (on the left side), you need to select what you want to see. You can select more Data collection at once and click on Apply FILTERS (bottom of the page).

Select data collection names

After applying the filter, the data is now visible.

Example with test data

You can easily download each table by clicking on the 3 dots next to the filter icon in table:

Table options

A zip file will be created with the data provided in the table.

Remark: only the last 10000 records will be visible in the table. Downloading a higher amount of data can be done via the SQL Lab editor.

SQL Editor

The SQL Editor allows you to run your own query on the database.

Go to SQL Lab > SQL editor

SQL editor

On the left side you can choose the database, the schema and the table.

Database Local DWH is the database you want to use. Use the Public schema and select one of the tables. You can choose between local_dwhmessage, local_dwhmessage_key_value and local_dwhmessage_key_value_plus.

Example of the local_dwhmessage with a preview of the data

The preview of the data is something you are not able to export. You still need to write your own query before you can export data from the database. You can limit the number of records (with a max of 100 000 records at once). After running your query, the button DOWNLOAD TO CSV will become available.

Remark: you can save your query by clicking on SAVE AS. With a proper name and description you can easily find the query back in you home or under SQL LAB > Saved Queries.

Example query

Query examples

With the following information, you will be able to link multiple tables with eachother.

local_dwhmessage_key_value column msg_document_id refer to the document_id of local_dwhmessage.

local_dwhmessage_key_value_plus column key_value_id refer to the id of local_dwhmessage_key_value.

Query 1: Get all registrations from Orthopride Knee resection from the last 15 days.

SELECT * from local_dwhmessage WHERE data_collection_name = 'OP_KNEE_RESEC' and created_on > current_date - interval '15' day;

Query 2: Get all registrations and key value from Orthopride Knee resection.

SELECT * from local_dwhmessage as ldm left join local_dwhmessage_key_value as ldmkv on ldmkv.msg_document_id = ldm.document_id WHERE data_collection_name = 'OP_KNEE_RESEC';

Query 3: Get all registrations, key value and key value plus from Orthopride Knee resection.

SELECT * from local_dwhmessage as ldm left join local_dwhmessage_key_value as ldmkv on ldmkv.msg_document_id = ldm.document_id left join local_dwhmessage_key_value_plus as ldmkvp on ldmkvp.key_value_id = ldmkv.id WHERE data_collection_name = 'OP_KNEE_RESEC';

Bart.Servaes

Support Service of healthdata.be

Support Service of healthdata.be

The Service Desk of healthdata.be (Sciensano) helps users of our applications and services and deals with requests and problems when they arise.

The Service Desk focuses on those services run by our IT Services (HD4DP, HD4RES, healthstat.be,...) and helps you with accounts and passwords. For questions about the content and objective(s) of the projects, we kindly refer to the managing research organizations.

For most efficient processing of your request, we advise you to use our service portal: https://sciensano.service-now.com/sp.

Please find below our support window hours:

johanvanbussel

How to report an incident

How to report an incident

TEST2

The healthdata.be service (Sciensano) processes each incident report according to a standard operating procedure (SOP). A public version of this SOP "HD Incident Management Process" is also available on this portal docs.healthdata.be.

To submit an incident related to projects and applications in production and facilitated or managed by Sciensano's healthdata.be service, you must first log into the HD Service and Support portal: https://sciensano.service-now.com/sp

After the login step, you will arrive at the main page of the portal.

On the main page, you must select "Get Help".

A new page with the title "Create an incident" will appear.

You can now document your incident or problem by providing the following information:
Please indicate the urgency of resolving your issue based on its criticality to the business.

Please indicate the type of problem you are experiencing.

When the problem type "Application" is selected, two additional fields appear: "Project Name" and "Application".

Please select the appropriate information.

Please describe clearly and briefly (1 sentence) the subject of your problem.

Please describe the problem in detail. The following aspects are important for us to understand and solve the problem:

  • a description of the actions you want to perform but fail to perform (e.g. provide us with a field name, a validation rule, a button, etc.)
  • a description (if possible) of the sequential steps you follow to use the service or the application of healthdata.be for which you need support;
  • a brief description of the technical problem you are experiencing (e.g. error messages)

We strongly recommend that you add a screenshot describing the problem (IMPORTANT: do not provide us with patient data!).

You can add the screenshot by clicking on "Add attachments".

On the right side of the form, the mandatory information items of the incident form are listed. When these fields are completed, their names disappear from the "required information" box.

The form can only be submitted if all required fields are filled in, by pressing the green "Submit" button.

If all required fields have not been completed, a warning message will appear at the top of the form.

In addition, missing mandatory fields will be highlighted in green.

When the incident form has been successfully submitted, a preview of your submission appears in a new screen.

On the right side of the screen you will find the details, including the incident number.

On the left side of the screen, you will find a chronology of your incident processing, starting with your creation.

johanvanbussel

Archived

Archived

Amongst other information, this section contains Architecture 1.0 components after migration.

Adelaide.DAmore