August 11, 2017 1 comment

As of 6/30/2017 I entered the ranks of the full time retired population so there will be no further technical entries to the blog.

Integration Dev. and Imp. Plans

February 5, 2016 1 comment

Integration Development and Implementation Plan

The above link is to a document that contains some thoughts I have had on development and implementation checklists. It was based on one that I helped develop for use with a Rhapsody integration engine. It has been modified so that it would apply to any environment. Let me know your thoughts on this effort.

Thoughts on Rhapsody Conventions

February 4, 2016 Leave a comment

Here are some of my recommendations on Rhapsody component naming conventions and folder structure. Let me know what you think.

Interface Engine Naming Standards and Conventions

Off topic – Starting new Career

January 4, 2016 Leave a comment

Recently I retired from my position at Ministry Health Care as part of a future-sizing event. I was contacted by a vendor that we had an excellent relationship with. It was suggested that I might want to considering becoming a contractor to keep from being bored. So here I am with my first contract looking forward to what lies ahead.

Almost the end of the first week and frankly things are not going as well as I expected. Client is not ready so no billable hours this week.

As an update two weeks plus to signing the contract I still had minimal billable hours because the client is not ready. After discussing the situation with the contracting company we mutually agreed to dissolve the contract.

A couple of key lessons were learned. Get everything in writing and as detailed as you can as to what constitutes billable hours and how many billable hours there will be per week. Thankfully my retirement does not require me to work so no financial harm was incurred.

Categories: Uncategorized

Rhapsody MS SQL Server SSO

January 27, 2015 Leave a comment

Here are the steps to follow to initially setup a Rhapsody server. No need to make a change on the IDE side.
– Download the

-Unpack the downloaded zip.

– Copy jtds-1.3.1-dist\x64\SSO\ntlmauth.dll in the unpacked zip and paste it in <RhapsodyInstallDirectory>\jre\bin folder. (e.g. C:\Program Files\Orion Health\Rhapsody\jre\bin).

– Restart Rhapsody for the .dll file to be picked up.
Here are the steps to follow when setting up a database communication point or filter.
On the Properties screen -> Configuration tab set Database = Manual Setting.

Then click on Edit Configuration.

Add a Database Connection in the database configuration editor.

With the Connection Editor set the following properties:

Driver Class Name = SQL Server (jTDS driver).

JDBC URL = jdbc:jtds:sqlserver://DBHostName:Port/DatabaseName;useNTLMv2=true;domain=DomainName or parameterize the URL with Rhapsody variables like this: jdbc:jtds:sqlserver://$(DB_Orion_Server)/$(DB_Orion_Database);useNTLMv2=true;Domain=$(DB_Rhapsody_Domain)

User Name = $( DB_Rhapsody_Acct_Name)

Password = $(DB_Rhapsody_Acct_Password)

Add other standard stuff like SQL and Refresh Rate etc. See the help or DOKI for more options.

Close the connection editor by clicking on OK.

Configure the communication point or filter to use the appropriate SQL or stored procedure.

Using Rhapsody to document a Rhapsody configuration XML file

December 11, 2014 Leave a comment

Steve Yetter's Blog

You can create a Rhapsody route that will process the configuration XML store in the RLC file. Use the IDE to create a Rhapsody RLC file and rename the file to have a ZIP extension. Then extract the XML file found at the root of the ZIP file.

You can of course use any tool like XML spy or Visual Studio to create an XSLT that will format the Rhapsody configuration XML file to produce any output you wish. You can download an example XSLT from

But you can also do this with a Rhapsody route and some JavaScript code using E4X technology. The example at the link creates 3 CSV files from an RLC which is a Rhapsody configuration file. The files contain a table each for Rhapsody variables, TCP Client properties, and database communication point properties. You can download the RLC from this link

View original post

Using Rhapsody functionality to convert an XML Document into a PDF Document.

November 13, 2014 Leave a comment

Vendor A sends an HL7 2.X message that contains a base 64 encoded XML document in an OBX.5 field. Vendor B needs the XML document converted to a PDF document and placed back in the message in OBX.5 as a base 64 encoded document. Rhapsody provides all of the filters necessary to accomplish this in a simple route.

The steps necessary are:

  1. Save off the HL7 message in a JavaScript filter with message collection enabled using the message control ID.
  2. Extract base 64 encoded XML document from the HL7 message using a JavaScript filter.
  3. Decode the base 64 encoded document using a Base 64 Encoding filter.
  4. Translate the XML document into a PDF using the XML to PDF filter.
  5. Encode the PDF in Base 64 using the Base 64 encoding filter.
  6. Insert the encoded Base 64 encoded PDF into the OBX.5 replacing the encoded XML document.

Step 4 requires a knowledge of XSL:FO and XSLT. A basic source of information can be found at XSLT is a multiple paradigm language that can support declarative or imperative programming. In this case I took an imperative approach because of the team’s experience.

Here is what the route would look like.


Categories: Healthcare Integration Tags: ,

Rhapsody Web Service use in WCF Services

November 1, 2014 Leave a comment

Importing a Rhapsody web service WSDL into a .Net WCF will fail unless you follow the instructions at this URL as it relates to the parameters issue.

Design Flexibility

October 22, 2014 Leave a comment

A vendor changed their requirement today that was relatively easy to accommodate because of our publisher subscriber design. Separation of concerns is just as important in interface design as other areas of software development.

Configuring Rhapsody to use LDAP

October 22, 2014 Leave a comment

Rhapsody documentation is very clear on how to accomplish this. The only issue we ran into was that we have two AD domains and Rhapsody only supports one.