Let's suppose two different routines use one and the same chunk of code. From the object-oriented POV, a good decision is to have this chunk of code in a separate class and have both routines call it. However, whenever you call code outside of the routine as opposed to calling code in the same routine, some execution speed is lost. For reports churning through millions of transactions this lost speed might be noticeable. Any advice how to optimize specifically speed?
P.S. Whenever someone is talking about the best choice for whatever, I am always tempted to ask: "What are we optimizing?".
Hi All,
I am trying to build a very basic data transformation to convert messages from OML^O21 to ORM^O01. However, I'm unable to loop through multiple ORC segments.When I use the source document type 2.5: OML_O21, I am not able to loop through multiple lines of the ORC segment.Interestingly, if I use the source document type 2.3: ORM_O01, I am able to loop through multiple ORC segments successfully.I am currently using the following data transformation logic:
.png)
Hi Community,
Enjoy the new video on InterSystems Developers YouTube:
⏯ Migrating 20TB to InterSystems IRIS with Near 0 Downtime @ Global Summit 2024
How would you go about creating an SQL Stored Procedure that would result in the same output as "IN LIKE"?
For example...
CustomersTable
| RecordId | CustomerName |
| 123 | Mark Stevens |
| 456 | Betty Johnson |
| 789 | John Stevens |
| 321 | Brian Smith |
| 654 | John Markson |
| 987 | Tom Obrian |
selectfromwhereWould return:
| 123 | Mark Stevens |
| 456 | Betty Johnson |
| 789 | John Stevens |
| 654 | John Markson |
Hi IRIS experts!
I have a parameter in a class that stores a global name:
Parameter GlobalName = "^AGlobal";
then I'm trying to call it as:
set gn=$name(..#GlobalName)
to use it later as:
set @gn@("index")="value"
But! I'm having syntax at set gn=$name(..#GlobalName)
What am I doing wrong?
Hello,
I have a class with a "Unique" index (pxfactidIndex) on a %Numeric property (pxfactid) (partially-edit code snippet below):
PropertyAs%Library.NumericI see the following odd behavior when counting how many records have that property set to null:
- The first query (17) returns the number of records in the table. The 2nd query (18) returns what I expect: all records have non-null values for that "pxfactid" property. However, when I run the 3rd query (19) which counts all records with non-null values in that field, I get a much smaller, unexpected, number.
.png)
Hi Community,
i'm trying to figure out how to pass a string to a routine from Powershell:
####
ROUTINE ImplUtil
Say(pSomething = "hello, i'm the ROUTINE"w.png)
what's the right way to pass in text?
Hey Community!
We're happy to share the next video in the "Code to Care" series on our InterSystems Developers YouTube:
⏯ Role of Data and Interoperability in Effective AI in Healthcare
Hi Community,
Let's meet at the online meetup with the winners of the InterSystems FHIR and Digital Health Interoperability Contest! It's a great opportunity to chat with the InterSystems Experts team and our contestants.
Winners' demo included!
Date & Time: Thursday, June 5, 11:30 am EDT | 5:30 pm CEST
Hi Community,
Looking for a way to simplify your organization's approach to data access and integration?
🌐 Get an introduction to InterSystems® Data Studio™ and its low-code approach to managing your data.
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:
- Git Location Driver, which enables Deltanji to integrate directly with Git repositories.
- Additional signing methods for Task Server II.
- DATA Component Driver proxy classes.
- Add or remove from Work Lists incrementally.
- %ALL system definitions.
- New Installation defaults.
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 have a stream that I read out until the end. I then append more content to the stream and want to read out only what has been added. How do I only read out the new contents of the stream? Essentially, I want to read a stream, record the end position, then once the stream is updated read the contents from that recorded position until at the new end. This stream needs to be kept intact for historical reference so cannot be cleared between reads.
Hi, Community!
.png)
Content of log file as following:
Windows: 6.2.9200, SP 0.0, Product Type 1
Process: D:\DHC\DEVSOFTWARE\ENSEMBLE\BIN\CSTUDIO.EXE
Version 2016.2.3.907
Module: C:\WINDOWS\SYSTEM32\MSVCR120.dll
Date Modified: 05/24/2017
Exception Code: C0000005
Read Address: 00791000
Instruction: F3 A5 FF 24 95 50 F4 FA 73 8B 44 8E FC 89 44 8F
Registers:
EAX: 1228C068 EBX: 004C0048 ECX: 002C3C38 EDX: 00000002
ESI: 00791000 EDI: 1291CFD8 ESP: 0019E7F0 EBP: 0019E814
EIP: 73FAF66C EFlags: 00010216
Call Stack:
73FA0000 C:\WINDOWS\SYSTEM32\MSVCR120.
Is a layer before the internal HTTP of Caché/IRIS, such as a Reverse Proxy or API Gateway, a good option?
Example: I have an API using %CSP.REST, and I am using the internal port for development. But for production and approval, I put a reverse proxy using NGINX. Is this recommended? Is it an alternative?
Diagram..png)
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:
- How many messages were validated?
- How long did it take to create the temporary database from the source system?
- How long did it take to run the comparison on the destination system?
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.
Hi Community,
It's time to announce the winners of the InterSystems FHIR and Digital Health Interoperability Contest!
Thanks to all our amazing participants who submitted 11 applications 🔥
%20(4).jpg)
Now it's time to announce the winners!
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.
Hi Developers!
We are happy to present the bonuses page for the applications submitted to the FHIR and Digital Health Interoperability Contest 2025!
See the results below.
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.
InterSystems Kubernetes Operator (IKO) 3.8 is now Generally Available. IKO 3.8 adds new functionality along with numerous bug fixes and security updates. Highlights include:
- Compute Groups allows you to deploy more than one type of compute node to handle different types of workloads in a single IrisCluster
- Consolidate Volumes – you can now choose to deploy with fewer volumes, such as consolidating data and WIJ on the same volume.
Follow the Installation Guide for guidance on how to download, install, and get started with IKO. The complete IKO 3.8 documentation
– 47 new announcements
– 60 new questions
– 2 new discussions
✓ 412 new members joined in May
✓ 14,991 posts published all time
✓ 16,408 members joined all time


