InterSystems Developer Community is a community of 25,097 amazing developers
We're a place where InterSystems IRIS programmers learn and share, stay up-to-date, grow together and have fun!

Hi Community,

I’m trying to execute a directory query in InterSystems IRIS using %SQL.Statement, but encountering an unexpected error.

Details:
The following command confirms that the directory exists:

Set dirPath="\\MYNETWORK_DRIVE\DFS-Shared_Product\GXM"
Write ##class(%File).DirectoryExists(dirPath)

It returns 1, meaning the path is valid and accessible.

However, when I try to execute this SQL query:

1 3
0 62

Our vendor is developing an interface API on their end to capture HL7 data on a Server Port, and they require us to send a pre-defined HL7 Order message for testing every hour until the API is completely operational.

Is it possible to accomplish that in a Business Operation automatically without utilizing a service or process? The BO is a standard TCP/IP connection.

I'm manually sending the message again from the Operations right now. I do not have access to the System Operation to use the Task Manager feature.

1 3
0 62

I had a need for a Filter, but did not want to recreate the wheel by creating another Data Lookup Table, so instead I created a Linked Table that points to a MS SQL Table outside of IRIS.

Once I had the Linked Table, I created a Class Method Function that would query the Linked Table and return a 1 if a result came back.

0 1
0 64

Hi everyone,

I’m working with an existing InterSystems IRIS server that hosts several web applications and namespace-specific code and data. I’d like to reverse-engineer the current environment into a %Installer.Manifest file so I can store it in Git and manage its changes.

My goal is to:

2 1
2 64

I'm trying to access the Bearer token from the Authorization header in my REST service class, but I'm getting a 500 Internal Server Error when I try to use %request.GetCgiEnv("HTTP_AUTHORIZATION").

My Environment:

  • InterSystems ensemble 2018
  • Using EnsLib.REST.Service with HTTP Inbound Adapter
  • REST API URL: http://ip:port/api-kiosk/patientData

My Code:

objectscript

0 4
0 60

Hi Community!

We are excited to announce the new French technical article writing contest!

✍️ Technical Article Contest ✍️

This is the perfect opportunity for all InterSystems technology enthusiasts to share their knowledge and showcase their writing skills. No matter your experience level, everyone is welcome to participate. Articles can cover a wide range of topics, from technical implementation to your impressions and feedback on using InterSystems products or services. So let your creativity and expertise run wild!

📅 Contest period: September 15 - November 30, 2025 (extended!)

🎁 Gifts for all: a special gift is prepared for each participant!

🏅 Prizes for the authors of the best articles

2 0
0 64

Hello to all the Cache Experts out there and Happy Friday!

The company I work for uses Cache 2017.1.3 and we have been seeing intermittent errors in the Cache Error Trap when an SQL query runs. The error message looks like the error is occurring within the cached query routine that Cache auto-generates. Unfortunately, when I pulled up the routine in the SMP System Explorer, I only found an obj version, so was unable to look at any code.

0 3
0 61

Hello InterSystems Community,

I'm working with HealthShare, and need to create a user account for our development environment with specific access requirements. This user will need only to:

Review messaging and environments
See production and namespaces
NOT modify anything (read-only access)

After reviewing the documentation on user roles and rights management, I can see the default roles available in our system include:

Ensemble/Interoperability Roles:

0 2
0 62
Question
· Jun 17
Concatenation Issue

I am trying to add a value to my concatenation string and the value is not being inserted in the right place. I am adding onto this code from another developer and cannot seem to get it to work. The only code I have added is underlined in bold red.

This is how the translated HL7 message looks:

OBX|1|CE|CDX^History||Specimen 1 Clinical History: CLINICAL HISTORY\.br\\.br\Specimen 2 Clinical History: CLINICAL HISTORY 2\.br\Specimen 1 Suspected Clinical Diagnosis\.br\Specimen 3 Clinical History: HISTORY 3\.br\Specimen 2 Suspected Clinical Diagnosis

0 0
0 64

For background, I've developed code that relies on %JSON.Adaptor functionality across an entire package of classes in our codebase. In regenerating these classes with %JSON.Adaptor as a superclass, I've encountered compilation errors from the JSON adaptor generators in certain classes, triggered by certain property types or parameters that are incompatible.

0 2
0 62

Hello Community!

The big challenge you've all been waiting for is finally here: The fourth InterSystems technical article writing contest in Spanish is here!

🏆 4th Spanish Technical Article Contest 🏆

Contest description: Write an article in Spanish in the Developer Community on any topic related to InterSystems technology.

