Hello, dear members of our developer community!
In today's article, we're going to take a look at one of the latest remote monitoring features that have been added to the product for our IRIS instances. I'm talking about OpenTelemetry support.
.png)
InterSystems IRIS for Health™ is the world’s first and only data platform engineered specifically for the rapid development of healthcare applications to manage the world’s most critical data. It includes powerful out-of-the-box features: transaction processing and analytics, an extensible healthcare data model, FHIR-based solution development, support for healthcare interoperability standards, and more. All enabling developers to realize value and build breakthrough applications, fast. Learn more.
Hello, dear members of our developer community!
In today's article, we're going to take a look at one of the latest remote monitoring features that have been added to the product for our IRIS instances. I'm talking about OpenTelemetry support.
.png)
Hey everyone,
I'm diving deeper into Caché ObjectScript and would love to open a discussion around the most useful tips, tricks, and best practices you’ve learned or discovered while working with it.
Whether you're an experienced developer or just getting started, ObjectScript has its own set of quirks and powerful features—some well-documented, others hidden gems. I’m looking to compile a helpful set of ideas from the community.
Hi Community,
Enjoy the new video on InterSystems Developers YouTube:
⏯ It's CLEAR - Re-Imagining the Digital Front Door @ Global Summit 2024
Is anyone using DICOM Interoperability in IRIS for Health configured in Mirror?
I'm asking because I'm not sure how to handle where the DICOM messages are stored.
For some reason DICOM use the filesystem to store raw messages, the directory used can be configured in the StorageLocation production settings, obviously this is a big issue if/when a mirror failover occur.
Unfortunately in IRIS it's not possible to change the DICOM storage from file stream to global stream.
Has anyone came across this issue?
Hello Community
I have previously experimented with embedded Python in IRIS; however, I have not yet had the opportunity to implement IRIS using native Python. In this article, I aim to outline the steps I took to begin learning and implementing IRIS within the Python source. I would also like thank to @Guillaume Rongier and @LuisAngel.PérezRamos for their help in resolving the issues I encountered during my recent PIP installation of IRIS in Python, which ultimately enabled it to function properly.
Let's begin to write IRIS in python.
I have created a new docker stack with webgateway and IRIS for Health 2025.1. I have mapped the posts of wegateway like this:
I can access IRIS portal through 8743 without problems.
I also have created a FHIR repository, and I'm able to access it through 8743 port.
I have a web application, in another server with another domain, that connects to this FHIR repository. I have configured in FHIR endpoint the allowed origin to the domain of this application.
InterSystems has released new point updates to resolve a defect affecting the most recent prior versions of 2025.1.0, 2024.1.4, 2023.1.6, and 2022.1.
For those that use IRIS for Health, HealthShare, and or Health Connect...
As Health Applications are moving to the Cloud, how have you handled communication from the Application to your instances via HTTPS?
Trying to figure out the best path on designing the proper workflow to allow these messages to be allowed to be eventually sent to our EMR to post to the patient chart.
We are very wary of opening a connection from the internet to our instance of Health Connect.
Thanks
I am having a hard time trying to figure out the following...
Within a DTC, I was able to take the a EnsLib.HL7.Message source and using
set a= $System.Encryption.Base64Encode(source.RawContent)
set encodedMessage=$Get(a)to take the HL7 message encode it and add it to the Data Class as a string to be sent to an Operation to be sent out as a SOAP Request.
However to make it more universal I tried doing this within a copy of EnsLib.HL7.SOAPOperation
Method SendMessage(pMsgOut As EnsLib.HL7.Message, Output pMsgIn As EnsLib.IRIS and Ensemble are designed to act as an ESB/EAI. This mean they are build to process lots of small messages.
But some times, in real life we have to use them as ETL. The down side is not that they can't do so, but it can take a long time to process millions of row at once.
To improve performance, I have created a new SQLOutboundAdaptor who only works with JDBC.
Extend EnsLib.SQL.OutboundAdapter to add batch batch and fetch support on JDBC connection.
Benchmarks released on Postgres 11.2 with 1 000 000 rows fetched and 100 000 rows inserted on 2 columns.

Does anyone have a copy of the Class EnsLib.File.CSVService, which can import a CSV file in a Business Service?
I have created a New Database/Namespace within our TEST environment on both the Primary and Backup of the mirror. When I go to create the database/namespace on the DR node I am getting "Cannot open file '/ensemble/TEST/iris.cpf_...." while the cpf file that it references does not exist. Anyone have any clue to why this might be happening?
Hi,
Can anyone please tell me how to append a string using a update query.
For eg : "Hello" is the string . I need to append the string world and it needs to be "Hello world".
Thanks
Jude
Hello Community,
I encountered the following errors while installing the ZPM module on version 2025.1. The ZPM install command failed on the Community Edition of IRIS for Health.
Skipping installation of python wheel 'attrs-25.1.0-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.Hi all.
I'm currently looking at a use case where I need to take a Stream, and then encode the contents as a Base64 Stream. This is currently achieved with a snippet of code that has previously been placed in multiple classes within this particular environment, and relied on the dotnet gateway (which suffers with a bug in 2022.1, corrected 2022.1.1).
Therefore I will be replacing the dotnet implementation with the standard $System.Encryption.
good afternoon!
I was trying to set up the "File Spec" to match the exact filename that will be in the file path.
however, it seemed grab whatever the name of the file and work on it.
wondering how I can specific the exact filename in "File Spec" so that It wont touch other files in the same path?
https://docs.intersystems.com/healthconnect20251/csp/docbook/DocBook.UI…
|
Advisory ID
|
Product & Versions Affected
|
Risk Category & Score
|
Explicit Requirements
|
|
DP-439649
|
Products:
Versions:
|
Operational:
System Stability:
This issue does not constitute a security vulnerability. It does not allow users to bypass permissions checks or access data outside their authorized namespace. |
Digital health solution providers face increasing pressure to integrate complex health data systems while ensuring scalability, security, and compliance with standards like HL7 FHIR. Fast Healthcare Interoperability Resources (FHIR) has revolutionized health data exchange by offering a standardized framework that allows diverse health IT systems to communicate effortlessly. But simply adhering to FHIR standards isn’t enough to overcome the intricacies of health data integration. Solution partners must leverage advanced architectural components like FHIR brokers, façades, and repositories to build scalable and efficient solutions. InterSystems offers all the essential features you need to implement FHIR for your health data, whether on-premises, in a public cloud, or as a cloud-based service managed by InterSystems.

I'm not so experienced in administering IRIS but as far as I understand IRIS for Health community comes with a web server out-of-the-box while licensed editions require Web Gateway to be deployed.
I was able to install dockerized instances of IRIS for Health 2025.1 along with Web Gateway, double checked that _SYSTEM and CSPSystem users are not locked, changed passwords for both, configured the gateway to connect to IRIS, then created a web gateway app (/iris) and checked the connection is OK. Now I'm struggling with accessing Management Portal.
We have an OAuth server configured as an identity provider, and we have an external application (from another provider) that connects correctly with OAuth.
I have a Task that I am trying to write the output to a file. How do I check for if the Output File has been included in the Task Schedule, so I can direct my output of my class to that output file?
Thanks
Scott
To enable Interoperability functionality after creating a namespace, use the EnableNamespace method of the %EnsembleMgr class:
do ##class(%EnsembleMgr).EnableNamespace()
Hi everyone,
I’m new to this community and could really use some help with creating a production in InterSystems IRIS for Health Community 2024.3. I have deployed my instance using Docker.
Here’s what I’m trying to do:
EnsLib.HL7.Service.FileService.
Class Demo.MyApp.Messages.JSONEvent5 Extends (%Persistent, %JSON.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?
Upon doing A NEW INSTALL of IRIS 2025.1 on a new computer, the IR task appears in the tray and a right click to invoke the Launcher yields no response. Any suggestions are appreciated.
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.
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
So, we figured it might be a firewall issue. With the TCP Outbound Adapter, we could specify which "Local Interface" to use so that our firewall knew to use the VIP that had has been NAT'd. I don't see this option with the EnsLib.SOAP.

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.
