Hi all,
I'm triying to create a SOAP Pass-through acording to Configuring Pass-through Business Services instructions, but I'm not able to run it ![]()
I'm using the following WebService
In healthcare, interoperability is the ability of different information technology systems and software applications to communicate, exchange data, and use the information that has been exchanged.
Hi all,
I'm triying to create a SOAP Pass-through acording to Configuring Pass-through Business Services instructions, but I'm not able to run it ![]()
I'm using the following WebService
I have text coming in CCDA file as below:
<td>
<content ID="1234">
virus vaccine
<sup>1</sup>
</content>
</td>
I want to get the entire value available inside the content tag. Can anybody please help me out how to get this?
Once upon a time in Ensemble Management Portal the pool size of each component (Business Host) within the production was displayed in the Production Configuration page.
This information was very useful, especially when a production have tens or hundreds of components.
.png)
Now days the pool size is no longer displayed in the Production Configuration page and to get the pool size you need to click in each and every host in your production.
What if you have hundreds of business hosts and you need to check the pool size of each? It's a nightmare!
In systems I have control of I've modified the production
Hello everyone,
I'm looking for a practical project guide to help me gain hands-on experience with InterSystems Ensemble HL7. Ideally, this guide would walk through building a small project — something that covers key concepts like message routing, transformations, and interoperability.
If there's a resource that also includes step-by-step instructions and perhaps even offers a certification upon completion, that would be perfect.
Any recommendations or guidance would be greatly appreciated. Thanks in advance! 😊
I'm proud to announce the new release of iris-pex-embedded-python (v2.3.1) with a new command line interface.
This command line is called iop for Interoperability On Python.
First I would like to present in few words the project the main changes since the version 1.
Version 1.0 was a proof of concept to show how the interoperability framework of IRIS can be used with a python first approach while remaining compatible with any existing ObjectScript code.
What does it mean? It means that any python developer can use the IRIS interoperability framework without any knowledge of ObjectScript.
Example :
from grongier.pex import BusinessOperation
class MyBusinessOperation(BusinessOperation):
def on_message(self, request):
self.log.info("Received request")
Great, isn't it?
In 2023, according to IDC, Salesforce's market share in CRM reached 21.7%. This company owns a substantial amount of critical corporate business processes and data, so the InterSystems IRIS must have an interoperability connector to fetch data from the Salesforce data catalog. This article will show you how to get any data hosted by Salesforce and create an interoperation production to get data and send it to such targets as files and relational databases.
1. Go to https://developer.salesforce.com/signup:
Hello everyone
For those interested, here is an implementation example I used in one of my projects to interoperate with MongoDB using the pymongo package.
Interoperates with MongoDB (via pymongo package) with InterSystems IRIS (including outbound adapter)
Remember to import pymongo package.
implementation example for testing here
NAMESPACE> do ##class(custom.python.pymongo.test).TestMongoDBCrud()
for interoperability, use the following adapter in your business operation:
Parameter ADAPTER = "custom.python.pymongo.outboundAdapter";
Parameter INVOCATION = "Queue";
Query example:
///FHIR repositories, applications and servers typically serve clinical data in small quantities, whether to return data about a patient, their medications, vaccines, allergies, among other information. However, it is common for a large amount of data in FHIR/JSON format to be requested to be used to load into Data Lakes, identifying study cohorts, population health, or transferring data from one EHR to another. To meet these business scenarios that require large extractions and loads of data, it is recommended to use the FHIR Bulk Data Access feature provided by HL7 institution.
The InterSystems
Hi all!Here I would like to share how we use vector search and GenAI with InterSystems technology.As an example, I'll describe BG-AppealAI project, which our company submitted to the InterSystems Vector Search, GenAI and ML Contest.BG-AppealAI application can write an appeal if you upload an insurance contract and the insurance company’s letter with a refusal to pay medical expenses.Of course, we are aware that at the moment AI has not reached such a level as to create ready-made legal documents.
Dear community, we are building up a digital backbone for our 17 hospitals and looking for reinforcement within the team. Maybe this is something for you or someone you know?
👩💻 Are you an (#InterSystems) developer and would you like to join an intelligent, bright and internationally diverse team (mainly in Zurich, but also in South Africa and the Middle East)?
🤘 Are you keen to use your skills for clinically relevant use cases and to build a Group-wide value-creating platform?
😁 Are you up for mischief and humor in the workplace?
📣 Are you willing to share frustration with us when things
| “At the request of the survivors, the names have been changed. Out of respect for the dead, the REST has been told exactly as it occurred.” |
The world of Generative AI has been pretty inescapable for a while, commercial models running on paid Cloud instances are everywhere. With your data stored securely on-prem in IRIS, it might seem daunting to start getting the benefit of experimentation with Large Language Models without having to navigate a minefield of Governance and rapidly evolving API documentation. If only there was a way to bring an LLM to IRIS, preferably in a very small code footprint....
Hello,
Very much keen if we could gather the per namespace and business component utilization of InterSystems cache server.
For e. I have a PRD server where its CPU utilization is at max all the time and I want to know which namespace and its business process (service/Operation/Process) is utilizing what number of CPU and memory.
** I can get the CPU and Memory utilization per Cache.exe and PID, but not able to get the Namespace and ConfiguratioName to which that particular PID belongs.
Thank you,
Hi,
A SFTP server on which we connect has increased its security level by disabling the use of the ssh-rsa algorithm
Since then, SFTP connections with ssh keys are no longer made through Intersytems but through tools such as FileZila and Putty.Looking at the Logs I see that the generated ssh key of type RSA supports other modern algorithms such as rsa-sha2-256 / rsa-sha2-512 ...I wanted to know if the Intersystems SFTP client supports modern algorithms?Or is there an ssh configuration that excludes rsa-sha2 algorithms that will need to be disabled?
It's been a while since I've posted about Embedded Git on the Developer Community, and I'd like to provide an update on the massive amount of work we've done this year and where we're going next.
If you're building solutions on IRIS and want to use Git, that's great! Just use VSCode with a local git repo and push your changes out to the server - it's that easy.
But what if:
In your Interoperability Production you could always have a Business Operation that is an HTTP client, that uses OAuth 2.0 for authentication, but you had to customize the Operation for this authentication methodology. Since v2024.3, which was lately released, there is a new capability, providing new settings, to handle this more easily.
Imagine the scene. You are working happily at Widgets Direct, the internet's premier retailer of Widgets and Widget Accessories. Your boss has some devastating news, some customers might not be fully happy with their widgets, and we need a helpdesk application to track these complaints. To makes things interesting, he wants this with a very small code footprint and challenges you to deliver an application in less than 150 lines of code using InterSystems IRIS. Is this even possible?
Disclaimer: this article documents the building of a very basic application and omits
Hi Community,
We're excited to invite you to the webinar 2025 Data Management: Technology Trends & Predictions.
Join this webinar for an engaging and insightful tech talk on the latest trends in data management technology in the UK and Ireland.
⏱ Date & Time: Thursday, January 23, 10:30 AM GMT
👨🏫 Speakers:
When developing a new Interoperability Production, it is quite natural that settings are initially added in the Production.
However, as soon as you want to move the Production from development to a test or staging environment, it becomes clear that some settings like HTTP Servers, IP addresses and/or ports need to be changed. In order to avoid these settings being overwritten during a redeployment later on, it is essential that you move these settings from the Production to the System Default settings.
Creating System Default settings manually is possible, but will become hard when you have
Last Chapter: Creating a REST client to get Tracks from Spotify REST API - Part3 Get some data (e.g. Artists)
Git link: https://github.com/ecelg/InterSystems-IRIS-as-a-Spotify-REST-client
OK we create a method to get data and lets try to get some Tracks 😁
.png)
Run the following line
w ##class(rest.utli.requestUtli).getdata("Spotify","/search","offset=5&limit=10&query=Shape%20of%20you&type=track&market=SG").png)
ooooo no seems there is huge among of data returns.....😥
I would like to know what information can be found in 1 track....🤔 how about only query 1 track?
let's try
Last Chapter: Creating a REST client to get Tracks from Spotify REST API - Part1 Check out token
Git link: https://github.com/ecelg/InterSystems-IRIS-as-a-Spotify-REST-client
Ok... Now we can check out a token but it will be expired in 3600 seconds.
There are 2 questions come up🤔
1. How to save this token????🙄
2. How to refresh this token????🤨🤔
Lets come back to the API document https://developer.spotify.com/documentation/web-api/tutorials/getting-started
Base on my understanding, this piece of API do not have a token called refresh_token, as a result, we can assume the logic like following
.png)
OK
This sample was cloned from iris-interoperability-template. I have reconfigured the interoperability Production with an Inbound HTTP Adapter which is used by a HTTP Business Service. The configuration details for the business service are specified in System Default Settings.
I configured Call Interval setting to call HTTPServer once every hour. You can change both the URL and frequency in the service's settings.

