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
  • 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)
  • 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.
<?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>
<?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>
  • 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