InterSystems Developer Community is a community of 26,520 amazing developers
We're a place where InterSystems IRIS programmers learn and share, stay up-to-date, grow together and have fun!
New
Question Ikh Nam · 2 hr ago

Hi all,
I'm trying to learn Intersystems Iris. And I have a question.
How can I use left arrow key with if function. Also if it is possible, teach me that how can I make backspace to edit data?
P.S Sorry for bad English.
new var,key,curPos
w $char(27)_"[2J"_$char(27)_"[H"
var="12345abcde"
curPos=$length(var)+1
w $char(27)_"[3;1H"_"First var= "_var
for {
read *key
#; Left Arrow Key
if key="?" {
}
#; Right Arrow Key
elseif key="?" {
}
#; Backspace
elseif key=8 {
}
elseif key=9 {
quit
}
}
!,"Last var= ",var
Kind Regards,
Ikh

1
0 15
New
Article Jorge Jaramillo Herrera · Mar 30 7m read

A Continuous Training (CT) pipeline formalises a Machine Learning (ML) model developed through data science experimentation, using the data available at a given point in time. It prepares the model for deployment while enabling autonomous updates as new data becomes available, along with robust performance monitoring, logging, and model registry capabilities for auditing purposes.

InterSystems IRIS already provides nearly all the components required to support such a pipeline. However, one key element is missing: a standardised tool for model registry.

1
0 105
New
Question Scott Roth · 17 hr ago

I am trying to built a Task that kicks off a Workflow to pull data into HSPD, and when I try to test the Task

