|
HL7
HL7 is currently used with eClinicalWorks and with Mountainside. HL7 is the name of the file format that Open Dental uses to synch data with other databases.
Two folders on the server can be used for files going in each direction. A service (program without a user interface) called OpenDentalHL7 will need to be installed on the server. It will handle the interaction between the HL7 messages and Open Dental database. Start by making sure the client Open Dental program is installed on the server the same as it would be on any other workstation.
Connecting to the Database
The information for connecting to the database is contained in a file in the application folder called FreeDentalConfig.xml. This is the very same file that the main Open Dental program uses to connect to the database. The information in this file must be accurate before starting the OpenDentalHL7 service. One way of ensuring the accuracy of this file is to start the ordinary Open Dental client program and use the Choose Database window to set the database connection information. Only simple direct database connections are supported. Warning! If you are using Vista, you must right click, run as administrator when running Open Dental or the information you enter will not be saved to the FreeDentalConfig.xml file. You can verify that the information saved correctly by launching Open Dental again. You must not have checked the "do not show this window on startup" checkbox in the Choose Database window in order to see the information again. Once the information is correct and verified, you can be sure that OpenDentalHL7 will connect to the correct database when the service is started.
HL7 Folders
See the screenshots of the eClinicalWorks or Mountainside setup windows. That's where the HL7 folder(s) are set up. You will most likely be accessing the setup window from the server, so the paths will be relative to the machine you are on. But beware that the setup window is also viewable from other computers, in which case the paths will be invalid from the other computer.
Service Manager
Go the the application folder, usually
C:\Program Files\Open Dental\
and click on ServiceManager.exe.

Click Install, then click Start. The OpenDentalHL7 service should show as installed and running.
Errors
If the service does not start as expected, then check to make sure the database and HL7 folder are correct as explained above. Also, it will not start if the version is not exactly the same as the version of the main OD program.
If it still won't start, look in the Computer Management tool. My Computer, right click, Manage. Expand System Tools, Event Viewer, Windows Logs. Click on Application. The error and information entries will help determine the reason why the OpenDentalHL7 will not start.

Update Sequence
1. As part of the ordinary update, close Open Dental on all workstations.
2. This would also be the best time to stop the
OpenDentalHL7 service using the tool above (or using any other method). It is critical to stop the service if you are going to up date the server first.
3. Update one computer to the new version and get OD running well on that computer. If you are also using the Web Service, you would perform the first update on that computer, which is not necessarily the same computer as the HL7 server or the database server.
4. Update the other computers.
5. At whatever point the HL7 server computer gets updated, the
OpenDentalHL7 service absolutely must be stopped first.
6. If you forget to stop it, then stop it and "repair" the OD installation.
7. Start the service.
Simple Troubleshooting
If the messages are not being passed to OD and processed as expected:
1. Stop the OpenDentalHL7 service.
2. Make sure your version of Open Dental is at least 7.3.10, 7.4.13, or 7.5.10. Make sure eCW is at least version 8.0, build 100.17.
3. Edit the FreeDentalConfig.xml file by adding a line for <HL7verbose>True</HL7verbose>. Example:
<?xml version="1.0" encoding="utf-8"?>
<ConnectionSettings>
<DatabaseConnection>
<ComputerName>localhost</ComputerName>
<Database>opendental</Database>
<User>root</User>
<Password></Password>
<NoShowOnStartup>False</NoShowOnStartup>
</DatabaseConnection>
<DatabaseType>MySql</DatabaseType>
<HL7verbose>True</HL7verbose>
</ConnectionSettings>
4. Start the service.
5. Trigger eCW to create a text file in one of two ways:
---Edit patient information.
---Create a new appointment.
6. In either case, wait about 10 seconds for the message to be processed.
7. Look in the Windows Log as described above, refreshing as needed. Verify that the information was processed by Open Dental. Both kinds of messages should result in an insert or update to the patient table. If the trigger was a new appointment, then the message should also result in an insert or update of the appointment table.
8. After troubleshooting, remove the <HL7verbose>True</HL7verbose> line from the xml file. The line will also usually be removed automatically when you click OK from the Choose Database window.
Complex Troubleshooting
1. Perform the Simple Troubleshooting above first.
If that does not solve the problem.
2. Turn off OpenDentalHL7.
3. Look up the paths that are saved in the eCW folder.
4. Open the out folder in Windows.
5. Trigger eCW to create a text file in one of two ways:
---Edit patient information.
---Create a new appointment.
6. In either case, wait up to 60 seconds for the message to appear in the out folder.
7. If it does not appear, then the HL7 service is not set up properly in eCW to create files.
8. If it does appear, make a copy of the message for later analysis.
9.
Start OpenDentalHL7.
10.
If the original message does not disappear, then there is a problem with OpenDentalHL7. Look in the Windows Log for errors with the message processing.
11. If the message still does not seem to have been processed, then it will need to be debugged. A copy of the message, and possibly the database itself, will need to be sent to Open Dental programmers for testing.
HL7 Field Documentation
As of version 11.0.31
ADT - Demographics Message
PID.2 (eCW internal patient number) is used to determine patient. If using tight integration, this is stored in the PatNum field in OD. If using standalone integration, this is stored in the ChartNumber field in OD. If a match is not found, then a few patient is created in OD.
PID imports LName, FName, MiddleI, Birthdate, Gender, Race, Address, City, State, Zip, HmPhone, WkPhone, Position(marital), and SSN. If this is a new patient, PriProv is set to practice default.
PID.4 (eCW account number) is saved to
the ChartNumber field when using tight integration, but not saved at all when using standalone integration.
PID.22 is parsed for the fee schedule, creating a new one if needed.
PV1 is ignored.
PD1 is ignored.
GT1 is processed to create a guarantor if needed. The processing is nearly identical as for the PID segment.
IN1 is ignored.
SIU - Scheduling Message
PID.2 (eCW internal patient number) is used as PatNum to determine patient. If match is not found, a new patient is created with that PatNum.
PID is processed to extract 16 various patient demographic fields.
PID.4 (eCW account number) is saved to
the ChartNumber field when in tight integration mode.
PV1 is ignored.
SCH.2 (eCW visit number) is used as AptNum to find or create an appointment. If a found appointment does not match PatNum, error message is shown.
SCH.7 stored in appointment.Note
SCH.11.3 is stored in appointment.AptDateTime
SCH.11.4 (stop time) is used to caculate appointment.Pattern, the length of the appointment.
If AIG segment is present, it is processed for appointment.ProvNum and patient.ProvNum. A provider is created if needed, based on the eCW alphanumeric provider id.
If AIG segment is missing, PV1 is processed instead.
AIL is ignored.
AIP is ignored.
DFT - Charge Specification
PID.2 (eCW account Number)
PID.3 (eCW internal patient number)
PID includes an additional
14 patient demographic fields
PV1 includes provider information
PV1.19
(eCW visit number) The AptNum that was originally passed in by eCW.
FT1 A series of segments for all the procedures.
ZX1.5 If this DFT is being used to send a treatment plan, then this is a pdf file, encoded as base64 string.
Otherwise, blank.
|