Wiki Spaces
Documentation
Projects
Resources
Get Help from Others
Q&A: Ask OpenMRS
Discussion: OpenMRS Talk
Real-Time: IRC Chat | Slack
No longer supported
Please note the the Clinical Summary Module is no longer being supported and doesn't work with the latest releases of OpenMRS. As a work-around you can see How to create a Patient Clinical Summary using Reporting Module.
The clinical summary module has undergone significant changes that have not yet been documented. This page needs to be updated.
Each summary is a velocity template script. The script, as it works now, spits out an xml document. The xml document is parsed with the associated xslt.
The default xslt converts the xml to fop for pdf generation.
As of version 2.3, printing is handled by an external application. When an encounter form is submitted, clinical summaries are automatically generated to a location in the file system. Printing is performed manually. Printing does not do the actual printing, but sends the generated clinical summary .pdf to a separate location in the file system for printing.
Versions prior to 2.3 require The Printing Module.
Download the module and install it in OpenMRS.
Go to the administration screen and click "Manage Clinical Summaries". There are two summaries provided by default: Basic Summary and the current AMPATH clinical summary. The AMPATH clincial summary makes some assumptions about concepts and encounters being used that are specific to the AMPATH program. The basic summary is as generic as possible.
The Manage screen for clinical summaries allows you to change both the summary xml code and the way that xml is translated. Currently you must translate the xml into Apache FOP for pdf generation.
The xml code is generated using velocity scripting tags. The functions available are found in the summary functions class. This class extends the data export functions class and has access to all of those methods as well.
Clinical Summaries are generated on the Clinical Summary Print Queue automatically after filling out an encounter form. The process is outlined in the steps below.
Go to Administration --> Clinical Summary Module --> View Clinical Summary Queue
clinicalsummary.printLogicClass must be filled in as a global property. Currently, the only available value is "org.openmrs.module.clinicalsummary.AMPATHClinicalSummaryPrintingLogic".
A1. Form is submitted. (AMPATH printing logic acts on adult initial or adult return)
A2. Create Clinical Summary Queue Item.
A3. If Obs contains lab request, go to W1. Else go to G1.
A4. If User chooses, go to U1. Else end.
U1. User looks at View Clinical Summary Queue page.
U2. User chooses A4, U3, U6, or U10.
U3. User selects queue item and presses "Generate Selected Summaries".
U4. Get posted queue items. Go to G1.
U5. Go to U1.
U6. User selects queue item and presses "Print Selected Summaries".
U7. Get posted queue items. If item status=WAITING_ON_LABS, go to G1.
U8. Go to P1.
U9. Go to U1.
U10. User selects queue item and presses "Remove Selected Summaries".
U11. Get posted queue items. Go to R1.
U12. Go to U1.
W1. Set status=WAITING_ON_LABS.
W2. Save to database.
W3. Return.
G1. If status==null or status!=WAITING_ON_LABS, Set status=GENERATED.
G2. Set fileName={patientIdentifier}_{currentDateAndTime}.pdf
G3. Generate the Clinical Summary to the file system.
G4. Save the clinical summary queue item to the database.
G5. Return.
P1. Get fileName and path.
P2. Move ClinicalSummary PDF from "generated" directory to "to_print" directory of the file system
P3. Remove Clinical Summary Queue Item from the database.
P4. Return.
R1. If fileName!=null, remove File from file system.
R2. Remove clinical summary queue item from database.
R3. Return.
4 Comments
Burke Mamlin
This module was discussed in OpenMRS University on 16-Nov-2011; there is a video recording of that session available here.
@Win – it would be great to add a list of basic rules provided by the clinical summary module with a description of how to use each one (either on this page or within a child page).
Janet Riley
The module was also demoed in The 2011-11-10 Developers Forum. See the etherpad for more notes.
Janet Riley
The XSLT template is rendered by Apache FOP, so your template must follow FOP's requirements.
Some resources for designing your templates:
W3 Schools XSL-FO tutorial
The XML Bible, Chapter 18: XSL Formatting Objects
The Apache FOP project has documentation, plus a downloadable binary that will render your XSL as a PDF. The download has several examples. Invaluable for fine-tuning your document layout outside of OpenMRS. (Use dummy values.)
user-a471a
There seems to be some external information that could be added to this (from the discussion, demo, etherpad, etc).