ClassMethod TestTask()
{set tTask = ##class(OSU.Workday.TerminationsTask).%New()set tTask.DaysBack = 1 $$$ThrowOnError(tTask.OnTask())}

I keep getting TestTask+3^OSU.Workday.TerminationsTask.1 *%Exception.StatusException ERROR <Ens>ErrConfigDisabled: Configuration item 'OSU.DataSource.Workday.TermService' is disabled

But within the Namespace the OSU.DataSource.Workday.TermService shows enabled.

Here is my Task that I am using...

Class OSU.Workday.TerminationsTask Extends %SYS.
3
0 25
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 💡

17
2 337
New
Announcement Larry Finlayson · 16 hr ago

Managing InterSystems Servers – Virtual  May 4-8, 2026

  • Configure, manage, plan, and monitor system operations of InterSystems Data Platform technology
  • This 5-day course teaches system and database administrators how to manage InterSystems® Data Platform technology which powers all of our products. 
  • Learn to install, configure and secure the data platform, configure for high availability and disaster recovery, and monitor the system. 
  • Students also learn troubleshooting techniques.

SELF REGISTER HERE

0
0 6
Article Irene Mykhailova · Apr 21, 2025 3m read

Migrating from Oracle, MSSQL, or other purely relational database systems to a multimodel InterSystems IRIS is a strategic decision that requires careful planning and execution. While this transition offers significant benefits, including enhanced performance, scalability, and support for modern architectures, it also comes with challenges. In this article I will highlight some of the considerations connected to coding to ensure a successful migration. I will leave everything connected to an actual migration of structures and data outside the scope of this article.


First, when you're considering migrating to a different database system, you need to understand your business logic, whether it's on the side of the application (application server) or the database server. Basically, where do you have your SQL statements that you will need to potentially rewrite

4
1 352
New
Article Developer Community Admin · 18 hr ago 8m read

For software engineers and data architects evaluating data platforms for risk and compliance consolidation in financial services.

Overview

Financial institutions typically run separate applications for risk management and regulatory compliance, creating fragmented data landscapes that are difficult to query and expensive to maintain. InterSystems IRIS is a distributed HTAP data platform that allows organizations to consolidate these systems onto a single, unified data layer.

0
0 20
New
InterSystems Official Daniel Palevski · 22 hr ago

Summary

Alert ID 

Product & Versions Affected 

Risk Category & Score 

Explicit Requirements 

HSIEC-12800

InterSystems IRIS® for Health 

InterSystems Health Connect 

version
2026.1.0.233.0

System Stability Concern: 5 (High)

1. HL7-to-SDA3 transformations are in use

2. Medication-related messages include TQ1 segments

3. TQ1-3 Repeat Pattern contains multiple repetitions

Issue

An issue has been identified in the HL7-to-SDA3 transformation logic that can cause an infinite loop when processing certain medication-related HL7 messages.

0
0 25
Article Chi Wan Chan · Oct 30, 2025 2m read

Hi All,

First I want give a Shout Out to @Theo Stolker  and @Rupert.Young. Because they helped me with the solution.

 When you're using the EnsLib.SQL.Snapshot as a Property in the Response Message to return Snapshot data (,e.g.: from Business Operation to Business Process,) the Snapshot data won't be cleaned with the Purge messages task/service.

Class ResponseMessage Extends Ens.Response

{

    Property SnapshotProp As EnsLib.SQL.Snapshot;

}

The data will be stuck in the global: ^Ens.AppData. You can find it with this query in System>Globals:  ^Ens.AppData("EnsLib.SQL.

3
1 122
Question Kevin Mayfield · Jan 27

I'm using this service to create a FHIR facade. 
I want to return OperationOutcome to the calling application when I detect an error. 
My code at present is :

set quickStreamOut=##class(HS.SDA3.QuickStream).%New()

set operationOutcome = ##class(HS.FHIR.DTL.vR4.Model.Resource.OperationOutcome).%New()

s issue = ##class(HS.FHIR.DTL.vR4.Model.Element.OperationOutcome.issue).%New()

s issue.severity = "error"

s issue.code = "exception"

s issue.details = ##class(HS.FHIR.DTL.vR4.Model.Datatype.CodeableConcept).%New()

try {

s issue.details.text = exception.
1
0 77
New
Announcement Anastasia Dyubaylo · Apr 4
0
0 13
Question Jacinto Busquets · Mar 20

I created a table profile dashboard on Power BI, but I wonder if is possible to do it in Iris by creating a class.

HealthShare Clinical Viewer 2022.2.2 Build: 1000 Adhoc: 23127 [HealthShare Modules: Core:24.0 + Clinical Viewer:24.0] - IRIS for UNIX (Red Hat Enterprise Linux 8 for x86-64) 2022.1 (Build 209_0_23127U) Mon Feb 12 2024 18:21:53 EST [Core:24.0|Clinical Viewer:24.0]

5
0 79
New
Announcement Anastasia Dyubaylo · Apr 3

Hey Community,

The READY 2026 agenda is taking shape, and we're thrilled to give you a first look at what's in store.

This year's event runs April 27–30 at the Maryland Convention Center, and the session roster is packed — more than 80 sessions spread across four days, designed to assist you in whatever you need, whether you're deep in the code or shaping your organization's technology strategy.

The tracks cover a broad range of topics this year:

1
0 39
New
Article Brett Saviano · Mar 30 2m read

The official InterSystems VS Code extensions are packed with features that make developing with InterSystems products a breeze. Today I'd like to highlight some small but useful features that you may have missed.

Show All Class Members

You can view all members of the current class, including inherited members, with the click of a button. Just click on the class icon in the top-right corner of the editor window and a filterable list of all members will appear. Clicking on one will reveal it in an editor tab.

7
2 138
Article Vachan C Rannore · Aug 18, 2025 3m read

While starting with Intersystems IRIS or Cache, developers often encounter three core concepts: Dynamic Objects, Globals & Relational Table. Each has its role in building scalable and maintainable solutions. In this article, we'll walk through practical code examples, highlight best practices, and show how these concepts tie together. 

1. Working with Dynamic Objects:

Dynamic objects (%DynamicObject and %DynamicArray) allow developers to manipulate JSON-like structures directly in Objectscript. They are especially useful for modern applications that need to parse, transform or generate JSON.

4
6 306
Article Irène Mykhailova · Aug 19, 2025 2m read

Hi Community,

Sometimes you may need to merge multiple accounts or simply update the email address you use across the different portals in the InterSystems Developer Ecosystem. Since each portal works a little differently, here’s a guide to help you through the process.

Change your email

If you’d like to use a different email (for example, use a work email instead of a personal one, or vice versa), here’s how to update it across the portals:

1. Update your email in InterSystems SSO. To do this:

  • follow the prompts on screen to change your email
4
3 215
New
Discussion Anastasia Safronova · Mar 30

READY 2026 is almost here, and we’re really curious to hear what everyone is looking forward to this year 🚀

What are you most excited about? It could be a topic you want to explore, a question you’re hoping to get answered or something you’re simply curious about.

Share your thoughts below! We’d love to hear what’s on your mind and see what others are excited about too 💬

Feel free to read through the replies and like the ones you relate to! 😊

6
0 124
Article Robbie Luman · Aug 15, 2025 7m read

Dynamic Entities (objects and arrays) in IRIS are incredibly useful in situations where you are having to transform JSON data into an Object Model for storage to the database, such as in REST API endpoints hosted within IRIS. This is because these dynamic objects and arrays can easily serve as a point of conversion from one data structure to the other.

5
4 410
New
Article Jinyao · Apr 2 2m read

Motivation


Why do we need this?

  1. Lack of Compiled Context: AI tools only see source code; they don't know what the final compiled routine looks like.

  2. Macro Hallucination: Because AI doesn't see our #include files or system macros, it often makes them up, wasting time during debugging.

  3. The Documentation Gap: Deep logic optimization often requires understanding internal macros that aren't fully covered in public documentation.

  4. Manual Overhead: Currently, the only way to fix this is to manually use the IRIS VS Code extension to find the "truth" in the routine.

1
0 51
Discussion Gabriel Ing · Mar 4

Anyone up for a round of golf?

Are you fed up of making a machine write code for you? Do you miss thinking through problems yourself? Then you are in luck, this round, I propose adding the rule of no AI use. obviously its a game of honor with no prize, so I shan't be enforcing this, but you'll know... 

Challenge:

Create a function which takes a string as a parameter, and returns the length of thelongest sequence of alternating consonants and vowels. The sequence is broken by having two vowels or two consonants in a row.

10
1 250