Hi InterSystems Community! I'm Sidd one of the interns at the Singapore office and I recently had the chance to develop to develop a driver to connect IRIS to Metabase to help some of the Sales Engineers here. I was encouraged to share it here so that if any others have a similar issue they can use the driver and as well as get some feedback on potential improvements. The full GitHub repo with the quick start step, brief overview and the driver building process can be found here.
Until now i used $ZF(-1), in older Caché versión, now I try to use $ZF(-100), i do:
REST>w $ZV Cache for Windows (x86-64) 2018.1.4 (Build 505_1) Thu May 28 2020 10:12:49 EDT REST>s a=$zf(-100,"/SHELL","dir") S a=$ZF(-100,"/SHELL","dir") ^ <NOTOPEN>
What is wrong?
Thanks in advance
Hi Community,
If you've decided to leave the InterSystems Developer Community, we're sorry to see you go! This guide will walk you through the steps to permanently delete your account.
⚠️ Before you begin: please note that deleting your account is irreversible. If you simply want to stop receiving notifications, consider updating your notification settings.
How to request account deletion:
🛠️ Managing InterSystems InterSystems API Manager (IAM = Kong Gateway) configurations in CI/CD
🔍 Context: InterSystems IAM configurations
As part of integrating InterSystems IRIS into a secure and controlled environment, InterSystems IAM relies on Kong Gateway to manage exposed APIs.
Kong acts as a modern API Gateway, capable of handling authentication, security, traffic management, plugins, and more.
However, maintaining consistent Kong configurations (routes, services, plugins, etc.) across different environments (development, testing, production) is a major challenge.
Our goal on the Developer Community is to foster a high-quality, trustworthy, and original body of technical content created by and for developers. While AI tools like ChatGPT can be helpful in the writing process, we expect all published content to reflect authentic expertise and personal understanding. If you have any questions or wish to discuss your coding problem with an AI, consider using our Developer Community AI chat.
Acceptable Use of AI
We recognize that AI tools can assist with editing and clarity. You may use them in the following ways:
- To fix grammar, spelling, and punctuation.
Hi Community,
Enjoy the new video on InterSystems Developers YouTube:
⏯ From Idea to Impact: The InterSystems Approach @ Global Summit 2024
Hi,
After converting from Ensemble 2018 to IRIS 2024 I noticed that HTML tag is not recognized?
.png)
I just copied & pasted this same from Ensemble to IRIS and in Ensemble looks fine!?
.png)
Thanks
Hello Community!
We have this json payload for an api request we are making.
{
"fromDirectAddress" : "john@meda.com",
"toDirectAddress" : "smith@domain.
Hello everyone,
I'm using EnsLib.TCP.TextLineOutboundAdapter to communicate with a third-party system over TCP/IP. The issue is that the system sends back only an integer (e.g. 1001 or -1) without any terminator (like $c(10)).
The adapter expects a terminator and always times out with ErrTCPTerminatedReadTimeoutExpired, even though the correct data is received. Here an example of an error:
[TCPSender] Errore nell'invio: ERROR <Ens>ErrTCPTerminatedReadTimeoutExpired: TCP Read timeout (15) expired waiting for terminator 0, data received ='1005'
Trying different terminators (e.g.
I'm trying to print from Cache and I have setup the device, but keep getting a message that someone else is using it. this is RHEL 7.9. I have cups running and I can print from the command line. I have also issued this command: lpadmin -p KM501L -u allow:all
what am I missing
thanks
Paul
Hey Community,
Last week, the InterSystems team held our monthly Developer Meetup in a new venue for the first time ever! In the AWS Boston office location in the Seaport, over 71 attendees showed up to chat, network, and listen to talks from two amazing speakers. The event was a huge success; we had a packed house, tons of engagement and questions, and attendees lining up to chat with our speakers afterwards!

Jayesh presents on Testing Frameworks for Agentic Systems to a full house
InterSystems IRIS 2025.2 introduces the IRISSECURITY database, the new home for security data. Unlike IRISSYS, the previous home for security data, IRISSECURITY can be encrypted, which secures your sensitive data at rest. In a future version, IRISSECURITY will be mirrorable.
This version also introduces the %SecurityAdministrator role for general security administration tasks.
The changes described here affect both continuous delivery (CD) and extended maintenance (EM) release tracks. That is, starting with versions 2025.2 (CD, released on 23 July, 2025) and 2026.
Hello Community
The InterSystems IRIS Community License for Iris version 2024.1 is about to expire. I would like to know if there’s a way to extend this license, or if I need to upgrade to the latest version of Iris.
Thanks!
Hi Community!
We’re pleased to announce that several Early Access Programs (EAPs) are now open for registration. These programs provide developers with the opportunity to explore upcoming features and technologies from InterSystems before their general release.
By joining an EAP, you can:
- Evaluate and test new functionality
- Provide direct feedback to product teams
- Help shape the future direction of InterSystems platforms
If you're interested in contributing to the evolution of our tools and getting early insight into what's coming next, we encourage you to review the following available programs and sign up:
At hackathons that InterSystems participated and I supported, many students were asking how all their teammates could use the same IRIS database that they spun up in a container. I suggested using ngrok to expose their localhost IRIS and realized we don't have documentation on that. Hence, I thought this would be great to let more people knwo about this powerful technique for enhancing collaboration during development and testing.
Step-by-Step Guide to Exposing InterSystems IRIS with ngrok
This guide will walk you through the process of exposing your local InterSystems IRIS instance using ngrok.

This will be an introduction to Python programming in the context of IRIS.
Before anything I will cover an important topic: How python works, this will help you understand some issues and limitations you may encounter when working with Python in IRIS.
All the articles and examples can be found in this git repository: iris-python-article
How Python works
Interpreted Language
Python is an interpreted language, which means that the code is executed line by line at runtime even when you import a script.
What does this mean ? Let's take a look at the following code:
# introduction.Hello Again,
InterSystems Certification is still looking for people to beta test the InterSystems IRIS SQL Professional Certification exam. This is a great way to earn the certification for free! We have extended the deadline of the beta test to October 30, 2025.
Please note, only candidates with the pre-existing InterSystems IRIS SQL Specialist certification are eligible to take the beta. For details, see the original announcement.
Thank you!
Hey Community!
We're happy to share the next video in the "Code to Care" series on our InterSystems Developers YouTube:
⏯ Agentic AI in Action: Building a Decision-Making Loop with LLMs
Faced with the enormous and evergrowing amounts of data being generated in the world today, software architects need to pay special attention to the scalability of their solutions. They must also design systems that can, when needed, handle many thousands of concurrent users. It’s not easy, but designing for massive scalability is an absolute necessity.

Software architects have several options for designing scalable systems. They can scale vertically by using bigger machines with dozens of cores. They can use data distribution (replication) techniques to scale horizontally for increasing numbers of users. And they can scale data volume horizontally through the use of a data partitioning strategy. In practice, software architects will employ several of these techniques, trading off hardware costs, code complexity, and ease of deployment to suit their particular needs.
This article will discuss how InterSystems IRIS Data Platform supports vertical scalability and horizontal scalability of both user and data volumes. It will outline several options for distributing and partitioning data and/or user volume, giving scenarios in which each option would be particularly useful. Finally, this paper will talk about how InterSystems IRIS helps simplify the configuration and provisioning of distributed systems.
As foreign tables are behind a paywall (booo); we have a external cache system using the intersystems ODBC driver or usually a .jar CacheDB.jar.
The requirement is :
"Create a copy of the external table once a day to perform comparisons to detect changes"
We could go full code and this is what we will do but trying the following should ideally work
CREATE TABLE Sample.YoungPeopletwo AS
SELECT *
FROM Pennine_TIE_Clinicom_Link.Hello,
I need to expose InterSystems HealthInsight dashboards over the internet to external operators. The authentication flow is managed externally. When a user is authenticated, our system receives an HTTP request with specific headers (e.g., operator’s fiscal code and hospital identifier) that we need to extract in order to:
- Authorize the user to access the dashboards.
- Apply row-level security on the dashboards, filtering the data by hospital and user role.
Hi,
Using the below code to connect and get data from a server:
{ Method GetUsername() As %String
{
quit ""
} /// Returns the password to use for authentication with the web socket
/// @API.Overrideable
Method GetPassword() As %String
{
quit ""
} Method GetSSLConfiguration() As %String
{
q "RTLS"
}}
{ Method OnOpen()
{
S ^badis("mess",3)=1
if $increment(%ct("O")) set io=$io use 0 write "OPEN",!
So I would like to start a production with a service that has an SQL trigger for after and INSERT. Then I would like it to start a process. Could someone help me in the direction of a solution, please and thanks.
Hi,
We have just upgraded the Trusts test Health Connect instance from 2021.1 to 2025.1 and now the the Rules and DTL editors, in the Management Portal, timeout after 10 - 20 minutes of inactivity.
In 2021.1 we were able to disable this timeout using: set ^EnsPortal("DisableInactivityTimeout","Portal") = 1, however this no longer works with 2025.1, and is being ignored.
It may be being ignoring this global setting because the editors are no longer using the default Web Application for the Namespaces, and are using the: /ui/interop/rule-editor and /ui/interop/dtl-editor Web Applications.
Hi Guys,
I'm using below to retrieve advertising data from Cassia AC server, but the problem is that its a live connection so the Httprequest.Get(HttpURL) call will hang and doesn't exit & return the data so is there a way for return and after say 30 secs from this live data? or is there something EventSource or something similar where I can pass the URL call then after say 30 secs I can end & exit the call to return the collected data?
S BleMac="DC:0D:30:9E:3A:EC",GatewayMac="CC:1B:E0:E2:56:18"
S Token=##class(SX3.Task.TemperatureCollection).GetAuth()
Set Httprequest=##class(%Net.HttpRequest).
Hello Community,
We're thrilled to invite all our Developer Community members (both InterSystems employees and not) to participate in our next contest!
💡 The 4th InterSystems Ideas Contest 💡
We're looking for your innovative ideas to enhance InterSystems IRIS and related products and services. We encourage suggestions based on real-life use cases, highlighting the tangible benefits your idea will bring to other users and how it will enhance developers' experiences with InterSystems technology.
📅 Duration: June 9 - July 20, 2025
🏆 Prizes for the best ideas and a random draw!
🎁 Gifts for everyone: A special gift will be given to each author whose idea is accepted in the contest.
.png)
>> SUBMIT AN IDEA <<
If one of your packages on OEX receives a review you get notified by OEX only of YOUR own package.
The rating reflects the experience of the reviewer with the status found at the time of review.
It is kind of a snapshot and might have changed meanwhile.
Reviews by other members of the community are marked by * in the last column.
I also placed a bunch of Pull Requests on GitHub when I found a problem I could fix.
Some were accepted and merged, and some were just ignored.
So if you made a major change and expect a changed review just let me know.
Based in the US for a fully remote, permanent role. Applicants must have development/programming experience with Cache Object Script language.
Contact:
Matthew Churchill, matt.churchill@arcaresourcing.com
Hello InterSystems Community,
I'm working with HealthShare, and need to create a user account for our development environment with specific access requirements.
Join us on Thursday to see the new features of Deltanji source control, version 8.1.
We'll be demoing our new Git Location Driver along with other functionality and usability improvements.
The Git Location Driver enables Deltanji to integrate directly with Git repositories, makes Deltanji the perfect source control companion to those who use Git-based repos by providing tighter integration with InterSystems IRIS.
Date: Thursday, July 17th
Time: 11 - 12pm EDT | 4 - 5pm BST | 5 - 6pm CET
Location: Online (register for details)
Can't make it? Email info@georgejames.

