Hey Community!
We're happy to share the next video in the "Code to Care" series on our InterSystems Developers YouTube:
Hey Community!
We're happy to share the next video in the "Code to Care" series on our InterSystems Developers YouTube:
Hi everyone,
I am trying to create a treeMapChart in IRIS BI that will then be displayed on my DeepSeeWeb dashboard. In the IRIS BI User Portal, this is an example of what my treeMapChart looks like:
I know there is a huge amount of rectangles in this graphic - I care most about the common components (the largest boxes) but I still want all of the boxes to show. However, it projects to my DeepSeeWeb dashboard as the following:
Hello Community,
I’m working on an InterSystems IRIS production that needs to call an external API using OAuth client credentials (client_id and client_secret). For security reasons, I must pass these credentials via environment variables in my Docker container.
In the IRIS terminal, I can successfully retrieve these environment variables using $System.Util.GetEnviron("api-clientid") and $System.Util.GetEnviron("api-clientsecret"). However, inside my Business Operation class (OnMessage method), these environment variables return empty strings.
#InterSystems Demo Games entry
Navigating interoperability and healthcare can be an exciting adventure. In this demo, we will show you how InterSystems IRIS can be the perfect tool to get data - wherever it may lie, in whatever format, into a format of your choice, including FHIR! Once that is done, analytics is a piece of cake with the FHIR SQL Builder and Deep See Web. Let the questing begin!
Presenters:
🗣 @Kate Lau, Sales Engineer, InterSystems
🗣 @Merlin Wijaya, Sales Engineer, InterSystems
🗣 @Martyn Lee, Sales Engineer, InterSystems
🗣 @Bryan Hoon, Sales Engineer, InterSystems
For example, you start debugging the AAA function, which calls the BBB function, then goes to the CCC^ABC function in a different routine and ends up while executing XXX^XYZ. No other routines or functions are visited in this example. What I would like is to get the record of AAA -> BBB -> CCC^ABC -> XXX^XYZ. No marking each function with recording code should be involved: too time consuming, too many functions in real code.
UPD: Iris has built in %SYS.Trace for this purpose but this class is apparently absent in Cache 2017. Did not find any substitutes yet.
This article is a continuation of the IRIS JSON project and features additional methods and insights.
Let's continue with the instance methods
This instance method is used to determine the JSON data type of the %DynamicObject or %DynamicArray.
It returns one of the following strings:
Hey, Developer Community!
We’ve launched a brand-new activity on Global Masters — the Article Bounty!
It’s your chance to share your expertise, help fellow developers, and, of course, earn points while doing it.
👉 Join the August Article Bounty on Global Masters here
Earlier, we launched the Submit an Article Idea challenge — where Global Masters members could suggest new articles, tutorials, how-tos, and more. We received an overwhelming number of fantastic ideas!
👉 Now, once a month, we’ll publish a list of 10 in-demand topics requested by the community.
You can choose a topic from the list, write an article about it, and earn bounty of 🏆 5,000 points when the article is approved.
I have a personal copy of Cache which I use to help me with certain things. The instance resides on my Windows desktop. The apps I use a web enabled. It would be great if I could access my apps via web browser from my laptop without having to keep a copy of Cache on my laptop. It would make it difficult to keep the databases synced. So, if I restart my Cache instance, then I can use get to my apps by entering the url: http://ipadd:57772/csp/user/myapp.cls. but later, after having closed the browser on my laptop, if I try to open a browser session on my desktop I get license limit exceeded. So
Been testing out the Production Validator toolkit, just to see what we can/not do with it. Seems really interesting and there seem to be some use cases for it that can really streamline some upgrades (or at least parts of upgrades) but I was running into so many hurdles with the documentation. I am curious if anyone else has used it.
Did you experience any issues getting it working? Any clarification that you would have liked in the documentation? any use cases that you worked through that made it particularly valuable? etc?
The hurdles I experienced included:
Visual Studio Code releases new updates every month with new features and bug fixes, and the July 2025 release is now available.
Hello Community,
I'm currently planning a system upgrade from Caché (2018.1.8.766) to InterSystems IRIS (2024.1). The environment consists of one database server and three application servers connected via ECP.
I’m considering two possible upgrade approaches:
Hi Guys,
Not sure what should be the url format, but I'm using : https://PBS.products.com:2188/ to post to the below Business Service
But I'm getting "connect ECONNREFUSED 3.209.112.146" error, so am I missing something?
Thanks
#InterSystems Demo Games entry
Kubernetes horizontal pod auto-scaling (HPA) is the key to handle the unpredictable compute workload in healthcare systems. IKO helps orchestrating the IRIS container deployment in Kubernetes including the capability to configure HPA. This demo uses XSLT processing as an example to showcase this type of elasticity.
🗣 Presenter: @Simon Sha, Sales Architect, InterSystems
Hi everyone,
I'm developing an Ensemble process that sends user data from a Business Process to a Business Operation using EnsLib.SQL.OutboundAdapter. The operation is supposed to call a stored procedure on a SQL Server.
The stored procedure expects 3 parameters:@FirstName, @LastName, and @Email.
The procedure works fine when executed directly from SQL Server Management Studio.
However, when I trigger it via Ensemble, I get the following error:
[SQL Server] Incorrect syntax near 'email@domain.com'
This great article sparked some recent private discussion, and I'd like to share some of my own thoughts from it.
The motivating concern boils down to: Why do we need coding rules or conventions at all? What happened to the wonderful era of the Renaissance artist-programmer forging their own path, prior to being supplanted by the craftsman and now (even worse) by AI?
In short, there are a few reasons why coding standards/guidelines are useful, and the Renaissance artist-programmer is not entirely gone.
JSON
JSON (JavaScript Object Notation) is a lightweight, text-based format designed for structured data interchange. It represents data objects consisting of key–value pairs and arrays, and it is entirely language-independent.
Data is at the heart of the digital transformation sweeping healthcare. Radical change requires a new foundation to handle the massive data demands of modern healthcare.
Time to market is crucial as you develop the next therapeutic breakthroughs, genomic insights, and intelligent clinical workflows. You need to deliver them now.
That’s why we’ve extended the power of our InterSystems IRIS Data Platform to address the unique characteristics of healthcare information. InterSystems IRIS for Health is the world’s first and only data platform engineered specifically for the rapid development of healthcare applications to manage the world’s most critical data.

