🚀 We’re excited to share that InterSystems is once again joining Hack Jak Brno 2025.
📅 Event dates: 28 - 30 November 2025
📍 Location: Masaryk University in Brno
🔗 Learn more and register at www.hackjakbrno.cz 🚀

🚀 We’re excited to share that InterSystems is once again joining Hack Jak Brno 2025.
📅 Event dates: 28 - 30 November 2025
📍 Location: Masaryk University in Brno
🔗 Learn more and register at www.hackjakbrno.cz 🚀

Hi guys,
I'm looking to mimic this Post request URL where I'm sending a token :.png)
So I created the below code but I'm getting "HTTP/1.1 405 Method Not Allowed" error
Can someone help me understand what type of user error (?) is going on here please?
One one system, I write out a group of $c() values and get the expected results:
USER>for i=250:1:260 { write i," ", $c(i),! }
250 ú
251 û
252 ü
253 ý
254 þ
255 ÿ
256 Ā
257 ā
258 Ă
259 ă
260 Ą
USER>w $zv
IRIS for Windows (x86-64) 2023.1.4 (Build 580U) Fri Apr 19 2024 11:16:07 EDT
USER>On another system, I get some unexpected results:
i am looking for a Class or Function to check if a Base64 document is valid ( will results into Full file after decoding or not ),
i was not able to find any predefined class in Objectscript ,
has anyone worked on something similar before ?
any advice will be welcomed
I would like to share with you a little trick to customize how messages are displayed in the Message Viewer. In particular, how you can display messages as JSON (instead of the default XML representation).
Messages are objects that are used to communicate interoperability productions components. In my example I have defined a message that later I serialize as JSON to send to an external API. This message is defined as a regular message and also as a %JSON.Adaptor so I can export / import directly to or from JSON.
Hey Community,
Enjoy the new video on InterSystems Developers YouTube:
⏯ Using SerenityGPT to Build Out an Application GenAI Middleware at InterSystems @ Ready 2025
In this article, we will explore various approaches to extending and customizing the behavior of InterSystems IRIS (and IRIS Health) built-in interoperability message routers.
Message routers perform one of the core functions of Enterprise Application Integration (EAI) and are among the most frequently used business processes in interoperability productions.
When IRIS 2023.2 reaches general availability, we’ll be making some improvements to how we tag and distribute IRIS & IRIS for Health containers.
IRIS containers have been tagged using the full build number format, for example 2023.1.0.235.1. Customers have been asking for more stable tags, so they don’t need to change their dockerfiles/Kubernetes files every time a new release is made. With that in mind, we’re making the following changes to how we tag container images.
APM normally focuses on the activity of the application but gathering information about system usage gives you important background information that helps understand and manage the performance of your application so I am including the IRIS History Monitor in this series.
In this article I will briefly describe how you start the IRIS or Caché History Monitor to build a record of the system level activity to go with the application activity and performance information you gather. I will also give examples of SQL to access the information.
Can someone give me an explanation of how Local.PD.Linkage.Definition.Individual works? This was setup by another company as part of our implementation.
Below is my configuration..
We are getting a lot of matches on Given Name, but then the Family Name does not match at all, so I am wondering if these need to be adjusted. I just don't understand if they need to be positive or negative.
if I use the MLE CALIBRATION MONITOR, it seems that none of the values should be negative.
Hi everyone, on HealthShare Unified Care Record 2024.1.0 Build, we're using the Analytics section to create a dashboard containing a time chart showing a cumulative curve of the number of documents indexed in the registry for each documentSource of each repository. We tried the following steps: we created a cube whose dimensions are the CreationDate, SourceValue, and repositoryUniqueID of the HS_Registry.Document table; in the Analytics section, we created a pivot table that lists the document creation date on each row, along with as many columns as each repository's documentSources. However,
Hello everyone! 👋
I have a question regarding roles and resources.
To give you some context: I have a user who has been assigned only the role %HS_UsageDashboard_Access.This allows them to access the dashboards correctly (by giving the direct URL). Then, if I try to access the Management Portal with this same user, I can log in with no access to any resources within it (as expected).
Hello, thanks for your time reading this question.
We are receiving each day, alerts from one of our four Production nodes. It always has the same text:
[InterSystems IRIS SEVERE ERROR gchciris4.canariasalud:ENSEMBLE] [Utility.Event] [SYSTEM MONITOR] CSPGatewayLatency(127.0.0.1:443) Alert: CSPGatewayLatency = 5001.304, 5001.233, 5000.964 (Max value is 2000).
We have looked for it in the documentation here:
https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KE…
We thought it was related to the following paragraph:
Trying to check date in DTL.
Want to throw a custom error not the default one from the $ZDTH. It does in the try as will write "Error" when testing the DTL but the actual error not showing. Report errors is turned on. I also tried the THROW logic from best practices but that doesn't work either. $SYSTEM.Status.DisplayError(status) does display what the error should be returned.
Hi Community,
Please welcome @Henry Pereira as our new Moderator in the Developer Community Team! 🎉
As an active member, Henry has consistently shared valuable insights, supported fellow developers, and driven meaningful discussions across the Community. His deep expertise and collaborative spirit make him a perfect fit to help guide and grow our Developer Community.

