Announcement Larry Finlayson · May 29

HealthShare Unified Care Record Fundamentals – In Person* June 22-26, 2026

*Please review the important prerequisite requirements for this class prior to   registering.

  • Learn the architecture, configuration, and management of HealthShare Unified Care Record.
  • This 5-day course teaches HealthShare Unified Care Record users and integrators the HealthShare Unified Care Record architecture and administration tasks. 
  • The course also includes how to install HealthShare Unified Care Record. 
  • This course is intended for HealthShare Unified Care Record developers, integrators, administrators and managers.
0
0 19
Article David Hockenbroch · May 7 8m read

In our previous article, we explored the basics of unit testing in IRIS and the ways to apply it to a REST API. We even figured out how to test logic before finalizing network configurations and authentication, allowing us to focus solely on testing the API contents. Today, we will build upon that foundation and elevate our unit testing strategy by using another tool: %Populate .

At first glance, the %Populate class appears to be very simple. You can create a class that extends both %Persistent and %Populate and inherit a Populate method designed to generate randomized records.

1
2 173
Question John Gossick · May 28

We have a long running InterSystems Engine with an Interface Development Team.  We have implemented basic interface and code development processes using mostly manually created helper tasks and functions.
We are looking to upgrade these processes by installing and starting to use Embedded GIT in our DEV spaces first.  We will not use it to deploy changes to PRODUCTION at first, keeping our same current process that the team is very comfortable with.  
We plan to start by using the BASIC mode in GIT, to avoid confusion over multiple branches and other version control functions.

1
1 48
Question Troy Palmer · Mar 30

Hello,

Looking for some additional help, maybe someone who has experience with this before, in setting up and configuring the Web Gateway with Kerberos.

Have read through the documentation (at the link below) and it's a good start but seems there are some details missing, or I'm not clear on. 

Questions: 

  • Is there a external enterprise Kerberos server required, or is this set up contained within the local server?
  • Is there a step-by-step instructions on what to do and configure to successfully complete this?
  • Are there there config changes necessary for Apache?
2
0 68
Question Pietro Di Leo · May 28

Hello everyone, I am working with the VSCode extension by connecting to clients' IRIS servers remotely with my personal user (pdileo). However, one of the development environments was recently updated and my user was created for the second time with a different password.

I noticed that the VSCode extension no longer allows me to log in because the password has been changed, without asking me for a new one, only showing the 401 AxiosError.

2
0 71
Article Mihoko Iijima · May 28 31m read

Vector search is a retrieval method that converts text, images, audio, and other data into numeric vectors using an AI model, and then searches for items that are semantically close. It enables “semantic similarity search” from free text, which is difficult with keyword search alone.

However, in real use, I encountered cases where results that are “close in meaning” but logically the opposite appeared near the top of the search results.

This is a serious issue in situations where affirmation vs. negation matters. If the system returns the wrong answer, the impact can be significant, so we cannot ignore this problem.

This article does not propose a new algorithm. I wrote it to share a practical way I found useful when semantic search fails due to negation.

 

0
2 76
Article Thomas Dyar · May 27 15m read

TL;DR: This article demonstrates how to run GraphRAG-style hybrid retrieval—combining vector similarity, graph traversal, and full-text search—entirely within InterSystems IRIS using the iris-vector-graph package. We use a fraud detection scenario to show how graph patterns reveal what vector search alone would miss.


Why Fraud Detection Needs Graphs

Every year, businesses and consumers lose billions to fraud. In 2024 alone, consumers reported $12.5 billion lost—a 25% increase year over year. What makes modern fraud so difficult to detect is that fraudsters rarely work alone.

0
0 67
Announcement Evgeny Shvarov · May 28

Hi Developers!

