Guidance on importing into the new webtool is available below.
Importing tips
1 | Inpatient teams can only import records for patients directly admitted to their team. |
2 | Make sure to use the most updated import specification. The import specification can be found here. |
3 |
Populate the ImportIdentifier field with your unique import identifier. It is essential that you include an ImportIdentifier for each patient record. Do not use the ImportID field. |
4 |
Ensure that the team code for the team you wish to import data into is recorded in the SiteCode column in your import file. If this is not included the import will not be successful. You can only import for one team at a time and so this code should be the same for all records in a single file. |
5 | If you wish to update a record that you have previously imported please select 'Update records (Non empty values only)' and 'Match by import identifier'. Records are matched based on ImportIdentifier. |
6 | Selecting 'Replace records' and 'Match by import identifier' will replace all data in a record. If any fields are not included in the import file or are blank, this data will be cleared from the record. |
7 |
You are not able to import into parts of the record that have been locked. If you wish to update data in a locked section, please request an unlock. For guidance on unlocking records please see here. |
8 | You are not able to import into a record that has been transferred to another team. If you wish to update data in a transferred record, please request for the record to be revoked. For guidance on revoking records please see here. |
Accessing the import screen
- Select the team you wish to import into
2. Select the ‘Stroke dataset’ under the search bar
3. Select ‘Import’ along the menu bar. ‘Import’ will not be available if you are in the Inpatient, TIA or Other datasets.
Access to the import screen has been granted to those who previously had access on the old webtool. If you do not have access and require this, then please email ssnap@kcl.ac.uk.
Import file
Please make sure to use the most updated import specification. The import specification can be found here.
Ensure that the team code for the team you wish to import data into is recorded in the SiteCode column in your import file. If this is not included the import will not be successful. You can only import for one team at a time and so this code should be the same for all records in a single file.
For the best results and to best identify any errors within an import please make sure the import file contains ALL fields marked as an Import column within the SSNAP import specification. The fields do not have to be populated in the import file.
Please populate the ImportIdentifier field with your unique import identifier. It is essential that you include an ImportIdentifier for each patient record. Do not use the ImportID field.
ImportIdentifier
The ImportIdentifier can be set up as any value, including numeric and alphabetic values. The ImportIdentifier must be different for each patient record – if the same ImportIdentifier is used the webtool will treat this as a change to an existing record. The ImportIdentifier cannot be a patient identifier, so it must not include name or NHS number. We would recommend that once records have been imported, that the Patient Audit Number (S01PatientId) assigned to the record is recorded in your local system against the ImportIdentifier. The SSNAP helpdesk team will refer to patient records using the Patient Audit Number assigned by the webtool rather than the ImportIdentifier.
Do not use the ImportID field.
Performing an import
On the import screen select ‘Choose file’ and locate your desired import file. The contents of the file are then shown on the import screen. Green signifies the cell contains an accepted value and orange that the cell contains a value that is not accepted. In cases where the question cannot be blank, orange will also indicate a blank cell.
The default selection on the import screen is “Test import”. Running a test import will allow you to identify any serious errors with the import before you proceed to import the data into the webtool. When you are ready to run the test press “Import” and the file will be processed.
Errors are shown in the final column on the import screen. Types of errors you may encounter are listed at the end of this article. You will also receive a processing email with this information once an import has been completed (including test imports). The website shows the question number the error relates to, however the processing email shows the full field name. The processing email reports errors and import status against the ImportIdentifier.
If you are happy with the outcome of the test import then you can proceed to import the data.
To import the data, we recommend that you select Ignore errors for the Import method. This allows the importing of partially complete records, e.g. records that may only be complete for the first 72 hours. If “Ignore errors” is not selected then partially completed records will not be imported as missing data shows as the field being “Required”. This does mean that all errors are ignored, including validation errors, however these are highlighted in the error log and the record itself. If you run a test import first these errors can be amended before proceeding.
After Ignore errors has been selected press “Import” and the file will be processed.
Import options
If you wish to update a record that you have previously imported please select 'Update records (Non empty values only)' and 'Match by import identifier'. This will update the information in the previously imported record. If a field in your import is blank but is populated in the record, it will not replace this information with a blank.
Selecting 'Replace records' and 'Match by import identifier' will replace all data in a record. If any fields are not included in the import file or are blank, this data will be cleared from the record. Please exercise caution when using this option.
Importing methods
Test import |
Simulates an import without saving any data. It only performs validations and returns any errors found. |
Stop on missing data or warning |
The import will not proceed if any data is missing or if warnings occur. No data will be saved. |
Stop on warning |
The import will be halted if any validation warnings are found (e.g., time validation warnings), and no data will be imported. |
Stop on error |
The import will be halted if any validation errors occur (e.g., missing required fields). No data will be imported. |
Skip error records |
Records with errors will be skipped, while valid records will be imported. |
Ignore errors |
The import will proceed regardless of validation errors. Errors will be included in the processing email sent upon completion. |
Handling existing records (by ID)
These options dictate how to handle when matching records are found.
Do not import |
If an existing record is found, it will not be imported. An error message will be included in the processing report. |
Update records |
If an existing record is found, only the fields present in the import file will be updated. Other fields in the existing record will remain unchanged. |
Replace records | If an existing record is found, all its data will be replaced with the values from the CSV file. Any fields not included in the CSV will be cleared (set to empty/null). Please exercise caution when using this option. |
Match by Import Identifier
It it essential to include an ImportIdentifier for each patient record. This allows you to identify the record in processing emails, exports and update the record in subsequent imports.
Lock all sections for complete records
If a record in the import file is fully complete selecting this option will lock the record to both 72 hours (sections 1-3) and to discharge (sections 4-7). At the moment it is not possible to import a file and lock only to 72 hours (sections 1-3), this must be done manually. For guidance on locking records please see here.
You are not able to import into parts of the record that have been locked. If you wish to update data in a locked section, please request an unlock. For guidance on unlocking records please see here.
You are not able to import into a record that has been transferred to another team. If you wish to update data in a transferred record, please request for the record to be revoked. For guidance on revoking records please see here.
Types of errors
Validation error |
e.g. S01FirstArrivalDateTime : Must be after or equal to onset date/time or S02RankinBeforeStroke : must be less than 5. |
This errors means that the field does not meet the validation rules of the webtool. The correct validation is clearly stated and the field (or another related field if it’s a date/time validation) should be updated. |
Required error |
e.g. S02NihssArrivalBestGaze : Required. |
This means that the question is required to be answered in order for the record to be fully complete and locked. This may be common if you are importing a partially completed record, e.g. complete to 72 hours, to then import further data or to transfer on to another team to complete the record. As long as the question should be blank at this moment for your team, you can proceed with the import. |
Comparison value not entered |
e.g. S06PhysioByDischargeDateTime : Comparison value not entered. |
This means that a question included in the validation for the highlighted question has not been answered. This typically shows for questions in section 6 which are validated against the discharge date/time, and if the discharge date/time has not been entered then this error will show. As long as you are happy with this, you can proceed with the import. |
Duplicate record |
e.g. Duplicate Record SSNAP ID: 376. Please check to see if patient is already on system as hospital number and date suggest this is a duplicate. |
This means a record has already been created that is flagged as a duplicate for this record in the import file. The existing ID is shown in the error as well as the reason a duplicate has been flagged. These errors are not shown in the test import. A duplicate will be flagged if:
|