CCD file import fail; AWS Cloud Express version

Situation
When I attempt to import a new patient’s XML file via the CCR category (as instructed in OEMR 5.0.1), I get an error popup: “ec2-etc. etc. - .amazonaws.com says failure”

My attempts were as follows:
I went to Manage Modules. Registered/installed/enabled Carecoordination, Immunization, Syndromicsurveillance and Ccr modules.

Went to Miscellaneous–>New Documents. Chose CCR. Chose an XML file from my local drive. Hit Upload. That upload appeared successful.

Clicked on the link for that file, which caused a new tab to open a CCR. However, the CCR contained no data, only empty fields. (I confirmed that the .xml file appears to contain data, viewed with a text editor since the file didn’t come with a stylesheet.) I closed that tab, and was happy to see that the right panel of the Documents tab listed the correct .xml file. I hit Import in that panel, and received the above-quoted failure popup.

Thanks in advance…
Peter

OpenEMR Version
I’m using OpenEMR version 5.0.1 Cloud Express.

Browser:
I’m using: Chrome 73.

Operating System
Locally I’m using: Mac OSX 10.10.5

Logs
Did you check the logs? Was there anything pertinent in them? Paste them here (surround with three backticks (```) for readability NOT SURE WHAT USAGE LOGS ARE GENERATED BY CLOUD EXPRESS(?) OR WHERE I’D FIND THEM.

Update: this failure of importing continues to occur when using .xml files created by my previous EHR vendor. I’ll also note that if I navigate to the Imports --> “Pending Approval” drop-down, there is nothing pending approval. Any help on this appreciated…

Peter,

Have you tried doing to upload through the Module > Carecoordination tabs instead of through Miscellaneous > New Documents?

I went through your steps of uploading the file through the Miscellaneous -> New Documents and the user to import did show up but was all blank just as you described.

However, if you upload the file in the Module > Carecoordination tab the user data was populated. I did this by going to Module > Carecoordination > Import > CCR and then clicking the big blue import button: image. I actually tested this with a sample CCDA file but I’m pretty sure it will work with CCR as well.

So importing from the miscellaneous documents is not working and I’d just use it directly from the Carecoordination module.

1 Like

Hi Stephen,
Thanks for your reply. I had a partial result with this, as follows.
I had been trying the CCR category, because those were the instructions when attempting “Patient/Client–> Import --> Upload.” (So do those instructions for new patient imports need to be changed?)
When going through the Carecoordination tab, per your suggestion, I tried the CCR category, but no new patient record was added. So I tried under the CCDA category. This triggered a new tab with the below error message. Also, a new patient was created, but missing insurance and demographic/address information. Problems/issues were not populated either. The imported .xml file did contain those data.

This has occurred for two patient imports, so far. One patient’s street address was populated, the other’s was not. In neither case were the insurance or medical problem data populated. (I believe the error message pasted in is for the patient whose street address was missing.) This is what I’ve noticed so far.

Thanks in advance for further advice.

The error message:
An error occurred

An error occurred during execution; please try again later.

Additional information:

Error

File:

/var/www/localhost/htdocs/openemr/interface/modules/zend_modules/module/Documents/src/Documents/Controller/DocumentsController.php:141

Message:

Call to undefined function Documents\Controller\simplexml_load_string()

Stack trace:

#0 /var/www/localhost/htdocs/openemr/vendor/zendframework/zend-mvc/src/Controller/AbstractActionController.php(84): Documents\Controller\DocumentsController->retrieveAction()

#1 [internal function]: Zend\Mvc\Controller\AbstractActionController->onDispatch(Object(Zend\Mvc\MvcEvent))

#2 /var/www/localhost/htdocs/openemr/vendor/zendframework/zend-eventmanager/src/EventManager.php(490): call_user_func(Array, Object(Zend\Mvc\MvcEvent))

#3 /var/www/localhost/htdocs/openemr/vendor/zendframework/zend-eventmanager/src/EventManager.php(260): Zend\EventManager\EventManager->triggerListeners(‘dispatch’, Object(Zend\Mvc\MvcEvent), Object(Closure))

#4 /var/www/localhost/htdocs/openemr/vendor/zendframework/zend-mvc/src/Controller/AbstractController.php(118): Zend\EventManager\EventManager->triggerEventUntil(Object(Closure), Object(Zend\Mvc\MvcEvent))

#5 /var/www/localhost/htdocs/openemr/vendor/zendframework/zend-mvc/src/DispatchListener.php(118): Zend\Mvc\Controller\AbstractController->dispatch(Object(Zend\Http\PhpEnvironment\Request), Object(Zend\Http\PhpEnvironment\Response))

#6 [internal function]: Zend\Mvc\DispatchListener->onDispatch(Object(Zend\Mvc\MvcEvent))

#7 /var/www/localhost/htdocs/openemr/vendor/zendframework/zend-eventmanager/src/EventManager.php(490): call_user_func(Array, Object(Zend\Mvc\MvcEvent))

#8 /var/www/localhost/htdocs/openemr/vendor/zendframework/zend-eventmanager/src/EventManager.php(260): Zend\EventManager\EventManager->triggerListeners(‘dispatch’, Object(Zend\Mvc\MvcEvent), Object(Closure))

#9 /var/www/localhost/htdocs/openemr/vendor/zendframework/zend-mvc/src/Application.php(340): Zend\EventManager\EventManager->triggerEventUntil(Object(Closure), Object(Zend\Mvc\MvcEvent))

#10 /var/www/localhost/htdocs/openemr/interface/modules/zend_modules/public/index.php(59): Zend\Mvc\Application->run()

#11 {main}

@peter.stein So that particular error looks like the php-xml extension is not loaded on the machine. @brady.miller Do you know if the 5.0.1 Amazon ami’s install php-xml as part of their process? I think earlier versions of php just bundled it but on Ubuntu you have to install it as a separate extension.

Hi,
php-xml is loaded:

Hi Stephen,
Any next steps/recommendations to improve the functioning of this module for my instance?
Thanks,
Peter

@peter.stein Without getting on the machine I’m not sure what is going on as the amazon instance should have the xml installed.

You can try and see what phpinfo tells you to see if the xml module is installed: https://stackoverflow.com/questions/6774581/how-to-test-whether-simplexml-is-installed-on-my-php-or-not

If for some reason the php-xml module is not loaded you’ll need to make sure it is loaded.

The only other thought I would have is that you need to open up that file /var/www/localhost/htdocs/openemr/interface/modules/zend_modules/module/Documents/src/Documents/Controller/DocumentsController.php on line 141 and put a backslash in front of the function. That backslash says to look for the function in the global php namespace which is part of what that error message is complaining about.

So it becomes:

$xml          = \simplexml_load_string($document);

I’m working on updating the modules system of the codebase but I’m assuming that this particular code pathway is working as I’ve been able to import CCD files just fine. Granted I haven’t tried it on the AWS cloud instance.

Finally if all else fails, you may want to contact one of the professional vendors who can hop on the machine instance and diagnose it for you.