Atmoforms Release Note v3.04

Version 3.04 Latest Features and Functionality

This document describes the additions and changes in functionality to Atmoforms in version 3.04 of the software. This release note describes changes to Atmoforms since V3.03.

A note about terminology

Atmoforms enables organisations to set the terminology used in the application to what they are most familiar with. For example, one organisation’s patients, admissions and reports may be another organisation’s service users, involvements and explorations. Your organisation might use different terminology in their implementation of Atmoforms. In these release notes, we’ve used the terminology patients, admissions/visits and reports throughout.

2 Large datasets form type introduced

Forms of type “Large Data” (introduced in Builder 2.18) can be imported into Atmoforms, the instances of which will be grouped together according the values in the “Large Data Grouping” question on the form.

On the service user Summary tab, the “Total Forms” panel now shows the number of large data groups as Results & Procedures.

When the Total Forms Overview modal is opened, a new tab is shown for Results & Procedures listing the large data groups in a sortable table.

A new Results & Procedures tab has also been added to the service user page showing the same list as in the Total Forms Overview. Clicking on a group will open it using the processor assigned to the form definition in Management (see Form definition processors sections below).

The term “Results & Procedures” is also a configurable in the Admin page.

Form definition processors

Each large data form definition has an associated “processor”, assigned in the Management part of the website. The assigned processor determines how the grouped form instances will be shown when the group is clicked in the “Results & Procedures” tab for the service user. Users without Management access will never see the names of the processors.

The following processors have been implemented:

Table (Form edit enabled)

This processor will display the grouped form instances in a table. The table has a fixed header containing columns for each of the questions in the form definition. This can be scrolled horizontally when there are more questions on the form than would otherwise fit in the table. There is also a fixed first column containing the row number and a button to allow for editing the contents of the rows.

The table can show many thousands of rows without browser performance issues. It achieves this by only rendering in the browser the rows that are currently visible and only loading/rendering the newly visible rows when the user has stopped scrolling.

When there are more than 100 rows, a section will be shown above the table with the following controls:

  • “Show open records only” - this is a toggle which will filter the rows down to only those where changes have been made but which have not yet been “saved for reporting” (these rows can be identified by the blue highlighted edit button next to the row number).

  • “Restrict from row … to …” - this allows filtering the set of rows down to a range of row numbers and can aid scrolling down the table with the scrollbar when there are hundreds or thousands of rows.
  • “Showing rows from … of …” - this allows scrolling instantly to a given row number. The row number in the field also updates in real-time as the user scrolls down the table, which can help the user see where they are scrolling to before the rows have rendered.

When the edit button of a row is clicked, a modal will appear with the row contents laid out as an HTML form. Any changes that are made will automatically be saved as soon as the field value changes. The modal can be closed by clicking the “Close” button, leaving the instance open and in “Draft” form. Or the changes can be saved for reporting by clicking the blue button, thereby closing the form instance.

TMI dosimetric data processor

This processor is intended for use with large data forms which have the Large Data Attachment question (i.e. the “Has graphable attachment” toggle in the form properties in Builder has been switched on).

Each instance of the form will have a JSON attachment representing the series in a chart associated with that form instance. The grouped form instances will be shown in a single page with a chart at the top containing each of the JSON series, and a table underneath with the corresponding form instance data.

The chart is capable of representing many thousands of individual points per series. Performance may vary and will be dependent upon multiple factors, including the resources available to users’ browsers.

The series are colour coded, with a legend on the right hand side. The legend allows the user to see all the series at once (the default view), just one series at a time, or any combination of series at the same time.

As the user moves the mouse cursor over the series, a tooltip will show the values for the data point at that location, and if the user clicks and drags a box somewhere within the chart, they can zoom in and interrogate the data points more closely.

The table below the chart is of similar design to the one in the “Table (Form edit enabled)” processor, only without the editing capability.

Bug fixes

Area of software Description of fix
Mediator Resolved issue where bulk load errors in the logs and fails to complete correctly when a patients SourceSystemId is NULL in Face.Patients
Mediator Open Other Personal Details instances are now closed when running a top-up load that adds a new instance of that OPD form. 
Forms Added support for handling tabbing out of a multi-line text field at the end of a table row: If the text field is not in the last row, tabbing will take the user to the first item of the next row; If the text field is in the last row, tabbing will take the user to the Add Row button for the table.
Forms Nested checkboxes now display correctly in subforms. The parent question is no longer hidden upon save.
Forms/Calculations DateDiff calculations now return decimal results to the correct number of decimal places, rather than ignoring rounding and truncating to 0dp.
Forms/Calculations Calculations with a drop-down list output mapping now correctly show the mapped answer option term text in view mode of a form, rather than NaN.
Forms Adjusted the front-end validation to account for a change in the precision which is stored in the database to prevent 500 internal server error and numeric field validation failing to display when entering any value too large to store (>13 integer figures).
Homepage Re-added padding to one of the panels on the staff dashboard to prevent missing panels display issue. 
Service User Registry Events Registry events modal now shows the selected form name even when there is no form data for that event.
Form Groups Reordering forms within a form group no longer occasionally causes items to disappear from the list.
Large Data Changes to form validation including support for minimum/maximum date constraints  on date fields, and the maximum length constraint on text fields, to prevent error when entering a number that is too long in a number field.