Managing InterSystems Servers – In-Person September 29-October 3, 2025
– 33 new announcements
– 47 new questions
– 4 new discussions
✓ 350 new members joined in August
✓ 15,403 posts published all time
✓ 17,441 members joined all time
#InterSystems Demo Games entry
⏯️ Health Evolve: Transforming Unstructured Data
Did you know that 80% of healthcare data is stuck in unstructured formats such as fax? If you take a walk down to Mass General in Boston, you'll literally see a state-of-the-art MRI machine next to a fax machine. Healthcare keeps building incredible new technology but can't let go of legacy technology. We call this the "legacy modernization paradox". This short film follows a care manager at Blue Plan who spends her days doing chart reviews, reading faxes line-by-line, struggling to provide her members the care they need. Everything changes when Blue Plan pilots InterSystems Health Evolve, a solution that transforms her faxes into machine-readable FHIR data ready for AI and analysis. To access our fully working Text-to-FHIR prototype, visit HealthEvolve.de.
Presenters:
🗣 @Vishal Pallerla, Sales Architect, InterSystems
🗣 @Erica Song, Sales Engineer, InterSystems
🗣 @Louis Kabelka, Sales Engineer, InterSystems
🗣 Zelong Wang, Sales Engineer, InterSystems
🗣 John Murtha, Health Plan Executive, InterSystems
#InterSystems Demo Games entry
⏯️ Being READY to Tackle Healthcare Enterprise Challenges in a Few Clicks
Managed Cloud Solutions to Help Streamline Your Health Services.
This demo showcases composing several InterSystems Managed Cloud Services to solve various use-cases.
The video is actually built of 6 short chapters (each ~2.5 minutes long) showing each part of the story, demoing a different service.
You can watch each "chapter" individually if you're interested in a specific service, but there is value in viewing the whole composition and observing the full flow.
- 0:00Health Connect Cloud - Medical Device MQTT - HL7v2 for Hospital Operation Systems
- 2:29FHIR Server & FHIR Transformation Service - HL7v2 to FHIR & Repository for Regulation & Exchange
- 5:21FHIR SQL Builder - Providing standard relational access to FHIR data
- 7:22 "FHIR IntelliChat" (see note below) - Natural human language chat with FHIR Server
- 9:37OMOP Solution - FHIR to OMOP transformation & OMOP database with OHDSI tools compliance
- 12:54InterSystems Data Studio for Health - Creating a multi data/app sources fabric
[Note the "FHIR IntelliChat" part is not an actual formal InterSystems service, it is just a demonstration of a possibility (based on this solution by @José Pereira) ]
Presenters:
🗣 @Tani Frankel, Sales Engineer Manager, InterSystems
🗣 @Keren Skubach, Senior Sales Engineer, InterSystems
🗣 @Ariel Glikman, Sales Engineer, InterSystems
#InterSystems Demo Games entry
⏯️ AI Smart Data Fabric
Shows how IRIS for Health can supercharge AI development with a Smart Data Fabric to train and feed their AI Models.
Presenters:
🗣 @Kevin Kindschuh, Senior Sales Engineer, InterSystems
🗣 @Jeffrey Semmens, Sales Engineer, InterSystems
Among the many contributors shaping the InterSystems Developer Community, some bring not only deep technical knowledge but a long-term vision and passion for empowering others. One of these exceptional voices belongs to @John Murray, a veteran of InterSystems technologies, an open-source advocate, and a founding member of the Developer Community.
👏 Let’s take a closer look at John’s remarkable journey and his continuing legacy in the InterSystems ecosystem.
(2).jpg)
InterSystems IRIS interoperability production development involves using or writing various types of components. They include services (which handle incoming data), processes (which deal with the data flow and logic), and operations (which manage outgoing data or requests). Messages flowing through those components constantly require being adapted to consuming applications. Therefore,Data transformations are by far the most common component in interoperability productions.
In the early stages of data transformation development, thetest tool from the Management Portal becomes quite handy.
Customer support questions span structured data (orders, products 🗃️), unstructured knowledge (docs/FAQs 📚), and live systems (shipping updates 🚚). In this post we’ll ship a compact AI agent that handles all three—using:
- 🧠 Python + smolagents to orchestrate the agent’s “brain”
- 🧰 InterSystems IRIS for SQL, Vector Search (RAG), and Interoperability (a mock shipping status API)
I have defined a class with a dynamic object property:
My class
Class test.Dyn Extends %Persistent
{
Property json As %DynamicObject;
/// do ##class(test.Dyn).test()
ClassMethod test()
{
do ..%KillExtent()
for len = 100, $$$MaxStringLength - 1, $$$MaxStringLength, $$$MaxStringLength+1, $$$MaxStringLength *2 {
set sc = ..save(len)
write "Len: ",len, " Result: ",$case($$$ISERR(sc), $$$YES: $System.Status.GetErrorText(sc), : "OK"),!
}
}
ClassMethod save(len)
{
set json = {}
set stream = ..getStream(len-8) // -8 because {"a":""}
do json.%Set("a", stream, "stream")
set obj = ..%New()
set obj.json = json
quit obj.%Save()
}
ClassMethod getStream(len)
{
set stream = ##class(%Stream.TmpCharacter).%New()
if len<$$$MaxStringLength {
do stream.Write($tr($j("",len)," ","A"))
} else {
for i=1:$$$MaxStringLength:len {
do stream.Write($tr($j("",$$$MaxStringLength)," ","A"))
}
do stream.Write($tr($j("",len-i)," ","A"))
}
quit stream
}
}The issue I encounter is that if a length of a serialized json property is more than 3641144 symbols, the object fails to save with the following error (either MAXSTRING or STRINGSTACK):
Length: 100 Result: OK
Length: 3641143 Result: OK
Length: 3641144 Result: OK
Length: 3641145 Result: ERROR #5002: ObjectScript error: <MAXSTRING>%GetSerial+1^%Library.DynamicAbstractObject.1
Length: 7282288 Result: ERROR #5002: ObjectScript error: <STRINGSTACK>%GetSerial+1^%Library.DynamicAbstractObject.1Is there a workaround? I need to store moderately large jsons (10-15 Mb) and dynamic object properties allow for a very convenient access.
$ZSTORAGE is set to -1.
.png)
Hades DatabaseConnector 6.4.0 now does IRIS stuff!
Studio's Find In Files finds nothing if CLS routines are included. The error is WIDE CHAR. After using ##class(%Studio.Project).FindInFiles programmatically and then ZW after the same error I strongly suspect that CodeWalkopdatecopyopt in EnsLib.InteropTools.HL7.Cloverleaf.Parser.cls is to blame. I cannot even open this class, unlike other classes from EnsLib.InteropTools.HL7. This error prevents searching even if System Items are excluded and I would peg EnsLib as System. Any remedy besides updating IRIS? Assuming this is fixed in later IRIS versions.
As part of a recent documentation technical project to optimize the search, I needed to use Embedded Python in my ObjectScript code. The main blocker was passing a Python list from a Python class method to a ObjectScript method. Sending the list by reference to the python method, populating it with the Insert() method, and returning the reference to the ObjectScript method resulted in an list with type %SYS.Python, a process that was straightforward but not efficient.
I explored an alternative method: converting a Python list to an ObjectScript list using JSON as the intermediary format.
#InterSystems Demo Games entry
⏯️ Autonomous Business Intelligent Clerk (ABiC) - Combining InterSystems BI and Generative AI
Our Autonomous Business Intelligent Clerk, or ABiC for short, is a prototype revolutionizing how companies process data and make decisions. Normally, to get insights from data, you’d need IT knowledge or expertise in statistics. But with ABiC, that’s no longer necessary. All you have to do is ask your question in plain language. ABiC understands your interests and intentions, then shows a clear dashboard to guide your decisions. With ABiC, complex data is autonomously analyzed and turned into answers that support users, helping to accelerate business processes. This demo sends the metadata of InterSystems BI cubes to LLM. How does it work? Check out the video for more details!
Presenters:
🗣 @Tomo Okuyama, Sales Engineer, InterSystems
🗣 @Nobuyuki Hata, Sales Engineer, InterSystems
🗣 @Tomoko Furuzono, Sales Engineer, InterSystems
🗣 @Mihoko Iijima, Training Sales Engineer, InterSystems
Disclaimer: the following tutorial attempts to install qpdf-12.2.0 and libreoffice-25.8.1 for HSCV2025.8
Examples for Installing qpdf
Linux & Ubuntu
# 1.I had a need for a Filter, but did not want to recreate the wheel by creating another Data Lookup Table, so instead I created a Linked Table that points to a MS SQL Table outside of IRIS.
Once I had the Linked Table, I created a Class Method Function that would query the Linked Table and return a 1 if a result came back.
ClassMethod CheckPDMProviderType(pInput As%String) As%Boolean
{
set ExtDisplay = ""
&sql(SELECT SecurityGroup_k INTO :ExtDisplay
FROM osuwmc_CPD_SQL.Ref_SecurityGroup WHERE PDMExtDisplay = 1AND SecurityGroup_k = :pInput)
if ExtDisplay = "" {
qInterSystems FAQ rubric
There is data, such as execution log data, that you do not want to return to its previous state even if a rollback occurs during a transaction. The above requirement can be met by placing that data in the IRISTEMP database, which will not be rolled back.
Temporary Globals and the IRISTEMP Database
By mapping the table entities you do not want to roll back to this database, you can retain the information after the rollback.
However, the contents of this database will be cleared when IRIS is restarted, so if you want to keep it permanently, you will need to copy it to a
HealthShare Unified Care Record Fundamentals – Virtual* September 15-19, 2025
*Please review the important prerequisite requirements for this class prior to registering.
- Learn the architecture, configuration, and management of HealthShare Unified Care Record.
- This 5-day course teaches HealthShare Unified Care Record users and integrators the HealthShare Unified Care Record architecture and administration tasks.
- The course also includes how to install HealthShare Unified Care Record.
- This course is intended for HealthShare Unified Care Record developers, integrators, administrators and
IAM - InterSystems API Manager is a great tool for monitoring your traffic. If you are trying to use it in your Kubernetes cluster you may have tried doing a deployment similar to this one:
apiVersion: intersystems.com/v1alpha1
kind: IrisCluster
metadata:
name: iris
spec:
licenseKeySecret:
name: iris-key-secret
configSource:
name: iris-cpf
imagePullSecrets:
- name: intersystems-pull-secret
topology:
data:
image: containers.intersystems.com/intersystems/iris-arm64:2024.1
compatibilityVersion: "2024.1.2"
mirrored: falseHi Community,
We're super excited to share the new video in the "Rarified Air" series on our InterSystems Developers YouTube:
⏯ Practical Cybersecurity Measures for Stronger Organizational Resilience
Hi folks!
It is very easy to import CSV data into IRIS. But what if we want to preserve the original IDs in CSV?
Recently I came across with the situation when I needed to import two csv's into IRIS which were linked by one column referencing to another csv's col: a typical Foreign Key and Primary Key situation, where csv1 contains this column as Primary Key, and csv2 as Foreign key with id's related to csv1.

The image is generated by ChatGPT so don't blame it - it tried its best to generate countries as primary keys with countries.csv-cities.csv relationship :)
Hi,
I need a custom operation on patient type that will receive a business identifier and will search them and for each paient it will return a $everything for all the found patients written with object script
Hi Community,
Please welcome a new feature on Developer Community – the ability to add a link to the official InterSystems Documentation directly at the end of your post.
How it works
When publishing an article, paste the relevant URL from docs.intersystems.com into the InterSystems Documentation link field.
.png)
SUB-AGENT auto stopping

I have a need to create a specific Search Table outside of the EnsLib.HL7.SearchTable specifically for HL7 MFN messages in HealthShare Provider Directory.
Our Code is created in a different namespace then the main HSPD namespace and is mapped within the HSPD namespace mapping.
I created a copy of EnsLib.HL7.SearchTable, named OSU.HL7.SearchTable what all needs mapped to make this new search table available in HSPD namespace?
If I go to Global within the Custom Code Namespace, I cannot see my new Search Table being created.
What am I missing to make sure that the OSU.HL7.SearchTable available
Hi Community!
Welcome to Issue #24 of the InterSystems Ideas newsletter! Let's look at the latest news from the Ideas Portal, such as:
✓ General Statistics
✓ Recently implemented ideas by InterSystems
✓ Recently implemented ideas by Developer Community members
.png)
I'm trying to catch some WorkQueue errors that are happening on 2019 but not on more recent versions.
I'm getting an error when trying to call a class method via a workQueue. It functions properly in 2024.1. When calling the method, it immediately errors. I have logging at the top of the method that never gets set.
The error being returned by Iris is simply an "ERROR #5039: An error occurred while calling function s %sc=##class(|"NS"|Path.To.Class).ClassMethod(.%p1,.%p2)"
The parameter counts match and are appropriate for the method.
When I catch the full stack, it's erroring on the WorkQueue
Hello,
I'm trying to get the Reply Action Code to work with the error message text.
I have this ACK:
MSH|^~\&|APP|FACIL|||20250821143621||ACK|CUEACK_20250821143621|P|2.4 MSA|AE||Failed to queue message
This is some of the Action Codes I've tried:
- E*Failed to queue message=S
- E*Failed=S
- E*"Failed to queue message"=S
- :E*Failed to queue message=S
- :?E*Failed to queue message=S
It's not suspending the message however.
What am I doing wrong?
Thank you
Trying to import a .csp with VS code appears to do nothing.
Making a change to the file, saving it and then doing "Import and compile" results in no output and there is no change to the file on the server.
Plugin version is 3.0.5
Developing with InterSystems Objects and SQL – In PersonSeptember 15-19, 2025
- This 5-day course teaches programmers how to use the tools and techniques within the InterSystems® development environment.
- Students develop a database application using object-oriented design, building different types of IRIS classes.
- They learn how to store and retrieve data using Objects or SQL, and decide which approach is best for different use cases.
- They write code using ObjectScript, Python, and SQL, with most exercises offering the choice between ObjectScript and Python, and some exercises
I’m pleased to announce the release of tree-sitter-objectscript, a new open-source tree-sitter grammar that brings first-class ObjectScript support to modern editors. If you caught the preview at READY ’25, you’ll be glad to know it’s now up on Github:
https://github.com/intersystems/tree-sitter-objectscript
What Does It Provide?
- Fast & Precise Parsing: A powerful grammar for ObjectScript, enabling real-time syntax parsing, smart highlighting, and structural editing in modern code editors.
- Polyglot-Awareness: ObjectScript
.clsfiles often embed SQL, HTML, Python, JavaScript, JSON, CSS, XML, and

