Ways to connect Providers to Patients?

I’m responsible for referring patients to providers (dental students) in a teaching hospital. Naturally, each student can only perform certain procedures according to his/her year of study.

How can I:

  1. Tell the system which procedures this provider is capable of?
  2. Get a list of all the providers who are able to perform a certain procedure a patient needs so I can refer him to one. (patients are diagnosed by an HTML form with a question with coded answers (procedures the patient might need) )

A suggested solution I’m not sure about:

using “manage person attribute types” to set an attribute to providers that lists which procedures they can perform (same coded concepts of procedures used in the HTML form to diagnose patients).

Then somehow, making the system suggest providers according to patients’ needs.

Hi @hossam. I’ve got a potential solution that might work for you.

  1. Setup Provider Roles, under Administration --> Manage Provider Roles. This is provide by the Provider Management Module. Install it if it’s not already installed. It’s included with OpenMRS 2.3. Setup a role for each type of provider based on the procedures they can perform. Maybe call them “Prophylaxes” and “Extraction”, or what their actual roles are, like “Dental Hygienist” and “Dentist”, etc.
  2. When you add your providers, ensure you assign them to the role for the procedures they can perform.
  3. Make your procedures check boxes, and use the “toggle” attribute. Check out the HTML Form Entry Module HTML Reference documentation.
  4. In the <div> tag that is toggled, put in <encounterProvider role="Prophylaxes"/> and in another <div> put <encounterProvider role="Extraction"/>, modifying the role to match what you created in step one. Control which <div> gets shown based on the the procedure chosen and the “toggle” of the <div>'s id.

If you want to use a drop-down, for your procedures, or if toggle doesn’t work for you, you can use some JavaScript to control when your <div>'s are displayed. For example I used…

   jQuery(function() {
       getField('discharge_status.value').change(function() {
          if ( getValue('discharge_status.value') == '159')  {
          } else {

…to control…

<div id="cause_of_death" style="display: none">
   my obs fields for cause of death

…based on…

<obs conceptId="CIEL:1695" id="discharge_status" answerConceptIds="CIEL:159,CIEL:1694,CIEL:1693,CIEL:160035,CIEL:159791"/>

Dear @arbaughj Thank you so much! you have no idea how much your suggestion has helped me. thank you…