New
Article David Hockenbroch · 58 min ago 2m read

Inspired by @Ashok Kumar T's post on the ideas portal here as well as my own wishes for a solution to this problem, I have come up with a simple way to allow more complete and consistent JSON queries without having to specify every desired field. I have created a class that extends the built-in %JSON.Adaptor class and makes its %JSONExportToString and %JSONExportToStream methods accessible through SQL with just a couple of simple SqlProc Methods.

Class DH.JSONAdaptor Extends %JSON.Adaptor [ Abstract ]
{
ClassMethod jsonstring(id, map = "") [ SqlProc ]
{
	try{
		set myobj = ..%OpenId(id)
0
0 8
InterSystems Developer Community is a community of 26,125 amazing developers
We're a place where InterSystems IRIS programmers learn and share, stay up-to-date, grow together and have fun!
New
Question Mark OReilly · 6 hr ago

When using VS code with multiple workspaces it requests "The extension 'InterSystems ObjectScript' wants to sign in using InterSystems Server Credentials. 

Other than having multiple workspaces per environemnt (which never really works for me in principle as i end up code comparing in one manner or another) is there a way to only have intersystems log in to VS code whenever you open an actual workspace itself i.e. click on dev not on loading vscode. 

This would also get around errors of "unauthenticated access rejected by" errors as VS code tries to log in without the password first. 

8
0 46
Article Benjamin De Boe · Nov 9, 2023 3m read

With the release of InterSystems IRIS Cloud SQL, we're getting more frequent questions about how to establish secure connections over JDBC and other driver technologies. While we have nice summary and detailed documentation on the driver technologies themselves, our documentation does not go as far to describe individual client tools, such as our personal favourite DBeaver. In this article, we'll describe the steps to create a secure connection from DBeaver to your Cloud SQL deployment.

22
2 2227
New
Question Norman W. Freeman · 7 hr ago

I have a global with multiple nodes : 

^A("ABC") = ""
^A("DEF") = ""
^A(123) = ""

How to create a new single node in that global, in a way it's always at the end of the global (eg: this will be the very last node being enumerated)

I end up with this code but maybe there is a cleaner and simpler approach : 

set ^A($char(65535)) = "" //should be bigger than any character inserted

I only need to write it once, this code is not intended to be used in a loop or something, just to add something at the end (like a footer).
Usually, the naked global would contains the key of the last node, but that's not

2
0 35
New
Article Zhong Li · Feb 20 5m read

Keywords:  IRIS, Agents, Agentic AI, Smart Apps

Motive?

Transformer based LLMs appear to be a pretty good "universal logical–symbolic abstractor".  They started to bridge up the previous abyss among human languages and machine languages, which in essence are all logic symbols that could be mapped into the same vector space. 

Objective?

Wondering for 3 years we might be able to just use English (etc human natural languages) to do IRIS implementations as well, one day. 

Possibly tomorrow all machines, software and apps will be "intelligent" enough to interact with users in any human languages to get

1
1 77
New
Question Jainam Shah · 7 hr ago

Hi Team,

I am working on an ASTM interface using EnsLib.EDI.ASTM.Service.TCPService.

Environment

InterSystems Ensemble / IRIS (please specify your exact version)

Service class extending:

Class Custom.ASTM.Service.TCPService
Extends EnsLib.EDI.ASTM.Service.TCPService
{
Parameter EOTOPTIONAL = 1;

Parameter ADAPTER = "Custom.EDI.ASTM.Adapter.TCPAdapter"
}

Custom Adapter:

Include EnsEDIASTM
Class Custom.EDI.ASTM.Adapter.TCPAdapter Extends EnsLib.EDI.ASTM.Adapter.TCPAdapter
{
/// Use Carriage Return (ASCII 13) as line terminator
Property Terminators As %String [ InitialExpression = {$C(13)} ];
}
Scenario

I am

0
0 16
New
Article Davi Massaru Teixeira Muta · 14 hr ago 9m read

Global Guard AI

1 Introduction

In environments that use InterSystems IRIS, globals are the physical foundation of data storage. Although system queries and administrative tools exist for metric inspection, global growth analysis is usually reactive: the problem is generally only noticed when there is disk pressure or performance impact.

Global Guard AI was developed to create a snapshot-oriented observability layer, aligned with the idea published in DPI-I-512 — and based on the series of articles written by Ariel Glikman, Sales Engineer at InterSystems:

2
1 33
Article Ariel Glikman · Jun 3, 2024 6m read

Data Collection

This is a step-by-step instruction guide for creating a task to collect data about the InterSystems database and globals therein (as seen in the associated Open Exchange App - find all the associated code there)

UPDATE (Aug 1 2024): Recently I've been asked about the differences between this and the History Monitor functionality. In short, the data collection monitor builds on the history monitor by adding the ability to track growth of individual globals.

Disclaimer: This software is merely for TEST/DEMO purposes.

2
5 436
New
Article Iryna Mykhailova · Feb 20 3m read

I'm happy to share that I was invited to present on the Developer Ecosystem and how it helps everyone become better programmers at the meetup during Iberia READY 2026. Thus, I had a chance to participate in this great event. And you have a chance to see how it went on, because as usual, I will share photos and impressions!

When I arrived, the first thing I saw was the Developer Zone and my presentation about the Ecosystem 🤩

6
0 77
New
Announcement Patrick Jamieson · 22 hr ago

Hello Community,

We are excited to announce that registration is now open for the second cohort of the course:

 🧑‍💻 Developing FHIR Applications Using Python 🧑‍💻

This hands-on program is designed for developers who want to build real-world FHIR applications using Python and InterSystems IRIS for Health. 

👉 Watch 5-minute course overview

📅 Second cohort starts March 29, 2026

1
0 33
New
InterSystems Official Daniel Palevski · 22 hr ago

The 2018.1.12 maintenance releases of InterSystems Caché®, InterSystems Ensemble®, and HealthShare® Health Connect are now Generally Available (GA). 

Please share your feedback through the Ideas Portal using the category Post-Release Feedback so we can build a better product together.

Documentation

You can find the detailed change lists & upgrade checklists on this page:

Early Access Programs (EAPs)

There are many EAPs available now. Check out this page and register to those you are interested.

How to get the software?

Full installation packages for InterSystems Caché

0
0 42
New
Article Ashok Kumar T · 22 hr ago 2m read

In the modern healthcare landscape, finding clinically similar patients often feels like looking for a needle in a haystack. Traditional keyword searches often fail because medical language is highly nuanced; a search for "Heart Failure" might miss a record containing "Congestive Cardiac Failure."

I am excited to share iris-medmatch, an AI-powered patient matching engine built on InterSystems IRIS for Health. By leveraging Vector Search, this tool understands clinical intent rather than just matching literal strings.
## The Core Innovation: Semantic Clinical Search

`iris-medmatch` bridges the

0
0 26
New
Announcement Anastasia Dyubaylo · Feb 13

Hi Community!

We’re excited to announce the launch of a new, hands-on training program:

 🧑‍💻 Developing FHIR Applications Using Python 🧑‍💻

This cohort-based course takes developers from FHIR fundamentals to advanced, real-world healthcare interoperability solutions, with deeper, more practical coverage than typical industry offerings and a strong focus on production-ready skills using InterSystems technology.

3
1 90
New
Article Yuri Marx · Feb 22 4m read

The facial recognition has become the most popular method for validating people's identities, thus enabling access to systems, confirmation of personal and documentary data, and approval of actions and documents.
The challenges are related to performance when the database is very large, accuracy, and especially the privacy of biometric facial data. For these challenges, nothing is better than using InterSystems Vector Search, as it allows:

  1. Performing vector searches in millions of records with much faster responses than traditional methods.
  2. The vector and mathematical models used by Vector
4
3 85
New
Article Henry Pereira · Feb 14 3m read

cover

You’ve seen how tools like Lovable are shaking up web development. People are spinning up entire apps just by talking to an AI, almost like pair‑programming on steroids.

Now imagine bringing that same “vibe coding” experience into healthcare. know, it sounds crazy. Healthcare is complex, full of regulations, and usually gives us a headache just thinking about the interoperability rules.

That’s exactly the space where withLove lives: an AI‑Native, Low‑Code platform built entirely on InterSystems IRIS for Health.

And no, this is not “one more chatbot” that spits out half‑broken code for you to

1
0 26
Article Marco Bahamondes · Jun 24, 2025 3m read

Introduction

InterSystems IRIS allows you to build REST APIs using ObjectScript classes and the %CSP.REST framework. This enables the development of modern services to expose data for web apps, mobile apps, or system integrations.

In this article, you'll learn how to create a basic REST API in InterSystems IRIS, including:

  • A persistent data class
  • A REST class with GET and POST methods
  • A web application to expose the API
  • A full demonstration using Docker

4
3 315
New
Question Yone Moreno Jiménez · Feb 24

Hello, how are you?

Using Healthshare for Interoperability, we often see a wide variety of encoding issues. Some happen when transforming XML to HL7. Some happen the other ay around transforming HL7 to XML.

Is there a valid way to understand which encoding needs to be used?

I ask, because we use SOAP or REST or TCP HL7 services.

And we deliver messages with TCP HL7, SOAP, HTTP Operations.

And we often face this issue where special characters like ñ or á, are not encoded correctly.

Thanks for your replies.

0
0 25
New
Question Enrico Parisi · Feb 19

I need to reproduce a table (in fact a view, but let's start with a simple table 😊) in IRIS as the currently used in Oracle.

I need to expose/project one column to JDBC as CLOB, in my class I have the corresponding property defined as:

Property GlobStream As %Stream.GlobalCharacter;

In JDBC this column is projected as LONGVARCHAR, this is compliant with the documentation but I need to project it as CLOB.

In addition, I'm no expert in JDBC but wit seems that LONGVARCHAR has a Maximum Length 32,700 characters in JDBC, not quite enough for an arbitrary stream.

Is it possible to project a %Stream to

8
0 87
New
Article Pierre-Yves Duquesnoy · Feb 23 1m read

The InterSystems Ready 2026 Conference  is approaching fast — it's a great time to prepare and check your knowledge before attempting one of the Certification exams onsite .

InterSystems certifications aren't easy: you need to practice with questions aligned to the real exam objectives.

exam-prep.es is a free platform built for exactly that: practice, identify weak spots, and show up better prepared.

What you'll find

* 1,200+ practice questions aligned with official certification objectives
* Detailed explanations with links to InterSystems documentation
* Study material covering each exam's

0
3 53
Question Hannah Sullivan · Aug 24, 2023

I have a persistent class (GetOrgUpdatesResponse) that has a property which is a list of another persistent class (Organization).

What would be the best way to cascade deletes so that on deletion of a parent row each object in the list property is then also deleted? 

I have included a sample of my classes here for clarity

Class Integration.ISIS.BO.SyncOrg.Custom.GetOrgUpdatesResponse Extends (%Persistent, Ens.Response)
{

Property Organizations As list Of Organization;// Cascade DeletionProperty NextUpdateBatchID As%String;Property ResultStatus As%String;
}

Where Organization is

12
1 653
New
Article Henry Pereira · Feb 14 3m read

cover

Picture a dark room. The only light comes from a wall of displays and a blinking prompt that politely informs you:

“LINK TO M-U5K-3T: HIGH LATENCY – DIRECT CONTROL DISABLED.”

Perfect.

You are supposed to be a Rover Commander in the Musketeer Corps. Somewhere absurdly far away, you have an autonomous unit parked on a hostile exoplanet. It wants you dead, but it’s also covered in minerals that could fund a small civilization.

The ore on M-U5K-3T is everywhere. Unfortunately, everything else on the surface is actively trying to kill you.

So, we don't pilot. We script.

You aren't driving a car; you are

2
0 42