I installed and configure CodeTidy in my local development environment, without InterSystems source-control (git-source-control) and only git for source control.
I would like to use only CodeTidy to stablish an automated Linting and Code Style Validation for InterSystems ObjectScript code triggered by GitHub Actions.
Could you shed some light on how to accomplish that?
I have a table with 5M rows, the table contains lab observation codes and display names, both columns have type varchar(2000) and both are indexed.
The query looks like:
select code_1_text, count(code_1_text)
from demo.observation_lab
group by code_1_text
order by 2 desc
The table contains ~1000 distinct display names.
It takes 4 minutes for the query to complete on a VM with some pretty old Xeon, 4 cores, 32G RAM, NVME SSD and Linux on board.
Isn't it too slow? During the execution I see no active hardware resources consumption - CPU load is 12-25%, RAM is almost free, swap file is not used.
Hi,
sometimes we need more then one Iris container at the same time. Since as containers they always have the same instance name shown in the management portal, it is hard to distinguish the management-portals of the instances. Searching for a way to make it easier I thought I could change the instance name shown in the management portal. I tried "iris rename" in different ways but could only change the configuration name which is shown by "iris list", not the name in the management portal.
Hi Community,
It's time to announce the winners of the InterSystems Developer Tools Contest!
Thanks to all our amazing participants who submitted 17 applications 🔥🔥
%20(2)(1).jpg)
Now it's time to announce the winners!
Hey Community,
It's time for the new batch of #KeyQuestions from the previous month.

Hi Everyone,
Please suggest/share best practices and sample questions that would help me to secure InterSystems HL7 specialist Certification.
I am writing a little app where I press a button on a Zen form. It calls a ZenMethod that uses zenPage.launchPopupWindow() to provide me a way to choose a file. I then click on an upload button that calls a csp cache language script file that runs on the server, that grabs the contents of the file and stuffs it into a global. I want it then close and return to the parent window to continue processing the contents of the file. I have tried placing the javascript code that closes the window and calls a function in the parent window in different places, but it is not closing the window or calling
Hi Community,
Enjoy the new video on InterSystems Developers YouTube:
Hi Community,
Let's meet at the online meetup with the winners of the InterSystems Developer Tools Contest! It's a great opportunity to chat with the InterSystems Experts team and our contestants.
Winners' demo included!
Date & Time: Friday, August 8, 11:30 am EDT | 5:30 pm CEST
Hello Community,
I’d like to know how I can update my login email address from the profile section.
When I click the "Edit" option in my profile, it redirects me to login.intersystems.com. However, even on that page, I don’t see an option to edit the login email address. [unable to edit]
Could someone please guide me on how to change my login email?
Thanks in advance!
Hi I have a SDA3 created from large CCDA file, i am trying to map the SDA object to Stream using tSDA.ToQuickXMLStream(.tSDAOut).. i am getting xml parse error.. it works when the files are smaller.. Is there a workaround to get SDA to a stream