Hey Community!
We're happy to share the next video in the "Code to Care" series on our InterSystems Developers YouTube:
⏯ How Project BEST Transforms FDA Adverse Event Reporting with FHIR
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. It includes powerful out-of-the-box features: transaction processing and analytics, an extensible healthcare data model, FHIR-based solution development, support for healthcare interoperability standards, and more. All enabling developers to realize value and build breakthrough applications, fast. Learn more.
Hey Community!
We're happy to share the next video in the "Code to Care" series on our InterSystems Developers YouTube:
⏯ How Project BEST Transforms FDA Adverse Event Reporting with FHIR
We are receiving an ORU message and the vendor is requesting that we append a new OBX segment at the end of the message and I wanted to reach out to see what options might be available.
So far, I tried the append action in the DTL editor with a single OBX-3 field but it seems to be appending to the field directly instead of creating a new OBX. I've started looking into if whether I could use a function but wanted to first check with the experts on the Discussion here in case there's an easier way to accomplish this. Thank you.
I am trying to replicate a REST call that I am able to make via a Postman call within a EnsLib.REST.GenericOperation.
It's been a while since I have messed around with trying to make external REST calls. When I execute my REST call, tSC is coming back with an error and I am trying to pinpoint why. I tried turning on ISCLOG = 5 but when calling the REST Operation from the Testing tool it is not logging anything to the ISC log.
How do we see the RAW request being sent out to verify that my request is formatted properly?
It helps to remove special characters, such as non-utf-8 characters either control characters or unicode characters from text that is not printable or can't be parsed by downstream systems.
There is also $C(32) in this condition; sometimes NBSP appears in the text and it will not be recognized by TIE, but downstream it displays as "?".
In order to avoid the NBSP issue, the if condition is replaced with a space in order to prevent the error.
Unicode characters only Remove:
Epic had changed some of their logic on their Incoming Radiology Results which now require an Ordering Provider even though it is supposed to account for it within the Epic Interface settings.
I was wondering if we are using a custom schema if there was a way to default a value into OBR:16 if it was not valued without having to modify all the DTL's for these Results.
Is there a way to set this via the schema editor or in the background so we don't have to create/update DTL's or create a custom TCP Operation Class??
Hello Community,
I have a queue that I need to traverse and perform operations on. To distribute the workload across multiple processes, I used a Work Queue Manager do process and I'm not expecting any status from it So, I skipped Sync / WaitForComplete in my implementation
Hi all,
I'm reviewing an older Cache routine and came across this line of code: from file ^ZDBKCRON
S $ZT="^%ETSDK"
Error trap
/home/oper/script/cache_db_backup -t # Daily CacheDB Backup
produced the following output:
<NOROUTINE> *%ETSDK
<ERRTRAP>
-----------
From what I understand, this is setting up an error trap, but I'm not entirely clear on how it works, especially in modern InterSystems IRIS environments.
Could someone please help explain:
%ETSDK a standard system routine? I can't find it in our environment.I cloned @Yuri Marx's langchain-iris-tool repo and modified docker-compose yaml per this post:
Can anyone please help me which function i can use to handle this error.
In a project I'm working on we need to store some arbitrary XML in the database. This XML does not have any corresponding class in IRIS, we just need to store it as a string (it's relatively small and can fit in a string).
Since there are MANY (millions!) of records in the database I decided to reduce as much as possible the size without compressing. I know that some XML to be stored is indented, some not, it varies.
To reduce the size I decided to minify the XML, but how do I minify an XML document in IRIS?
One of the challenges of creating a DICOM message is how to implement putting data in the correct place. Part of it is by inserting the data in the specific DICOM tags, while the other is to insert binary data such as a picture - In this article I will explain both.
To create a DICOM message, you can either use the EnsLib.DICOM.File class (to create a DICOM file) or the EnsLib.DICOM.Document class (to create a message that can be sent to PACS directly). In either case, the SetValueAt method will allow you to add your data to the DICOM tags.
Hi, Community!
🐍Great news—you can now use Python to customize your productions and add custom code!
Hello IRIS community,
InterSystems Certification is developing a certification exam for InterSystems IRIS Developer professionals, and if you match the exam candidate description given below, we would like you to beta test the exam.
I am struggling with returning a SQL Query Result that may have multiple rows that can be searched.
set query = "SELECT Facility FROM FROM osuwmc_EnterpriseDirDB.RelationshipMedCtrID WHERE OSUmedcenterID = ?"
SET rset = ##class(%SQL.Statement).%New()
SET qStatus = rset.%Prepare(query)
SET rset = rset.%Execute($Get(ID))
do rset.%Display()I need to take the values that are returned and say search them for a single value. How would I go about returning the EnsLib.SQL.Snapshot into a Array or List for it to be searchable.
Hi developers!
This will be a very short article as in April 2025 with Lovable and other Prompt-to-UI tools it becomes possible to build the frontend with prompting. Even to the folks like me who is not familiar with modern UI techics at all.
Well, I know at least the words javascript, typescript and ReactJS, so in this very short article we will be building the ReactJS UI to InterSystems FHIR server with Lovable.ai.