Here are the technology bonuses for the InterSystems Programming Contest: AI Agents for FHIR that will give you extra points in the voting:

  • Implement suggested task - 5
  • InterSystems FHIR Server usage - 2
  • Vector Search usage - 4
  • Embedded Python - 3
  • LLM AI or LangChain usage: Chat GPT, Bard, and others - 3
  • Docker container usage - 2 
  • ZPM Package deployment - 2
  • Online Demo - 2
  • Implement InterSystems Community Idea - 4
  • Find a bug in Vector Search or Embedded Python - 2
  • First Article on Developer Community - 2
  • Second Article On DC - 1
  • First Time Contribution - 3
  • Video on YouTube - 3
0
0 80
Article Gabriel Ing · May 27 8m read

Welcome back to a series of introductory articles on AI Hub, the new product feature currently in an early access program! (links: EAP Site for download, documentation)

In the last article, we covered how to create agents and agent tools directly in ObjectScript using the new %AI classes. However, sometimes, instead of creating a new agent, you just want to add some custom tools to an existing agent so you can ask your local claude code, codex, copilot or other agent of choice to query your data directly. This is where MCP Servers might come in.

2
4 138
Question Ashok Kumar Thangavel · May 28

Hi Community,

In traditional InterSystems SQL, I can use the %NOINDEX keyword during a bulk INSERT to improve performance and then run BUILD INDEX %ALL afterward to populate the indices.

I am looking to implement a similar strategy for an InterSystems FHIR Server.

  1. Is there a way to import/save FHIR resources while skipping the search table extraction (the FHIR version of %NOINDEX)?
  2. Once the data is loaded, what is the correct programmatic way to "rebuild" the search tables?

Thank you!

0
1 40
Question Ashok Kumar Thangavel · May 28

Hi Community,

Interoperability metrics were enabled for a production using ##class(Ens.Util.Statistics).EnableSAMForNamespace(). However, after running DisableSAMForNamespace() and DisableStatsForProduction(), the metrics continue to appear in the endpoint output.

Is there a way to completely stop these interoperability metrics from displaying in the API metrics stream? Is there an additional step or cache clear required?

0
1 26
Question Tom Scaletti · May 27

I'm connecting to Intersystems Cache database using Intersystems JDBC Driver. There are several network interfaces on client host. I need to make all the Cache traffic to go through a particular interface. Is there a way to choose which network interface to use for Cache connection via JDBC Driver API or somehow via Java code? The approach to use ip route add is suitable but I'm looking for a Java-way like setLocalAddress() on some APIs or something.

1
0 37
Question Krista Koljonen · Dec 4, 2023

I made a custom application metric, imported it to the USER namespace and used:

set status = ##class(SYS.Monitor.SAM.Config).Add.ApplicationClass("historymonitor.errorSensor", "USER")

to add it. When I do 'w status' it returns 1 so it is added but I still can't see the custom metric in the api/monitor/metrics endpoint. Even though I added %DB_USER in the application roles for api/monitor.

Does anyone know where the problem might be that the metrics endpoint still doesn't show my metric?

2
0 265
Question Dmitrij Vladimirov · May 28

Hi community.

How do i count distinct values over cumulative date dimension?

I got calculated measure function defined in cube: COUNT([dimension].[H1].[dimension].Members, EXCLUDEEMPTY)

[dimension].[H1].[dimension] = non-unique numerical fields of ids

Then i got AGGREGATION function defined in Analyzer (that stored in ^DeepSee.CalcMbrs):

AGGREGATE(%TIMERANGE(TimeDimension.hierarchy.level,TimeDimension.hierarchy.level.CurrentMember),Measures.Measure)

This return an error:

ERROR #5001: No member provider object found for member function: MEMBER(5)

All syntax is correct. I checked it twice.

1
0 36
Article Guillaume Rongier · May 27 7m read

With Embedded Python and the Native API, it is becoming increasingly natural to write part of IRIS application logic in Python. But one question quickly comes up: how can you manipulate IRIS persistent objects from Python without losing the connection to the native object model, class dictionary, indexes, storage, and SQL projections?

 

iris-persistence explores that question. The project provides a Python object persistence layer for InterSystems IRIS, inspired by %Persistent

1
3 83
Question Daniel Astudillo · May 26

Hello everyone,

