Does OpenEMR Transmit to any Immunization Registry

@brady.miller could you share the step to get to this page?
I went through all the menus and could not find it quickly.

hi @juggernautsei,

Check out here on how to install the Care Coordination Modules (then login/logout and go to Modules->Carecoordination->Export->Immunization
https://www.open-emr.org/wiki/index.php/Z%26H's_CCDA_Module
(ignore all the ccda/mirth stuff)

-brady

I am in a flood zone of issues this month. I clicked on Modules and get the screen below. I checked the folder and the files are in the folder. Any idea what is causing this? No error message in the log file.

hi @juggernautsei, does it also need this apache setting or is this for the new patient portal only?

<Directory /var/www/html/openemr>
Options Indexes FollowSymLinks
AllowOverride FileInfo
Require all granted
</Directory>

@stephenwaite
The installation is working. It is just the modules that are not working.

I added what you suggested to the config file

<Directory />
   Options FollowSymLinks
   AllowOverride None
   Require all denied
</Directory>

<Directory /usr/share>
   AllowOverride None
   Require all granted
</Directory>

<Directory /var/www/>
   Options Indexes FollowSymLinks
   AllowOverride None
   Require all granted
</Directory>

<Directory /var/www/html/openemr>
      Options Indexes FollowSymLinks
      AllowOverride FileInfo
      Require all granted
</Directory>

Now I get this error

 [Thu Mar 29 03:15:22.558662 2018] [core:alert] [pid 26549] [client 70.169.0:60005] /var/www/html/openemr/interface/modules/zend_modules/public/.htaccess: Invalid command 'RewriteEngine', perhaps misspelled or defined by a module not included in the server configuration, referer: https://emr.pediatrics.com/openemr/interface/main/tabs/main.php

hi @juggernautsei ,

This is using Zend which requires some configuration with your server:
https://www.open-emr.org/wiki/index.php/Zend#Apache

If still can’t get it to work, which OS are you using?

-brady

It was the mod rewrite not turned on.

But I still have a question about the warning that the system will be generating an HL7 file and it can not be generated again.

Why is that? When this report has to be sent regularly, it only sends forward information?

Also, there are segments that need to be edited to meet the state’s requirements. How, can those segments be changed?

Also, I noticed that the system is built for Mirth. Is there an SFTP option like in the LAB?

Thx

We have submitted to the state of MD and this was the response from the person doing the review.

This one for your RXA segment:
Error Code -029: Record rejected. CPT Code, Vaccine Group, Tradename and NDC are not a valid combination.
This one for your ORC segment:
Error Code - 063: ORC #1 IGNORED - REQUIRED FIELD ORC-3 MISSING.

There are more errors.
Any help would be great. Thanks!

I noticed this in the code:

     $content .= "RXA|" .
     "0|" . // 1. Give Sub-ID Counter
     "1|" . // 2. Administrattion Sub-ID Counter
     $r['administered_date']."|" . // 3. Date/Time Start of Administration
     $r['administered_date']."|" . // 4. Date/Time End of Administration
     format_cvx_code($r['code']). "^" . $r['immunizationtitle'] . "^" . "CVX" ."|" . // 5. Administration Code(CVX)
    "999|" . // 6. Administered Amount. TODO: Immunization amt currently not captured in database, default to 999(not recorded)

Hi @juggernautsei ,

The immunizations hl7 creation in the care coordination module does not require the mirth server (that is only needed for the CCDA creation).

The not being able to send again has always seemed to be an odd thing.

I would guess that each place/state will have their unique requirements.

-brady

I am back to this topic again.
I was following the instruction to setup the program to transmit to Virginia HIE. Well ran into a road block. Please look at the image below. After entering all the settings for the SFTP connection. I tried to send a batch. By the way, the CVX numbers are still have that double display in every part of our system. (CentOS 7) That is not the point. The point of this message is that the popup says to select at lease on patient. I could not find a way to select a patient.
I know that in the past. It was said that Mirth is not needed. The front end should be changed to reflect what is really being entered.
I went a head and used the old immunization report. I built a way to transmit embedded within that report. That is what the second image is showing. I was unable to get the module one to work. @sjpadgett Is this hard enough for you?

Would you like a PR for this one once I get it converted to symfony?

I checked out the demo and found this.

I reloaded the page and that error message went away. This still is an issue. Can’t select a patient.

Hi Sherwin,
This is not going to work until the offending static methods are fixed. Most have been fixed but this module seems to still resist…

I’m just not sure i’m willing to take this on just now.

I built another way that works outside of this. Should I post a PR?

Not sure, depends what it does. Is it new?

Yes, it is new but based on the extending the functionality of the previous Immunizations report that is still in the system. Instead of dropping and HL7 file, I transmits the HL7 via SFTP.

I have recently completed a module that transmits immunizations to CAIR (California Immunization Registry). With minor code changes, it could probably be used to send immunizations to any registry. My module allows the user to scan the immunization with a scanner and the fields will auto populate with the appropriate information:

(Note: The following screen has things that are related to CA only)

The end user has the ability to submit the immunization right away, or just save it (a cron job sends the immuizations every 6 hours). We created the cron job because the CAIR server is slow and sometimes a single submission can take 30 seconds or more before it registers.

When we click on the query button it sends a request to the CAIR server and a report is generated for all of the recorded vaccines:

If you wanted to print up a Yellow Card you can from the screen:

and the CAIR Yellow Card will auto-populate with the patient’s history and it is printable

I have made the code robust enough that we could alter it for any state.

@growlingflea, @juggernautsei,
Your code would be very useful in providing Comprehensive COVID-19 Immunization Administration Setup. Do either or both of you have plans for PR?
If CA requires soap envelop around HL7 data and MD accepts pure HL7 batch, chances are other registries will have other combinations. The covid agreement is not that clear if records need to flow thru the state registry to CDC or feed directly into their system. It may be good to store HL7 batches in documents or such folder. Then have another process that will manage the send and receive aspect in a robust fashion.

I do. I m working on the CAIR tomorrow.

I don’t have a repo but I will get to it soon.

(sometime later) @mdsupport Here is my PR. It is incomplete because I never built the globals for entering the SFTP information.

This is a great contribution, and very robust!

I wrote a much more slimmed down tool to sync openemr and CAIR. It does not integrate tightly with OpenEMR like Pflieger’s code does. It also only submits the minimum required information to CAIR and set’s the record in CAIR as locked. It only submits COVID-19 vaccines.

1 Like