New
Article Guillaume Rongier · Mar 13 6m read

ObjectScript Search icon

If you have ever dug through a large IRIS namespace looking for where a particular string, method call, or pattern was used, you know the pain: there was no built-in way to do a grep-style search across your server-side ObjectScript code from VS Code — at least not without jumping through some hoops.

That is what ObjectScript Search fixes.

Try it today with a simple install from the VS Code Marketplace. If you don't like it, uninstalling is just as easy. But I think you will like it — it is a huge quality-of-life improvement for anyone doing ObjectScript development in VS Code.


5
1 136
New
Announcement Irène Mykhailova · Mar 10

Hi Community!

We’re building a series of short, hands-on Instruqt tutorials to help newcomers get up to speed with InterSystems technologies faster and more effectively. To kick things off, we’ve just released a new tutorial, “Data Models of InterSystems IRIS,” covering the fundamentals of the IRIS multimodel approach. This is exactly the type of focused, concise, practical learning experience we want to expand. And this is where you come in!

We’d love to hear your ideas for other tutorial topics to help developers new to InterSystems IRIS take their first steps with confidence. Please welcome the new sweepstakes:

💡 Topics for hands-on Instruqt Tutorials 💡

6
1 154
Announcement Ali Nasser · Feb 18

Hello DC community, 

InterSystems Certification is currently developing a certification exam for ObjectScript developers, and if you match the exam candidate description below, we would like you to beta test the exam! The exam will be available for beta testing starting February 18th, 2026. 

Beta testing will be completed May 4, 2026.

What are my responsibilities as a beta tester?

As a beta tester, we ask that you schedule and take the exam by May 4, 2026.

5
2 446
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.

1
6 139
New
Question Scott Roth · Mar 12

We are trying to track down significant growth within our Namespaces, one big culprit is Ens.AppData (EnsLib.SQL.Snapshot). 

Within many of our BPL's we use EnsLib.SQL.Snapshot to return Results from External SQL Stored Procedures or Query's. The same EnsLib.SQL.Snapshot context variable is used for many of these calls within a BPL. 

Is there something we should be doing at the end of the BPL to ensure that EnsLib.SQL.Snapshot gets cleaned up and purged from Ens.AppData?

1
0 23
New
Question Yone Moreno Jiménez · Mar 12

Hello everyone, thanks for reading this question.

I am currently working with Ens.Alerting.ManagedAlert in an interoperability production and I am using the alert suppression mechanism to avoid generating duplicate alerts within a defined time window (for example, 30 minutes).

Rule Set

The configuration works correctly in terms of preventing duplicate alerts from being generated, but I have a question regarding observability.

When an alert is suppressed during the configured time window, I can see log messages such as:

        "Managed alert not created for AlertRequest with ID 'XXXX' due to rule 'Rules.

1
0 23
New
Question Scott Roth · Mar 10

How can I create a Task that tells a Ens.BusinessService to execute its SQL query using the EnsLib.SQL.InboundAdapter?

So far I have come up with

