George James Software is excited to share a new release of Deltanji source control, version 8.1. This new release introduces a Git Location Driver along with several other functionality and usability improvements.
Highlights of this release include:
InterSystems HealthShare is a healthcare informatics platform for hospitals, integrated delivery networks (IDNs) and regional and national health information exchanges (HIE). HealthShare includes health information exchange, data aggregation, workflow, text analysis, and analytics technology.
George James Software is excited to share a new release of Deltanji source control, version 8.1. This new release introduces a Git Location Driver along with several other functionality and usability improvements.
Highlights of this release include:
Is there a way in a EnsLib.SQL.InboundAdpapter that you can tell when you have reached the end of the Results of the Query?
Does anyone have a query that I could run to show a Vendor the time difference between when a message was sent out a BO, and when we received the HL7 ACK back that is associated with the message sent?
I am trying to prove to this vendor of the delay we are seeing getting the ACK back because of a Timeout
I know how to pull Ens.MessageHeader, and EnsLib.HL7.Message but not sure how to match up the Message with the HL7 Acknowledgement received.
Summary:
Duties and Responsibilities:
Design and implement healthcare data integration solutions using the InterSystems platform /HealthShare platform, ensuring data interoperability across various healthcare systems.
Develop and maintain data mappings and transformations to ensure accurate data exchange between systems, leveraging IRIS API’s, HL7, FHIR, and other healthcare data standards.
Build and maintain interfaces to connect health information systems, including clinical applications, EHR, and other healthcare data sources.
We're planning to use Production Validator for validating our system upgrade (2016.2.3 to 2024.2) , and we are trying to understand what kind of benchmarking or performance metrics others have observed during similar efforts.
Specifically, we are looking for a case study or real-world example that includes details like:
I am attempting to failover my TEST environment to the Backup, and I keep getting an error stating that
06/01/25-18:47:54:516 (11864) 1 [Utility.Event] Primary startup failed, failed to read header of /archive/journal/MIRROR-IRISTEST-20250513.007 (file #63653)
however, when I go to /archive/journal/, I am not finding any record of MIRROR-IRISTEST-20250513.007 (file #63653)
to get out of this error message I have to restart what was the Primary and restart the Backup to get it back into a state that we can use it.
We are attempting to setup an EnsLib.SOAP.OutboundAdapter to send an HL7 message to a vendor hosted AWS site. We have the Certificate from the vendor and defined the TLS setting. However, when we are sending the message we are receiving...
Unable to open TCP/IP socket to server hcis-staging.cbord.com:443

You know that feeling when you get your blood test results and it all looks like Greek? That's the problem FHIRInsight is here to solve. It started with the idea that medical data shouldn't be scary or confusing – it should be something we can all use. Blood tests are incredibly common for checking our health, but let's be honest, understanding them is tough for most folks, and sometimes even for medical staff who don't specialize in lab work. FHIRInsight wants to make that whole process easier and the information more actionable.

It all started with a simple but powerful question:
“Why is reading a blood test still so hard — even for doctors sometimes?”
If you’ve ever looked at a lab result, you’ve probably seen a wall of numbers, cryptic abbreviations, and a “reference range” that may or may not apply to your age, gender, or condition. It’s a diagnostic tool, sure — but without context, it becomes a guessing game. Even experienced healthcare professionals sometimes need to cross-reference guidelines, research papers, or specialist opinions to make sense of it all.
That’s where FHIRInsight steps in.
We didn’t build it just for patients — we built it for the people on the frontlines of care. For the doctors pulling back-to-back shifts, for the nurses catching subtle patterns in vitals, for every health worker trying to make the right call with limited time and lots of responsibility. Our goal is to make their jobs just a little bit easier — by turning dense, clinical FHIR data into something clear, useful, and grounded in real medical science. Something that speaks human.
FHIRInsight does more than just explain lab values. It also:
Imagine a young doctor reviewing a patient’s anemia panel. Instead of Googling every abnormal value or digging through medical journals, they receive a report that not only summarizes the issue but cites recent studies or WHO guidelines that support the reasoning. That’s the power of combining AI and vector search over curated research.
And what about the patient?
They’re no longer left staring at a wall of numbers, wondering what something like “bilirubin 2.3 mg/dL” is supposed to mean — or whether they should be worried. Instead, they get a simple, thoughtful explanation. One that feels more like a conversation than a clinical report. Something they can actually understand — and bring into the discussion with their doctor, feeling more prepared and less anxious.
Because that’s what FHIRInsight is really about: turning medical complexity into clarity, and helping both healthcare professionals and patients make better, more confident decisions — together.
Of course, all that simplicity on the surface is made possible by some powerful tech working quietly in the background.
Here’s what FHIRInsight is built on:
All of this happens in a matter of seconds — turning raw lab values into explainable, actionable medical insight, whether you’re a doctor reviewing 30 patient charts or a patient trying to understand what your numbers mean.
Behind the scenes, FHIRInsight’s AI-powered reporting is driven by LiteLLM — a brilliant abstraction layer that allows us to call over 100+ LLMs (OpenAI, Claude, Gemini, Ollama, etc.) through a single OpenAI-style interface.
But integrating LiteLLM into InterSystems IRIS required something more permanent and reusable than Python scripts tucked away in a Business Operation. So, we created our own LiteLLM Adapter.
LiteLLMAdapterThis adapter class handles everything you’d expect from a robust LLM integration:
prompt, model, and temperatureTo plug this into our interoperability production, we wrapped it in a dedicated Business Operation:
LLMModel settingHere’s the core flow simplified:
set response = ##class(dc.LLM.LiteLLMAdapter).CallLLM("Tell me about hemoglobin.", "openai/gpt-4o", 0.7)
write response
When we started building FHIRInsight, our mission was simple: make blood tests easier to understand — for everyone. Not just patients, but doctors, nurses, caregivers... anyone who’s ever stared at a lab result and thought, “Okay, but what does this actually mean?”
We’ve all been there.
By blending the structure of FHIR, the speed of InterSystems IRIS, the intelligence of LLMs, and the depth of real medical research through vector search, we created a tool that turns confusing numbers into meaningful stories. Stories that help people make smarter decisions about their health — and maybe even catch something early that would’ve gone unnoticed.
But FHIRInsight isn’t just about data. It’s about how we feel when we look at data. We want it to feel clear, supportive, and empowering. We want the experience to be... well, kind of like “vibecoding” healthcare — that sweet spot where smart code, good design, and human empathy come together.
We hope you’ll try it, break it, question it — and help us improve it.
Tell us what you’d like to see next. More conditions? More explainability? More personalization?
This is just the beginning — and we’d love for you to help shape what comes next.
I have a question where I have over 30 000 records of data that I would like to send in HL7 and was looking at sending these in one bulk messages instead of individual messages in HL7.In this kind of a situation has anyone ever sent a bulk HL7 messages or is there a way of doing this other than using FHIR bundle.
IRIS supports CCDA and FHIR transformations out-of-the-box, yet the ability to access and view those features requires considerable setup time and product knowledge. The IRIS Interop DevTools application was designed to bridge that gap, allowing implementers to immediately jump in and view the built-in transformation capabilities of the product.
In addition to the IRIS XML, XPath, and CCDA Transformation environment, the Interop DevTools package now provides:
Profiling CCD Documents with LEAD North’s CCD Data Profiler
Ever opened a CCD and been greeted by a wall of tangled XML? You’re not alone. Despite being a core format for clinical data exchange, CCD's are notoriously dense, verbose, and unfriendly to the human eye. For developers and analysts trying to validate their structure or extract meaningful insights, navigating these documents can feel more like archaeology than engineering.
Hi Community,
Watch this video to learn about upcoming plans for HealthShare to incorporate change control capabilities for moving configuration changes across environments.
Have you ever needed to change an IP or port before deploying an interface to production? Needed to remove items from an export? What about modifying the value(s) in a lookup table before deploying? Have you wanted to disable an interface before deploying? What about adding a comment, category, or alert setting to an interface before deploying to production?
If you’ve ever needed to make any changes to an interface or lookup table before deploying to production, then Export Editor is for you!
I am struggling on how to pull out individual fields from a JSON. In a previous post someone had mentioned that I could...
I need to create a task to read the contents of file in an IRIS file system and store it in Persistent DB. What is the type of property thats defined in the Task that lets user select the input directory.
We have a scenario where we use the best practice article of a BP and DTL to split up HL7 messages mainly ORUS
https://community.intersystems.com/post/splitting-oru-messages-using-ob…
It is really useful but we have this code in many places that we are trying to consolidate it in one place.
We do not want to split it at the first stage in our rules as there is a lot of messages that go to sink. So we are trying for specific rules and the incoming hl7 matches certain rules and classified for certain downstream systems that it is then split and transformed.
i got a particular application where i want that a user could only write to a DB without the reading permission. is this possible?
Hi all,
I'm exited to announce a GitHub Action to do direct deploy code from a github repository direct to a IRIS Instance.
Pleas visit https://openexchange.intersystems.com/package/Github-Action-IRIS-Deployer
Hey Developers,
Watch this video to learn how Personal Community can be leveraged to enhance your digital front door strategy:
⏯ HealthShare Personal Community and Your Digital Front Door @ Global Summit 2024
As part of a process to generate FHIR XML bundles from HL7 messages, I have a subtransform transforming segments of an MDM_T02 message into a section of XML (EnsLib.EDI.XML.Document). So far this has worked well although I've encountered strange behaviour when making use of an xmlns attribute, whereby the attribute's name is duplicated despite the schema and DTL editor displaying it correctly.
Here's a snippet of the div.xmlns definition from the XSD schema used
Has anyone else encountered this? Any help is much appreciated
In the previous article we have reviewed how to install our EMPI in standalone, so we are ready to start the basic configuration of our EMPI.
First of all we have to do an initial basic configuration, we can access to the configuration from the Configuration menu of our Registry.
Selecting that option will allow to us to edit the basic configuration table of the Registry:
In this menu we have to add the following parameters and update the value of one of them:
Reviewing the different articles that I have published, I realized that I needed to explain a very practical functionality within our EMPI (Enterprise Master Patient Index) and it is none other than the notification of registrations and links to systems external to the EMPI.
I am writing to express my interest in the "IRIS Ensemble Integration . I have 2 years of experience as an Ensemble IRIS Developer, working with Ensemble and IRIS for integration, server management, and application development. Looking for more opportunites to work under Iris Cache Objectscript
I have recently had the intersystems healthshare software installed on the laptop - but do not have the credential to log into the management portal. Is there anyway to recover these for the users _system or Admin or SuperUser?
HealthShare Unified Care Record Fundamentals – Virtual* June 2-6, 2025
Hi, Community!
Looking to modernize the way you build interoperability screens in InterSystems® products? Take a tour of some recent UI improvements.
Building Integrations: A New User Experience
<iframe allowfullscreen="" frameborder="0" height="360" src="https://www.youtube.com/embed/zupj1P7Plgo?utm_source=youtube&utm_medium=social&utm_campaign=zupj1P7Plgo" width="640"></iframe>
@Aya Heshmat, Product Manager for HealthShare® Health Connect, walks through updates to the Production Configuration screen and DTL Editor. With improved workflows, you will notice:
Epic had changed some of their logic on their Incoming Radiology Results which now require an Ordering Provider even though it is supposed to account for it within the Epic Interface settings.
I was wondering if we are using a custom schema if there was a way to default a value into OBR:16 if it was not valued without having to modify all the DTL's for these Results.
Is there a way to set this via the schema editor or in the background so we don't have to create/update DTL's or create a custom TCP Operation Class??
I recently had to refresh my knowledge of the HealthShare EMPI module and since I've been tinkering with IRIS's vector storage and search functionalities for a while I just had to add 1 + 1.
For those of you who are not familiar with EMPI functionality here's a little introduction:
In general, all EMPIs work in a very similar way, ingesting information, normalizing it and comparing it with the data already present in their system. Well, in the case of HealthShare's EMPI, this process is known as NICE:
I am struggling with returning a SQL Query Result that may have multiple rows that can be searched.
set query = "SELECT Facility FROM FROM osuwmc_EnterpriseDirDB.RelationshipMedCtrID WHERE OSUmedcenterID = ?"SET rset = ##class(%SQL.Statement).%New()
SET qStatus = rset.%Prepare(query)
SET rset = rset.%Execute($Get(ID))
do rset.%Display()I need to take the values that are returned and say search them for a single value. How would I go about returning the EnsLib.SQL.Snapshot into a Array or List for it to be searchable.
I have a general question about HealthShare Provider Directory using Code Tables on disk vs Cache SQL Tables. Why is Provider Directory not using the Cache SQL Tables within the IRIS platform?