FreePort roadmap
- Some users want to retrieve their data from another EMR to FreeMedForms.
- The FreePort application of the FreeMedForms set is built to do this work.
- FreePort allow you:
- to create your own Qt/C++ plugin and to manage data recovery from your EMR to FreeMedForms
- to import XML set of files to the FreeMedForms EMR (see spec below)
- Sometimes, some steps must be done outside the FreePort application (please read the documentation)
- FreePort works like this:
- A general window let user chose between all available plugins
- The plugin is then activated for the recovering
Examples
AXISANTE 4
- This software uses an OMNIS v4 Dababase system
Specs
- Create a file containing all PatientUidLink that allow user to find AlienEMR_PatientUID / FreeMedFormsEMR_Patient_UID correspondance.
- Select FreeMedForms User data owner
- Check double in patient to import and existing patients
- Creates all patients with identity data
- Ask user about the form to use for the data import
- Import PMHx (also avoid duplicates)
- Import FormItemData (also avoid duplicates)
Using XML Format
- To make the import of the data from other software easier, we propose the use XML format.
- You should use several XML inside a directory (one file by patient for example) and import the whole directory.
- All correct XML files will be integrated in the FreeMedForms EMR.
- A login window is provide for you to check errors and messages.
Format of the final file used for the integration
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE FreeMedForms> <DataIntegrator> <!-- Patient UID links --> <!-- This part can be saved into a specific file --> <PatientLink> <UidLink alienUid="" fmfUid="" /> </PatientLink> <!-- Patient block --> <Patient emrUid="" birthname="" secondname="" firstname="" dob="" dod=""> <!-- Contact --> <Address ad="" city="" country="" zip="" state=""/> <Contact tel1="" tel2="" tel3="" fax="" mail=""/> <!-- PMHx --> <PMHx> <PMH_Item> <!-- use FreeText or Encoded not both --> <FreeText></FreeText> <Encoded icd10="" label=""> <DateStart format="">date</DateStart> <DateEnd format="">date</DateEnd> <ConfidenceIndex></ConfidenceIndex> </PMH_Item> </PMHx> <!-- Populate Form items --> </Patient> </DataIntegrator>
The patient UID linking alienEMR <-> FreeMedForms
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE FreeMedForms> <FreePortPatientUids> <PatientLink a="alien_patient_uid" f="freemedforms_patient_uid" i="internal_uid_specifically_used_inside_freeport_should_not_be_edited" c="creation_datetime_iso_format" l="lastupdate_datetime_iso_format" v="validity_1_or_0" e="editable_1_or_0" /> ... </FreePortPatientUids>
Code specification
- FreePort is included in the git: freeport/freeport.pro
- Please refer to the build process
- We need to create a pure virtual interface class for each engines (each EMR) and present their widgets in the mainwindow