Let's greet Henry with a round of applause and look at his bio!
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.
When using a EnsLib.RecordMap.Service.FileService business service, is there a way to tell which row number that is being read in? I want to read in a csv, but on the first record, trigger a truncate on the External SQL Table that it is being written to through JDBC.
Thanks
Scott
How to define a For loop in *.inc file?
Overview
This release introduces the FHIR Server 2025.10.0, delivering the latest standards compliance and performance improvements. It also enhances the Health Connect Cloud (HCC)upgrade process for greater reliability and adds new flexibility to Network Connect through prefix list support in VPN configurations.
New Features and Enhancements
Hey Community,
Enjoy the new video on InterSystems Developers YouTube:
⏯ Operations & Scalability with InterSystems IRIS - From Zero to Hero @ Ready 2025
Hello!
I'm trying to create some foreign tables to a PostgreSQL database. In some cases, columns with certain datatypes cannot be consumed by IRIS and the following error is thrown:
[SQLCODE: <-237>:<Schema import for foreign table did not return column metadata>]
[%msg: <Unkown data type returned by external database>]
For example: serial4 typed ID columns are typical examples. Is it possible, what's the best way of resolving these datatypes, which- seemingly- don't have proper JDBC metadata mappings?
Hi,
I'd like to report a really strange behavior of the Intersystems Lite Terminal after executing a simple ObjectScript instruction.
From the Intersystems Lite terminal, execute the following instructions:
- Set uniqueId = "12345678_1"
- Set uniqueId = $p(uniqueId,"_",1)_"_"_($p(uniqueId,"_",*)+1)
After executing the second instruction, the terminal closes without any error.
Even stranger, when the second instruction is executed with 2 instead of 1, it executes correctly:
- Set uniqueId = "12345678_1"
- Set uniqueId = $p(uniqueId,"_",1)_"_"_($p(uniqueId,"_",*)+2)
- Write uniqueId
12345678_3
Every thriving community relies on members whose quiet dedication and deep expertise keep it growing stronger year after year. In the InterSystems Developer Community, one such pillar is @Megumi Kakechi, a long-time engineer and support specialist whose 17 years with InterSystems and 9 years on the Developer Community reflect a true passion for helping others learn, solve problems, and innovate.
👏 Let’s take a closer look at Megumi's remarkable journey and her impact on the InterSystems ecosystem.
(1).jpg)
Is there any way of saving a representation of the results of a query created in the Message Viewer to a file - most obviously CSV.
We are reasonably adept at creating queries. We'd like to be able to send the output to a file, rather than resorting to cut'n'pasting from the message viewer window...
Is this possible? (on any version of Ensemble/Iris?)
Desired output to file something like:
ID,TimeCreated,Session,Status,Error,Source,Target,Body_MSH_MessageControlId,..... 1,8888888,2025-08-20 05:03:14.324,8438123,Completed,OK,ICE ADT Validator,ICE ADT TCP,1z123456,20220822......
Hey Community,
It's time for the new batch of #KeyQuestions from the previous month.
![]()
.png)
Hi Community,
In this article, we will explore the concepts of Dynamic SQL and Embedded SQL within the context of InterSystems IRIS, provide practical examples, and examine their differences to help you understand how to leverage them in your applications.
InterSystems SQL provides a full set of standard relational features, including the ability to define table schema, execute queries, and define and execute stored procedures. You can execute InterSystems SQL interactively from the Management Portal or programmatically using a SQL shell interface. Embedded SQL enables you to embed SQL statements in your ObjectScript code, while Dynamic SQL enables you to execute dynamic SQL statements from ObjectScript at runtime. While static SQL queries offer predictable performance, dynamic and embedded SQL offer flexibility and integration, respectively.
As a developer who uses Cache as DB for a couple of projects, I'm using REST API's every time, knowing how to consume a resource from REST API, in my opinion, it's crucial to know how to consume external REST Api's using %Net.HttpRequest because it enables integration with modern web applications and services, and it's a crucial skill for a backend developer who loves and uses Cache as a DB.
What and who is %Net.HttpRequest
Introduction
The InterSystems IRIS Data Platform has long been known for its performance, interoperability, and flexibility across programming languages. For years, developers could use IRIS with Python, Java, JavaScript, and .NET — but Go (or Golang) developers were left waiting.

That wait is finally over.
The new go-irisnative driver brings GoLang support to InterSystems IRIS, implementing the standard database/sql API. This means Go developers can now use familiar database tooling, connection pooling, and query interfaces to build applications powered by IRIS.
GoLang is a language designed for simplicity, concurrency, and performance — ideal for cloud-native and microservices-based architectures. It powers some of the world’s most scalable systems, including Kubernetes, Docker, and Terraform.
Bringing IRIS into the Go ecosystem enables:
database/sql interface.This integration makes IRIS a perfect fit for modern, cloud-ready Go applications.
Following 2 local Webinars we had focused on VS Code ["Intro" and "Beyond Basics"; in Hebrew], I prepared for the participants some related links of relevant resources which we sent as a follow-up. Sharing them here as well for the benefit of the Community.
You are all of course welcome to add more useful resources.