As part of our recent initiative to modernize our observability stack, we have successfully transitioned our InterSystems IRIS logging framework to a structured JSON format. Now we need to dynamically enrich these logs with business-critical metadata specifically, theTenant ID.

We have this configmap to enable Json logs:

apiVersion: v1 
kind: ConfigMap
metadata: 
	name: iris-cpf-merge  
	namespace: {{ .Release.Namespace }}
data:  
	merge.cpf: |    
	[Logging]    
	ChildProcessLaunchCommand=/usr/irissys/bin/irislogd -f /tmp/messages.json    
	Format=JSON    
	Enabled=1
0
0 53
Question Steve Alex · May 26

IRIS is installed and running in an Ubuntu VM.

Visual Studio Code is being used in the host Windows OS and is connected to the IRIS server.

When attempting to execute commands with sudo from the InterSystems Lite Terminal in VSCode using $ZF(-100), error code 127 is returned.

I tried configuring Ubuntu to avoid password prompts by adding the following line to /etc/sudoers.tmp:

ALL=(ALL) NOPASSWD: ALL

However, the above configuration did not work.

Is there a way to execute sudo commands from InterSystems IRIS Production ObjectScript code in Ubuntu?

3
0 79
Question Yone Moreno Jiménez · May 25

Good afternoon,

I have received a WSDL.

I have imported it successfully in HealthShare.

The external is requesting me to send messages with the following structure (using the auto-generated SOAP Bussiness Operation from the WSDL), as you see they need a custom http header titled "Appian-API-Key", as the following:

            curl --request POST \
              --url [ endpoint ] \
              --header 'Appian-API-Key:  << API KEY >> \
              --header 'Content-Type: application/xml' \
              --data '<?xml version='\''1.0'\'' encoding='\''utf-8'\''?>
            <soapenv:Envelope xmlns:soapenv='\''http://schemas.xmlsoap.org/soap/envelope/'\''>
              <soapenv:Body>
                <tns:acceptMessage xmlns:tns='\''http://ws.connectors.connect.mirth.com/'\''>
                <![CDATA[  Message  ]]>
                </tns:acceptMessage>
              </soapenv:Body>
            </soapenv:Envelope>'
2
0 48
Question Tom Scaletti · May 25

I am trying to connect to hive database and IRIS Intersystems Databases using jaydebeapi in python. I am able to connect to one database at a time. While trying to connect to other database, I am getting the below error

"Class org.apache.hive.jdbc.HiveDriver is not found"

or 

"Class com.intersystems.jdbc.IRISDriver is not found"

lin1 -

hive_con = jd.connect(java_driver_class, jdbc_conn_url, [hive_user, hive_pass],jarfile)

lin2 -

iris_con = jd.connect(iris_driver_class, iris_conn_url, [iris_user, iris_pass],jarfile)
2
0 41
Announcement Anastasia Dyubaylo · May 25

Hi Community,

We're super excited to announce the winner of the North American Demo Showcase raffle. 

Over the last 6 weeks, we have explored an outstanding selection of 8 demo videos featuring cutting-edge technologies, AI-powered solutions, and innovative use cases. 18 members have joined the game, racking up a total of 53 raffle entries between them. 

We'd like to thank all the participants who took the time to watch the videos and answer the questions! 

Also, we're thankful to our Sales Engineers who have put together this impressive lineup filled with creativity and technical know-how. 

And now it's time to see who the winner is!

2
0 77
Question RKumar · May 21
Currently, my Caché code triggers an email using Basic Authentication. Now Microsoft is going to stop Basic SMTP Authentication. In this case, what is the best approach to trigger an email alert from the database? It seems OAuth 2.0 is the best approach. Do anybody have any sample using Azure Entra ID?
4
1 73
Question Kurro Lopez · May 25

Hello everyone.

After trying to run Python methods in the intersystemsdc/irishealth-community Docker container, which no longer allows any Python methods to be executed, I decided to abandon this version and start working with containers.intersystems.com/intersystems/iris-community.

In this environment, the Python methods work, which was a significant improvement.

I'm trying to import my libraries with pip install -r requirements.txt

2
0 49