Announcement John Murray · Jul 23, 2025

Users of the %UnitTest framework can now get test coverage information inside VS Code by combining the latest release (v2.0.0) of the InterSystems Testing Manager extension with @Timothy Leavitt's impressive Test Coverage Tool.

Above you can see the Test Coverage pane, which I have moved to the secondary sidebar on the right so it can more easily be explored in conjunction with the Test Explorer on the left.

Notice how the most recent test run (of all Test Coverage Tool's own unit tests) covered the BitValue method of TestCoverage.Procedures but not the BitCount method (nor 6 other methods

0
0 121
InterSystems Official Daniel Palevski · Jul 23, 2025

InterSystems is pleased to announce the General Availability (GA) of the 2025.2 release of InterSystems IRIS® data platform. This is a Continuous Delivery (CD) release. Please note that the GA versions of InterSystems IRIS for Health™ and HealthShare® Health Connect™ 2025.2 are currently withheld due to mirroring limitations introduced by security updates (details below).

Release Highlights

This release introduces impactful enhancements across security, developer experience, operations, and interoperability. Notable new features include:

1.       Security Enhancements with the New IRISSECUR

0
1 216
Article Patrick Jamieson · Jul 19, 2025 10m read

Optimizing Performance of Apache Web Server and Web Gateway

By Patrick Jamieson, M.D., Product Technical Manager, InterSystems IRIS for Health

When working with InterSystems IRIS or IRIS for Health, an external web server like Apache2 or NGINX is essential for managing HTTP workloads, especially for FHIR servers. Starting with version 2023.3, the private Apache server was removed from the installation kit (except for Community Editions and Health Connect). This article provides practical tips to test and optimize the performance of your Apache web server and InterSystems Web Gateway con











1
3 222
Question Phillip Wu · Jul 22, 2025

Hi,

To add or get information about a user for the management portal you can [within the portal]:
 System Administration > Security Management > Users 

Is it possible to:

1. List a user, user's properties including roles

2. Add a user and set user's properties including roles

3. Set a user's password

for the management portal using a program eg. Objectscript and/or SQL?
If so, how can this be done?
It would be great if you have examples.

5
0 86
Question Ronaldo Nascimento · Jul 22, 2025

Working on wrapping an IRIS Cache ObjectScript method that runs for a few seconds. Trying to get UI updates to show BEFORE the method runs in an async/await function. But it seems to be running synchronously rather than asynchronously . So my question is does IRIS/ObjectScript CSP pages support futures with JavaScript or does it run all synchronously.

2
0 128
Article Myles Collins · Jul 22, 2025 7m 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.

1
1 345
InterSystems Official Carmen Logue · Jul 22, 2025

InterSystems Reports version 25.1 is now available from the InterSystems Software Distribution site in the Components section.  The software is labeled InterSystems Reports Designer and InterSystems Reports Server and is available for Mac OSX, Windows and Linux operating systems.  

This new release brings along enhancements and fixes from our partner, insightsoftware.  InterSystems Reports 25.1 is powered by Logi Report Version 25.1 which includes:

- support for dynamic subject construction in scheduled email distribution of reports

- ability to easily switch between metric and imperial

0
0 131
Announcement Stephan Mohr · Jul 17, 2025

#InterSystems Demo Games entry


⏯️  The Ultimate 3D Industrial Simulation powered by a Game Engine with InterSystems IRIS

In this demo, InterSystems IRIS Interoperability comes alive in an amazing, game-like user experience based on our Ultimate Control Tower demo. We visualize machines in a virtual 3D factory building, interacting with InterSystems IRIS in real time—displaying current statuses and sensor data, simulating machine outages and predictive maintenance scenarios, and triggering workflow tasks and actions in InterSystems IRIS. By using a mobile app on a tablet—and even a VR headset for a fully immersive experience—we unleash the power of InterSystems IRIS.

Presenters:
🗣 @Stephan Mohr, Sales Engineer, InterSystems
🗣 @Jannis Stegmann, Sales Engineer, InterSystems
🗣 @Benjamin Kiwitz, Intern, InterSystems
🗣 @Tuba Incedag, Intern, InterSystems

2
1 128
Article Ray Wright · Jul 22, 2025 5m read

Test Objectives

InterSystems has been testing Vector Search since it was announced as an “experimental feature” in IRIS 2024.1. The first test cycle was aimed at identifying algorithmic inefficiencies and performance constraints during the Development/QD cycle. The next test cycle used simple vector searches for single threaded performance analysis to model reliable, scalable and performant behaviour at production database scale in IRIS, and performed a series of comparative tests of key IRIS vector search features against PostgreSQL/pgvector. The current test cycle models the expected behaviour of real-world customer deployments using complex queries that span multiple indices (vector and non-vector) and run in up to 1000 concurrent threads. These tests will be run against IRIS, PostgreSQL/pgvector, and ElasticSearch

0
0 141
Article Vinicius Maranhao Ribeiro de Castro · Apr 2, 2020 4m read

In this 3-part series of articles, is shown how you can use IAM to simply add security, according to OAuth 2.0 standards, to a previously unauthenticated service deployed in IRIS.

In the first part, was provided some OAuth 2.0 background together with some IRIS and IAM initial definitions and configurations in order to facilitate the understanding of the whole process of securing your services.

This part will now discuss and show in detail the steps needed to configure IAM to validate the access token present in the incoming request and forward the request to the backend if the validation su


1
0 1190
Question Rüya Gökoglu · Jul 21, 2025

Dear InterSystems-Maintainer Team,


I am currently conducting a comparative evaluation of FHIR clients as part of my
bachelor thesis in health informatics. One of my evaluation criteria is the response
time to support inquiries.


Therefore, I would like to kindly ask the following question as part of my analysis:
How can I read and write custom FHIR extensions using your client library?


If available, could you point me to any documentation or examples?


Many thanks for your time and support!


Kind regards,
Rüya Gökoglu

1
0 73
Question Touggourt · Jul 20, 2025

Hi Guys, 

I've my users set in Security->Users in SMP, but I get the below error when trying to long in my application, any clues what this error means?  

"0 "_$lb($lb(864,,,,,,,,,$lb(,"US-SERENITY",$lb("e^UsersCSPLogin+87^%SYS.SECURITY^1","e^CSPLogin+103^%SYS.cspServer^1","e^CSPDispatch+909^%SYS.cspServer^1","d^CSPDispatch+907^%SYS.cspServer^1","d^ProcessRequest+1^%CSP.Session.1^1","d^Request+692^%SYS.cspServer2^1","d^Request+25^%SYS.cspServer2^1","d^ProcessRequest+1^%CSP.Request.1^1","d^css+15^%SYS.cspServer2^1","d^Server+64^%SYS.SERVER^2","d^^^0"))))

BTW my login page extends %CSP.Login

4
0 143
Announcement Ben Spead · Jul 17, 2025

Hello CCR Users at TrakCare sites!

The Certification team at InterSystems Learning Services is currently developing an InterSystems CCR EHR (aka TrakCare) Specialist certification exam, and we are reaching out to our community for feedback that will help us finalize the exam contents.

How do I provide my input? Complete our Job Task Analysis (JTA) survey! We will present you with a list of job tasks, and you will rate them on their importance as well as other factors.

How much effort is involved? It takes about 20 – 30 minutes to fill out the survey. You can be anonymous or provide your ema

1
0 121
Question Sheetal Kairawala · Jul 21, 2025

HyperEvent Error Details

HTTP Code: 500

Error: Error invoking instance method: SetSearchCriteria:

<INVALID OREF>zInitSearchCriteria+15^EnsPortal.Template.filteredViewer.1

Set %ret = %obj.SetSearchCriteria()

%obj='6@EnsPortal.MessageViewer'

==========

STACK:

zInitSearchCriteria+15^EnsPortal.Template.filteredViewer.1 (1):

zSetSearchCriteria+1^EnsPortal.Template.filteredViewer.1 (1):

zSetSearchCriteria+2^EnsPortal.MessageViewer.1 (1):

@ (1):

zInvokeInstanceMethod+133^%ZEN.Controller.1 (1):

zInvokeInstanceMethod+2^%ZEN.Component.abstractPage.1 (1):

@ (1):

zCSPEvent+10^%CSP.Broker.1

0
0 72
InterSystems Official Raj Singh · Jul 21, 2025

InterSystems is pleased to announce that version 3.0.5 of the VS Code - ObjectScript extension has been released. This release includes many bug fixes, as well as changes to the telemetry data we collect. Collecting more product usage data helps InterSystems identify and prioritize fixes and enhancements that will have the most positive impact for you, our users. Personally identifiable information (PII) will never be collected, and telemetry can be disabled using the telemetry.telemetryLevel setting. The full list of data points that are collected can be found here. Thank you for using our ex

0
0 204
Question Mark Lierman · Jul 18, 2025

I'm following this guide as well as the sample.cs file and getting an error message on this line
cache_connection.Connect();

The error is:
Caught GlobalsException: lc_conn::connect_device returned Db_err: source: lc_conn::connect()  message: lc_conn::connect: CacheSecureStart returned -15: <ACCESSDENIED>

I've tried many variations of Namespace + Username + Password and they all result in that error, even though I can connect to the namespace just fine using other means. 

1
0 75
Article Guillaume Rongier · Jul 21, 2025 2m read

img

This will be a short article about PEP 8, the Python style guide.

What is PEP 8?

In a nutshell, PEP 8 provides guidelines and best practices on how to write Python code.

  • variable names should be in snake_case
  • class names should be in CamelCase
  • function names should be in snake_case
  • constants should be in UPPER_CASE
  • indentation should be 4 spaces (no tabs)
  • private variables/functions should start with an underscore (_)
    • because in Python private variables and fonctions doesn't exist, it's just a convention
  • your script should not run when imported
    • remember that when you import a script, the
1
0 196
Question Dmitrii Baranov · Jul 15, 2025

I need to implement a retry policy for an incoming message queue containing thousands of relatively small messages.

Successfully processed messages should be immediately removed from the queue.

If an error occurs while processing a message, the message should be sent back at the end of the queue, and the pause before re-processing this message should increase geometrically (1-2-4-8-16 seconds, and so on). In languages that support the async/await pattern, I'd simply create a delayed timer that triggers a fire-and-forget task. This would prevent blocking the main thread. How can this be impleme

8
0 187
Question Phillip Wu · Jul 21, 2025

Hi,

I have a mirrored database called ROUTER.

I have a primary server T1 and a "Disaster Recovery" server T2.

When I activate ROUTER database on T2, I get the error it says the "Database could not be mounted".

I went to the audit database and it shows "Attempt to access a protected database".

T2 in mirror monintor shows "Connected" "Caught up" "Warning! Some databases need attention"

T2 show the ROUTER database as being "Mounted/R"
Both T1 & T2 are Linux servers. The ROUTER database file IRIS.DAT have the same Linux permissions

All productions on T1/T2 are not running.

What causes the e

3
0 67
Question Ronaldo Nascimento · Jul 18, 2025

I am trying to create users who only have `%SQL` Role for the INSTANCE. But I am unable to find any documentation on the `Security.Users` class.

See:

// Instantiate the Security.Users objectSet userObj = ##class(Security.Users).%New()// Set the username and passwordSet userObj.Name = userNameSet userObj.FullName = userFullNameSet userObj.Namespace = "USER"Set userObj.Roles = "%SQL"
   Set sc = userObj.ChangePassword(passwd)// Save the user to the databaseSet ss = userObj.%Save()

I cant figure out the "Namespace" property for thi

3
0 148
Article Siddardha Reddy Sanagala · Jul 11, 2025 7m read

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. The main purpose of this post will be to go more into detail into the main driver code and talk about ideas on how

4
4 191
Question Josep Balagué · Jul 10, 2025

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

4
0 144
Article Anastasia Dyubaylo · Jul 19, 2025 1m read

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:

0
0 93
Article Sylvain Guilbaud · Jul 18, 2025 8m read

🛠️ 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. This is where tools


















0
1 113
Article Anastasia Dyubaylo · Jul 15, 2025 3m read

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 punct
4
0 215