Class OSU.Workday.TerminationsTask Extends %SYS.Task.Definition
{

Parameter TaskName As STRING = "OSU - Workday Termination Update";

Method OnTask() As %Status
{
    try{
        // Call BusinessService
        set tSC = ##class(Ens.Director).CreateBusinessService("OSU.DataSource.Workday.TermService",.tService)

        if $IsObject(tService){
            set inputMessage = ##class(Ens.StringContainer).
6
0 66
New
Article Scott Roth · Mar 11 3m read

Background

Emergency Medical Services (EMS) teams often arrive at the emergency department with patients whose demographics are incomplete or unknown—no medical record number (MRN), no confirmed name, and sometimes no date of birth. Yet EMS transportation notes still need to land in the correct chart.

To support safe and reliable documentation, EMS agencies, third-party integration services, and hospital integration teams build secure interfaces that exchange identifiers and clinical messages.

0
0 32
Article Myles Collins · Jul 22, 2025 6m read

Are you familiar with SQL databases, but not familiar with IRIS?  Then read on...

About a year ago I joined InterSystems, and that is how IRIS got on my radar.  I've been using databases for over 40 years—much of that time for database vendors—and assumed IRIS would be largely the same as the other databases I knew.  However I was surprised to find that IRIS is in several ways quite unlike other databases, often much better.  With this, my first article in the Dev Community, I'll give a high-level overview of IRIS for people that are already familiar with the other databases such as Oracle, SQL Server, Snowflake, PostgeSQL, etc.   I hope I can make things clearer and simpler for you and save you some time getting started.

2
3 488
Discussion André Sheydin · Feb 28

Hello everyone,

I am André from MedVertical. We are exploring InterSystems-native ways to operationalize continuous FHIR conformance: repeatable regression runs, baseline/delta comparisons, and evidence-style reporting to detect drift after releases and IG changes.

In many FHIR implementations, validation is done “point-in-time” in pre-prod, but conformance degrades in production due to IG/profile updates, terminology changes, mapping evolution, upstream releases, and configuration drift.

1
2 164
New
Question Hour Abdellatif · Mar 9

I’m trying to find a way to manage globals from our Java application. We have two separate features:

  • Managing tables normally using SQL

  • Managing globals, since some globals exist without class or table definitions

Cache version : Cache for UNIX (Red Hat Enterprise Linux for x86-64) 2016.1.1 (Build 108U_SU), Thu Jul 7 2016 09:39:04 EDT

I tried to retrieve the globals tree, update node values, and append nodes using SQL by calling stored procedures, but I couldn’t find any procedures for adding, updating, or deleting nodes.

I also tried using cacheextreme.jar to access the globals API directly.

10
0 112
New
Question Luis Dellán · Mar 10

How to execute a stored procedure in a remote DB2 database?

Hi Everyone,

I want to access a stored procedure in a remote DB2 database. The stored procedure in question is linked and receives a numeric value, returning a cursor with N number of rows. Sometimes the number of rows reaches hundreds of thousands, so I need to apply pagination.

I've been reading about the %ScrollableResultSet library, but it doesn't allow me to call a stored procedure.

Here's part of the code:
Set pValor=12345678
Set callSql="CALL Paquete.ClaseSpRemoto(?)"
Set rs=##class(%ScrollableResultSet).

0
0 32
New
Article Laurel James (GJS) · Mar 10 3m read

Welcome to the monthly recap of updates and releases to VS Code and InterSystems-related extensions relevant to IRIS developers. 

If you're migrating from InterSystems Studio to VS Code, or want to deepen your knowledge check out the VS Code training courses from George James Software: georgejames.com/vscode-training.


VS Code version 1.110
Kitty graphics protocol in the Terminal - The integrated terminal now supports the Kitty graphics protocol, allowing for high-fidelity image rendering directly in the terminal pane.

0
0 63
New
InterSystems Official Dominic Chui · Mar 9

IPM version 0.10.6 was released on February 24th, 2026. This version is mostly bug fixes, but does add the -export-python-deps flag to the package and publish  commands to include Python dependencies with the IPM module itself. As usual, you can check it out on the GitHub page or through the Community Registry. 

Here's the complete changelog:

Added

  • #1024: Added flag -export-python-deps to publish command

Fixed

  • #996: Ensure COS commands execute in exec under a dedicated, isolated context
  • #1002: When listing configured repositories, only show the TokenAuthMethod when a token is defined.
0
0 56
New
Question Flávio Lúcio Naves Júnior · Mar 6

Hi everyone,

I am trying to configure a FHIR Server to authenticate against an external OAuth server using the OAuth FHIR Client Quickstart, which is available in the newer versions of InterSystems IRIS for Health.

During the configuration process I am encountering an issuer validation error.

I have already verified the issuer URL, and it exactly matches the value returned by the OAuth server’s OpenID configuration endpoint (.well-known/openid-configuration).

Example:

Issuer configured in IRIS
https://login.microsoftonline.com/{tenant-id}/v2.0

Issuer returned by the OpenID configuration
https://login.

3
0 63
New
Question Colin Brough · Mar 5

We have an HL7 feed that contains Lab Results. Each message contains a set of results, identified by a LabReportId. Some LabReportIds can get more than one message / set of results - these are updates, as new results become available, and must be processed in order. Results for different LabReportIds can be processed in any order.

As each message is used to build a PDF, which takes time, we want to run these through a production where the key business process has a Pool Size > 1, while still ensuring that messages for each LabReportId are processed in order.

3
0 86
Question Malaya Acharya · Mar 2

I had configured the environment as follows:

OS: Redhat Linux 9.4

IRIS 2025.2 installed on local directory

IRIS Database: One LVM is created with 20 Storage luns and the LVM is mounted on a mount point. IRIS database is created on that

Primary and Alternate Journal: One LVM is created with 5 Storage luns and the LVM is mounted on a mount point. IRIS database is created on that.

WIJ: One LVM is created with 5 Storage luns and the LVM is mounted on a mount point. IRIS database is created on that.

So Data, WIJ and Journal is mounted on 3 separate mount point.

2
0 86
Article Stephen De Gabrielle · Jun 26, 2019 1m read

This is more for my memory that anything else but I thought I'd share it because it often comes up in comments, but is not in the InterSystems documentation. 

There is a wonderful utility called ^REDEBUG that increases the level of logging going into mgr\cconsole.log. 

You activate it by

a) start terminal/login

b) zn "%SYS"

c) do ^REDEBUG

d) change logging level to FFFFFFFF

if you are on you production system (with lots of traffic) I suggest you quickly reproduce the error, rename the cconsole.log file, and repeat the steps above to set the logging level to FF.

1
2 1576