Originally the HTTP Service had two targets.
Hi Community,
In this article, I will introduce my application iris-HL7v2Gen .
IRIS-HL7v2Gen is a CSP application that facilitates the dynamic generation of HL7 test messages. This process is essential for testing, debugging, and integrating healthcare data systems. The application allows users to generate a wide variety of HL7 message types, validate their structure against HL7 specifications, explore the message hierarchy, and transmit messages over TCP/IP to production systems. These features are particularly useful in settings where compliance with HL7 standards is mandatory for interoperability between different healthcare organizations or systems.
We are building a data transformation from HL7 to custom XML. We've got an XML schema, and are using virtual documents (EnsLib.EDI.XML.Document).
We can:
.png)
Interoperability of systems ensures smooth workflow and management of data in today's connected digital world. InterSystems IRIS extends interoperability a notch higher with its Embedded Python feature, which lets developers seamlessly integrate Python scripts into the IRIS components, like services, operations, and custom functions.
Why Embedded Python in IRIS?
Embedded Python brings the flexibility of Python into the powerful world of InterSystems IRIS and provides the following: Access to Python Libraries: Leverage popular libraries such as pandas, NumPy, and requests for advanced data
The ability to resend messages easily has always been a strong feature of our Interoperability capabilities.
With v2024.3 coming out soon (available already now as Developer Preview) out already we've made this even easier!
This demo has an interoperability production with 16 items. 
The first part of this demonstration consists of sending an HL7 SIU file which will be transmitted to the 2 other HL7 flows (HTTP and TCP), and transformed and transmitted to the Kafka server. HTTP and TCP flows will transform HL7 messages in the same way before sending them to Kafka as well.
The production has a business
When building a bundle from legacy data, I (and others) wanted to be able to control whether or not the resources were generated with a FHIR Request Method of PUT instead of the hard coded POST. I have extended the two classes responsible for transforming SDA to FHIR in an Interoperability Production to accomodate a setting that lets the user control the Request Method.
First is the Busines Process class. This includes a new parameter exposed to the "Settings" tab in Interoperability called FHIRRequestMethod.
Is there a way to create and establish DICOM Association with Extended Negotiation?
I have implemented DICOM Query/Retrieve C-FIND, using EnsLib.DICOM.Operation.TCP and EnsLib.DICOM.Process base classes. My application, acting as an SCU, needs to query by Study Date-Time (combined date-time matching) range with timezone query adjustment. For this, I need to use Extended Negotiation.
I've checked the IRIS Manual - Creating DICOM Associations section but there is no mention of this.
Hello,
Please, we would need your help 🙂:
In a development environment, we have added quite a few presentation contexts to the DICOM configurations (the associations). We would need to find a way to export them from this environment to make it easier for us to import them in PRO (and avoid doing it by hand one by one).
We know that there is this method, the ImportAssociation(), that given a file, and the names of the local AET and the remote AET, creates it automatically:
https://docs.intersystems.com/irisforhealthlatest/csp/docbook/DocBook.U…