XForms Module
Contents |
Overview
This module serves as one of the alternatives to Microsoft InfoPath for OpenMRS data entry. The module converts an OpenMRS form to an XForm. Data entry can be done using any browser that supports JavaScript. The browser which has been tested most frequently with this module is Mozilla Firefox and hence is the recommended.
This module also consumes and serves OpenMRS forms as XForms from and to applications that use the XForms standard. An example of such applications are the XForms Mobile Data Collection tools for OpenMRS. The communication between the mobile device and this module can take places via HTTP, Bluetooth or SMS. The Bluetooth and SMS communication is implemented by the OpenMRS Bluetooth and SMS scheduled tasks respectively. Applications that work in offline mode will normally start by downloading a set of patients to collect data for. So these patient sets are supplied by this module. To ensure that only authorized users will access these applications, the module also serves the users to be downloaded and used for such purposes.
What This Module Does Do
- Allows data entry to be done directly from any JavaScript enabled browser.
- Supports both filling of new encounters and editing of existing ones using the same form.
- Enables you replace the default patient registration form with a custom one without any programing.
- Supports uploading of picture, sound, and video files together with displaying and playing them.
- Serves OpenMRS forms as XForms to external applications.
- Serves users and patient sets, including medical history, to external applications.
- Accepts form data submitted from external XForms applications.
- Supports creation of patients and entry of observations for both new and existing patients using basic text SMS from all mobile devices including the cheapest non programmable ones.
- Lets you design Xforms using a browser based form designer.
What This Module Does Not Do
- The form designer does not yet support undo/redo.
Resources
- XForms Module User Guide
- XForms Module Patient Registration
- XForms Module Form Designer
- XForms Module Technical Overview
- Download Module
Release Notes
- 3.8.4
- Fixed the java.lang.NoClassDefFoundError exception for org.openmrs.hl7.HL7Receiver in openmrs versions from 1.6 and above.
- Fixed the java.lang.NoSuchMethodError exception for org.openmrs.Encounter.getProvider()Lorg/openmrs/User
- Fixed problem where question ordering was not preserved after refresh.
- Added taking one to the patient dashboard after creating a new patient using the patient xform.
- 3.8.3
- Added immediate notification of the user when form submission processing fails.
- Fixed form submission bug caused by invalid submission xml generated by the form viewer.
- 3.8.2
- Added title to xforms documents embedded in xhtml.
- Added support for specifying a custom serializer when downloading patient cohorts.
- Added saving of birth date estimated value for patients.
- Fixed bug where refreshing a form leads to loss of calculations attached to questions.
- Removed "Xforms Properties" link, which is buggy, from the admin screen.
- 3.8.1
- Fixed problem of messing up form JavaScript when doing File Save As.
- Fixed problem of showing retired forms under the xforms tab.
- Fixed problem of clicking the add new and remove repeating row widget which at times moves some widgets which are not to be moved.
- Added support for using patient_identifier_type_id in addition to the existing patient_identifier_type as the node name of patient identifier types used when creating new patients for an encounter form.
- Added ability to specify a url parameter to transform an xform to xhtml.
- 3.8.0
- Fixed null pointer exception when deleting form fields.
- Fixed xml parsing error when displaying a form which has non ascii characters.
- Added support for using the default encounter editor whenever there is not xforms widget layout attached to a form.
- 3.7.9
- Added automatic filling of encounter provider to the currently logged on user, if they have the provider role.
- Added automatic filling of encounter location to that of the currently logged on user, as set in the user profile.
- 3.7.8
- Added support for provider and location search.
- Added ability to select and unselect radio buttons using the keyboard SPACE BAR.
- Added ability to tab through widgets including radio buttons and check boxes using the keyboard ENTER key.
- Fixed issue where values from external database tables were not loaded in widgets in both preview and runtime modes.
- Fixed issue where the JavaScript tab was not preserving the formatting of JavaScript on being loaded again after saving the form.
- 3.7.7
- Added support for attaching custom JavaScript to forms.
- Fixed problem of rubber band widget selection happening together with browser selection of text.
- Fixed issue of radio button and check box in line editing of label text which does dot allow you click anywhere in the text to change the cursor position during the course of editing
- 3.7.6
- Added ability to create forms in different languages.
- Fixed skip logic problem with multiple questions sharing the same skip logic and having no way of removing one from this group, and also in some cases where the xform did not have the relevancy attribute removed after removing conditions and saving.
- 3.7.5
- Added support for concept search when in preview mode of the form designer.
- Fixed problem of concept search widget not displaying properly when in a group box or at the edges of the browser.
- Fixed problem of conditionally required questions still displaying error messages even after being answered.
- Added support for automatic loading of widgets when one selects the preview tab before the design surface tab.
- Fixed null pointer exception when one clicks the browse button for multimedia (picture,audio and video) widgets.
- Added support for immediate automatic filling of bindings for Single Select Dynamic question types.
- Changed widget resize keyboard shortcut from Shift and Arrow keys to Ctrl and Arrow keys.
- 3.7.4
- Added ability to resize widgets using keyboard Shift and Arrow keys.
- Fixed forms panel scrollbar problem with long question text.
- Fixed problem of boolean, some single and multiple select values not displaying properly when defining skip and validation logic.