Duration: May 12 – June 8, 2025.

Prizes for all participants: Everyone who publishes an article in Spanish during the contest period will receive a prize.

Main prize: Apple Watch SE / 10th generation iPad

1 0
0 64

Hey Community!

We are pleased to invite everyone to participate in the new webinar in German dedicated to AI:

➡️ Interoperability as a catalyst for AI

Date & Time: March 11, 2025, 3:30 pm CET

👨‍🏫 Speakers:

  • @Thomas Nitzsche, Sales Manager, InterSystems
  • Dr. Olaf Iseringhausen, Head of Competence Center Health Care Solutions, Bechtle
  • Dr. @Erion Dasho, Clinical Advisor, InterSystems

0 0
0 64

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.

1 4
0 59

Overview

This web interface is designed to facilitate the management of Data Lookup Tables via a user-friendly web page. It is particularly useful when your lookup table values are large, dynamic, and frequently changing. By granting end-users controlled access to this web interface (read, write, and delete permissions limited to this page), they can efficiently manage lookup table data according to their needs.

The data managed through this interface can be seamlessly utilized in HealthConnect rules or data transformations, eliminating the need for constant manual monitoring and management of the lookup tables and thereby saving significant time.

Note:
If the standard Data Lookup Table does not meet your mapping requirements, you can create a custom table and adapt this web interface along with its supporting class with minimal modifications. Sample class code is available upon request.

2 0
1 63

Studio's Find In Files finds nothing if CLS routines are included. The error is WIDE CHAR. After using ##class(%Studio.Project).FindInFiles programmatically and then ZW after the same error I strongly suspect that CodeWalkopdatecopyopt in EnsLib.InteropTools.HL7.Cloverleaf.Parser.cls is to blame. I cannot even open this class, unlike other classes from EnsLib.InteropTools.HL7.

0 2
0 61

Overview I'm excited to announce the release of testcontainers-iris-node, a Node.js library that makes it easy to spin up temporary InterSystems IRIS containers for integration and E2E testing. This project is a natural addition to the existing family of Testcontainers adapters for IRIS, including testcontainers-iris-python and testcontainers-iris-java.

Why testcontainers-iris-node? As a Node.js developer working with InterSystems IRIS, I often faced challenges when setting up test environments that mimic production. testcontainers-iris-node solves this by leveraging the testcontainers-node framework to create isolated IRIS environments on-demand.

This is particularly valuable for:

  • Integration testing with IRIS databases
  • Testing data pipelines or microservices
  • Automating test environments in CI pipelines

Features

  • Launches IRIS in Docker containers using Testcontainers
  • Supports custom Docker images and configuration
  • Wait strategies to ensure IRIS is ready before tests begin
  • Clean teardown between test runs

2 0
1 63

I am testing vectorsearch, while doing so I am trying to paginate my resultset for a "next page" function to give me the first, second, third 15 entries within a table.

For this I have two embedding classes. One with a HNSW Index (vectornomicembedtextlatest) , and one without (vectornomicembedtexttest).

Calling SELECT ID,PRIMKEY FROM SQLUser.vectornomicembedtexttest LIMIT 5 OFFSET 1 works fine with the first entry having the rowID of 486448. (I deleted old entries in the beginning and reused the table)

0 0
0 63

I have a widget that uses "choose Data source" control option. Termlist for the control consist of the two data sources and i want to set one of them by default. For example: I have two data sources, one is grouped by month, the other by year. I need to set the one that is grouped by year by default

Using default value at the bottom return an error

How can i achive that?

0 2
0 61
Article
· Oct 28 3m read
IRIS Home Assistant Add-On (HAOS)

InterSystems IRIS Community Edition HAOS Add-On

Run InterSystems IRIS inside of Home Assistant, as an add-on. Before you dismiss this article possibly under the guise that this is just a gimmick, Id like you to step back and take a look at how easy it is to launch IRIS based applications using this platform. If you look at Open Exchange, you will see dozens of dozens of applications worthy of launching while they are basically hung out to dry as gitware, and launchable if you want to get into a laptop battle with containerd or Docker. With a simple git repo, and a specification, you can now build your app on IRIS, and make it launchable through a marketplace with limited hassle to your end users. Run it along side Ollama and the LLM/LAM implementations, expose anything in IRIS as a sensor or expose an endpoint for interaction in your IRIS app to interact with anything you've connected to HAOS. Wanna restart an IRIS production with a flick of a physical switch or Assisted AI? You can do it with this add-on, or your own, right alongside the home automation hackers.

5 0
1 62