Let's go!
Hi,
I want to ensure that the parent ruleset has an EffectiveEndDateTime when I evaluate a rule's when condition() . How would I do that please ?
Thank you.
W
Hi,
We're having an issue with some messages being sent to a downstream system from Healthshare. Part of the free text in the NTE segment is displaying with special characters on the system front-end but is not present in the HL7 message that we send to them. We are guessing that this is a result of some of the text being copied and pasted from something like MS Word. The '?' on their system is just representing an invalid character.
Is anyone aware of a way to prevent this occurring? We are sending the messages using the 'cp1252' encoding.
Hey Community,
Enjoy the new video on InterSystems Developers YouTube:
Prefer not to read? Check out the demo video I created:
The 2024.1.4 and 2023.1.6 maintenance releases of InterSystems IRIS® data platform, InterSystems IRIS® for HealthTM, and HealthShare® Health Connect are now Generally Available (GA). These releases include the fixes for the following alert recently issued - Alert: SQL Queries Returning Wrong Results | InterSystems. Please share your feedback through the Developer Community so we can build a better product together.
I need a DTL to handle this.
Any ideas appreciated.
For all Prosthetics orders:
when ORC-1(Order Control) is "NW" (New Order), need to update OBR-18(Placer Field 1) based on PV1-2 (Patient Class) value.
assumption is that the selection logic is that all prosthetics orders with OBR-18 field is always blank.
Description :
If PV1-2 is I, insert I in OBR-18
If PV1-2 is O, insert O in OBR-18
If PV1-2 is E, insert O in OBR-18
If PV1-2 is P, insert O in OBR-18
If PV1-2 is R, insert O in OBR-18
If PV1-2 is B, insert O in OBR-18
I was wondering if someone could help me. In the past I have been able to call external Stored Procedures through a SQL Outbound Connection and have them return me the EnsLib.SQL.Snapshot to use within a BPL to extract data.
But this time instead of using a SQL Outbound BO to make the Stored Procedure call, I decided to create a Linked Stored Procedure through the %JDBC_Server to point to the Stored Procedure out on MS SQL.
However, I am struggling to get the code just right to return the Column value from the Linked Stored Procedure.
set result = ##class(EnsLib.SQL.Snapshot).New at DTL. I need some pointers on this DTL
For all Prosthetics orders:
when ORC-1(Order Control) is "NW" (New Order), need to update OBR-18(Placer Field 1) based on PV1-2 (Patient Class) value.
assumption is that the selection logic is that all prosthetics orders with OBR-18 field is always blank.
Description :
If PV1-2 is I, insert I in OBR-18
If PV1-2 is O, insert O in OBR-18
If PV1-2 is E, insert O in OBR-18
If PV1-2 is P, insert O in OBR-18
If PV1-2 is R, insert O in OBR-18
If PV1-2 is B, insert O in OBR-18
Hi - I'm refreshing my IRIS instance, now upgraded to 2025.1, and ensuring IPM is installed in each namespace, as well as git-source-control, but in my first attempt I get this error.
Everything else seems to work - but why the error (I'd like to get rid of it) ?
zpm:AULIBRARY>install git-source-control [AULIBRARY|git-source-control] Initialize START [AULIBRARY|git-source-control] Initialize SUCCESS [AULIBRARY|git-source-control] Reload START (C:\InterSystems\IRIS\mgr\Temp\VTigyGg\) [AULIBRARY|git-source-control] Reload SUCCESS [git-source-control] Module object refreshed.
I read the article by @Rodolfo Pscheidt Jr:
https://community.intersystems.com/post/ollama-ai-iris
I forked his app and copied selected files from @Guillaume Rongier iris-rag-demo to make it containerized:
ollama-ai-iris/test_conn.py at 3da62770a90e34eff92241abbfc4f2c2a7027898 · oliverwilms/ollama-ai-iris
I struggle to understand what each element is or I do not understand why the code does not work:
url = f"iris://teste:teste@localhost:51774/TESTE"
Is teste:teste refer to username / password? I tried _SYSTEM:SYS
Is 51774 webserver port? Is TESTE namespace?
I read the article by @Rodolfo Pscheidt:
https://community.intersystems.com/post/ollama-ai-iris
I forked his app and copied selected files from @Guillaume Rongier iris-rag-demo to make it containerized:
I ran load_data.py and I got this output:
irisowner@e10968e4da42:/irisdev/app$ python3 load_data.py
Document ID: cbfa2f20-6627-407b-bbad-31722d18ca13
modules.json: 100%|█████████████████████████████████████████████████████████████| 349/349 [00:00<00:00, 778kB/s]
config_sentence_transformers.
Hi all,
I can't find the list of business host setting sections and (crucially) how to refer to them in the SETTINGS parameter, as marked in purple here:
Parameter SETTINGS = "MySetting:Basic";
Does anyone know where this list lives?
Otto
I cloned iris-rag-demo from Open Exchange and issued docker-compose up -d. I went to the front end and type in the chat message:
Who was the 46th President of United States of America?
I got a run time error:
RuntimeError: ERROR <Ens>ErrBPTerminated: Terminating BP ChatProcess # due to error: ERROR #5002: ObjectScript error: <PYTHON EXCEPTION> *<class 'RuntimeError'>: <PYTHON EXCEPTION> <class 'ValueError' > ERROR #5002: ObjectScript error: <PYTHON EXCEPTION> *<class 'RuntimeError'
Traceback:
File "/irisdev/app/src/python/rag/app.py", line 28, in process_input agent_text = _service.
I cloned @Yuri Marx's langchain-iris-tool repo and typed docker-compose up -d. I see error message:
Error response from daemon: could not select device driver "nvidia" with capabilities: [[gpu]]
I added extra OBX segments and I need to renumber OBX 4 so they are sequential.
.png)