We’re updating versions for one of our sites; this one happens to have an HL7 interface to our lab provider so we can send the requests electronically. We’ve been told by our vendor that upgrading will break the interface and they delivered a series of scripts as a solution. So I work for about 90 minutes to backup the database in QA, get my SQL scripts in order and execute them, update a .dll on the application server, restart the service, and figure out exactly how to login to the application and send a test message. I’m somewhat lost in the EMR still, though I seem to be getting acquainted with the table structure of the db.
So it’s all updated, I test, and I get an error message. The error message very clearly tells me that the procedure code I selected has an illegal character. That naughty ampersand (‘&’). So I pick a different code, same error, same naughty ampersand. So I raise my hand for help, someone pulls out of their hat “this script we ran last month” that clears all special characters. Run that, restart the service, same error. I’m in it for about 2 hours at this point. So I do what anyone would: I restore the backup and try again. This time I run the script to remove all special characters right after the script to reformat the order request. I restart the app service, reopen the client, try again, same error. So I take the text of the error message, run a select * from tablename where errormsg like ‘%text%’ and low and behold, I get about a dozen hits; all of them listed as inactive except one. Ouch. it’s not for the same procedure code I’ve used (at this point I’ve used about 10 different ones, it ain’t one of them). So for fun: (1) copy the description field, (2) paste into notepad, (3) get frustrated. ‘and’. not ‘&’. The clear-all-special-chars script works. The data is correct; only Heaven knows where the application is trying to read from. 3 hours of my day.
So I walk on over to the Implementation Specialist who’s been mentoring me and ask the question of the week:
“When you’ve done these conversions, have you ever seen this?”
“We’ve never upgraded this particular interface for this particular version. First time. How’s the testing going?”
So I guess as it turns out, the testing was going well.
UPDATE: turns out a config file had not been updated. The interface was updated but the jobs weren’t running. score 1 for the home team.