Progam-Specific Dashboards Documentation

Hello all–

I’ve finally gotten a chance to write up some documentation for the Program-Specific dashboard functionality I added, as well a the Programs List and Program Status widgets. You can find the documentation here:

https://wiki.openmrs.org/display/docs/Context-Specific+Dashboards

https://wiki.openmrs.org/display/docs/Patient+Summary+Widget+Documentation

It’s not the most complete documentation, but hopefully it’s enough to get people started, and I encourage anyone who uses the functionality and feels they can improve the documentation to go ahead and do so… :slight_smile:

Also, note that we are continuing to develop this functionality, and are planning (hopefully within next couple months) to add the ability to manage patient states via the Program Status widget.

Hope others find this helpful!

fyi @ssmusoke

Take care, Mark

@mogoodrich Thanks for sharing I intend to try this out.

  1. Have you been able to use conditional loading on the widgets by say age?

  2. Can the custom dashboards also be extended to be location specific (in some cases)

  3. @darius Is this an appropriate time to look at integration of the Bhamni type configuration of dashboards via .json files can be integrated for further extensions? @mogoodrich Have you considered this?

  4. @mogoodrich Any ideas of how to have widgets appear on all the dashboards - say recent visits, allergies, programs?

  1. We haven’t done this, but I would think this could be implemented using the “required” field of extension, which allows specifying logic to determine whether or not an extension should be displayed. Looks like “required” is only avaiable for Extensions, not AppDescriptors, so we may need it to be available there.

  2. There’s no build-in functionality for this, but it probably could be implementing using the same techniques for conditional loading by age. I believe the sessionLocation is passed into the context that a “required” expression is evaluated in.

  3. Right now each dashboard is entirely separate… I haven’t thought about a design to specify “global” widgets.

Hope this helps! Take care, Mark