Hi,
Does anyone have experience with connecting to IRIS with OLEDB through an OLEDB-ODBC bridge? In this case the client can only speak OLEDB at this moment.
Regards,
Marcel
Hi,
Does anyone have experience with connecting to IRIS with OLEDB through an OLEDB-ODBC bridge? In this case the client can only speak OLEDB at this moment.
Regards,
Marcel
Hi folks!
Playing with InterSystems FHIR server.
You can easily install it in IRIS for Health using FHIR template:
zpm "install fhir-server"
NB! For now the IPM command mentioned above works for a namespace called FHIRSERVER only.
I have a FHIR server in a local docker container with endpoint:
localhost:52773/fhir/r4
WIN SQL is the normal editor used by most of the users .But we can't download large amount of data using winsql . So I have written a tutorial how to connect with a new Java based editor called Squirrel SQL which can easily download or export data in excel or any other formats. Also I included a Java JCBC connection program to connect with the IRIS database especially a mirroring/failover server.
SQL Java based Editor to Export large amount of data and Java JDBC program for IRIS connection
SQL Java based Editor to Export large amount of data
WinSql is the editor used normally to extract dat

Hi Guys,
I've a task that runs every 10 mins executing the below code, but the issue is that it slowing the system down affecting other processes, so is there a way to maybe spread the execution of this so it doesn't slow down the system? I've tried spreading these fucntion in two different tasks but doesn't seem to change much.
Method OnTask() As %Status
{
J ##class(MSDS.Common.ConditionMonitoring).GetKitList("20779")
J ##class(MSDS.Common.ConditionMonitoring).GetKitList("21822")
J ##class(MSDS.Common.ConditionMonitoring).GetKitList("21147")
J ##class(MSDS.Common.ConditionMonitoring).GetKitLi
Hi Community:
We've just posted session titles to our Global Summit website -- there are 65, and more are being planned.
I've been working on Global Summit now for seven years, and I think this year's lineup is the best yet -- mostly because we asked users like you for topic suggestions.
I'm cutting and pasting from my master list
1. Adaptive Analytics in Action: Two Customer Use Cases
2. Application of Design Thinking
3. Artificial Intelligence Healthcare Solutions: Time to Take Action
4. Best Practices for InterSystems IRIS System Performance in the Cloud
5. Better Tog
In the documentation Data Types | Caché SQL Reference | Caché & Ensemble 2018.1.4 – 2018.1.8 (intersystems.com)
it says that "by default, Caché establishes a system-wide ODBC VARCHAR maximum length of 4096; this ODBC maximum length is configurable"
Per instructions, I went to SMP -> System -> Configuration -> General SQL Settings, where most of the fields from $SYSTEM.SQL.CurrentSettings()
appear. That one does not.
How does one change it, and can it be increased?
Thanks!
[Cross-posted from https://groups.google.com/g/intersystems-public-cache/c/eRFeORb_sb0]
Just a few days left to tell us how you like to learn!
Want a say in how we structure our learning content? Take this brief survey by March 31, and we’ll use your feedback to improve your learning experience.
Let us know in this 3-min survey!
Hi,
we get HL7 MDM messages with embedded PDF documents that are Base64 encoded. When the embedded PDF document exceeds the size of 3.6 MB the following error occurs:
FEHLER <Ens>ErrBPTerminated: BP Main HL7 MDM # wird wegen folgenden Fehlers beendet: FEHLER #5002: Caché-Fehler: <MAXSTRING>zgetAtFromArray+46^EnsLib.HL7.Segment.1
> FEHLER #5002: Caché-Fehler: <MAXSTRING>zgetAtFromArray+46^EnsLib.HL7.Segment.1
In other posts I read that you can avoid these errors, if you use the data type %VarString instead of normal %String. Are there prebuilt classes that already use VarStrings or do I hav
Hello,
I have a question regarding the Intersystems Caché Database and its jdbc driver. I need to set the connection timeout for the database, but I couldn't find any documentation stating that the jdbc driver for Caché supports setting the connection timeout. However, I noticed that the jdbc driver for the Intersystems Iris Database appears to support this feature.
My question is, can I use the Iris jdbc driver to set the connection timeout for the Caché Database?
The jdbc driver I use: cache-jdbc-2.0.0.jar
Thank you for your help.
Best regards,
Kalle
![]()
Named parameters can be achieved with SQLAlchemy :
from sqlalchemy import create_engine, text,types,engine
_engine = create_engine('iris+emb:///')
with _engine.connect() as conn:
rs = conn.execute(text("select :some_private_name"), {"some_private_name": 1})
print(rs.all())
or with native api
from sqlalchemy import create_engine, text,types,engine
# set URL for SQLAlchemy
url = engine.url.URL.create('iris', username='SuperUser', password='SYS', host='localhost', port=33782, database='FHIRSERVER')
_engine = create_engine(url)
with _engine.connect() as conn:
rs = conn.execute(text("select :some_private_name"), {"some_private_name": 1})
print(rs.all())
I am trying to pinpoint and troubleshoot an issue we have been seeing lately. We have several SQL Outbound Adapter Operations that are seeing issues trying to connect to our MS SQL Servers using the JDBC Gateway for calling insert, select, update, and stored procedure calls.
ERROR <Ens>ErrFailureTimeout: FailureTimeout of 20 seconds exceeded in osuwmc.Visit.ADTDBWriteBusinessOperation; status from last attempt was ERROR <Ens>ErrOutConnectExpired: JDBC Connect timeout period (15) expired for 'jTDS-Visit-Dev'(jdbc:jtds:sqlserver://SQL-VD21:1739/Visit;instance=tp;domain=osumc;useNTLMv2=true;cach
You can programmatically retrieve routine dates and sizes using the RoutineList query of the %Library.Routine (or just %Routine) class.
The RoutineList query has an argument, and the routine name to be searched can be specified by prefix match or middle match. (For wildcards, specify * or ?)
In the example below, *.MAC is specified as an argument.
SET tStatement = ##class(%SQL.Statement).%New()
DO tStatement.%PrepareClassQuery("%Routine" , "RoutineList")
SET rs = tStatement.%Execute("*.MAC",,0)
DO rs.%Display() In addition to the routine list, you can
Hi,
I know little about SOAP security and am trying to apply a WS-Policy to a simple HL7 web service, but when I do I get object script errors.
The most latest one being:
ObjectScript error: <UNDEFINED>zValidateTransport+4^%SOAP.Security.Policy.1 *%request
The web service, shown below, simply extends UHSx.Common.Services.Twinkle.SOAP, and works perfectly well using basic HTTPS over SSL/TLS:
Class UHSx.Common.Services.Twinkle.SOAP Extends UHSx.Common.Services.HL7.SOAP
{Parameter LOCATION = "https://ryr-hc-test.sussex.nhs.uk:50800/UHSX_EPR/Twinkle_QRY_HL7_Web_Se…";Parameter SERVI
We are migrating to new servers, and I need to copy the information from Business Partner's over to the new server. Is this information in a Global or SQL table somewhere that I can export and import into the new IRIS environment?
Thanks
Scott
Hi, could someone tell me please how can I "unlock" a .cls file which author is Intersystems? I want to make some modifications and add some trace messages there. The file resides in the HS.FHIRServer namespace and it looks like read-only
Large language models are stirring up some phenomena in recent months. So inevitably I was playing ChatGPT too over last weekend, to probe whether it would be a complimentary to some BERT based "traditional" AI chatbots I was knocking up, or rather would it simply sweep them away.
A thought comes to mind while playing. By going slightly theoretical or philosophical, eventually interoperability standards such as HL7 and FHIR etc are kind of "languages", right? HL7 has its own grammar, rules, vocabulary and even dialects - every system speaks its own tone. Tha
Hi Developers,
See how the Production Extension framework (PEX) allows you to build custom interoperability components in .NET or Java without first learning ObjectScript.
With PEX, you can code in a familiar language and take advantage of established code libraries to add components to a production.
Hello, I want to show a fellow DC member how to convert JSON file into HL7 message. I personally do not work with HL7. I set up a production with EnsLib.File.PassthroughService. It passes Ens.StreamContainer to BPL process. I call a DTL to transform StreamContainer to HL7 message. I run into an error:
ERROR <Ens>ErrBPTerminated: Terminating BP JSON2HL7 # due to error: ERROR #5035: General exception Name 'Parsing error' Code '3' Data ''
> ERROR #5035: General exception Name 'Parsing error' Code '3' Data ''
The code is in this GitHub repo:
IRIS configurations and user accounts contain various data elements that need to be tracked, and many people struggle to copy or sync those system configurations and user accounts between IRIS instances. So how can this process be simplified?
In software engineering, CI/CD or CICD is the set of combined practices of continuous integration (CI) and (more often) continuous delivery or (less often) continuous deployment (CD). Can CI/CD eliminate all our struggles?
I work in a team which develops and deploys IRIS clusters. We run IRIS in containers on Red Hat OpenShift container platform.
Pleas

Say you have a receiving system that accepts HL7 and provides error messages in field ERR:3.9 in the ACK it returns. You require a different reply code action depending on the error message, however the Reply Code Actions settings for the operation do not provide this level of granularity. One option could be to create a process that takes the ACK and then completes the action you were expecting, however things can get a bit messy if the action is to retry the message, especially when trying to view a message trace.
My approach went a different direction, and makes use of an ext
.png)
Hi all!
In a project we needed to define topics to publish messages and register different subscribers which will receive those messages asynchronously. We also needed it to be as simple as possible and that we could use it on InterSystems IRIS directly.
As an experiment, I'm sharing this iris-pubsub open exchange example.
This is built on top of InterSystems IRIS interoperability features, it needs a running production.
The first time we need to define how many partitions we want to dedicate to handle messages. The more partitions you add, the more capacity to handle messages.

Hi there,
Does anyone know where is the content for saved searches in Message Viewer is stored. We want to add searches we have created in QA to our deployment files.
thanks
Best Mike
Hi Guys,
How can I include an Expando in a tablepane, I would like that each row have an expando that I can use to include some other things as in the below screenshot
.png)
<column colName="SerialNo" header="Serial No" OnDrawCell="DrawLink" width="10%" filterType="text" filterOp="["/>
i've used the below so i can include the expando but its not working, so how can I include a zen control like expando onDrawCell or in my tablepane ?
Method DrawLink(pTable As %ZEN.Component.tablePane, pName As %String, pSeed As %String) As %Status
{
WRITE "<expando caption=""Subexpando"" OnDrawConte
Hi Developers,
Often we create and edit InterSystems IRIS Interoperability solutions via a set of UI tools that is provided with IRIS. But it is sometimes difficult to setup the development environment to handle changes we make in the UI to source control.
This video illustrates how git-source-control helps with source control Interoperability components while changing it in the UI.
⏯ Git Source Control for InterSystems IRIS Interoperability with Docker and VSCode
If you are seeing this error during import: ERROR #6301 Line: 2 Offset: 118 This does not appear to be a Cache exported file, unable to import.
This error is caused by exporting from InterSystems IRIS and trying to import into Caché. If you plan on exporting from IRIS to Caché, you can use the following qualifier to export your classes so that Caché does not throw an error on import:
w $SYSTEM.OBJ.Export(<items>,<filename>,"/exportversion=cache2018.1")
Please see the Documentation for more information about this Export Qualifier
I'm sure you have met this situation:
If you are using Python, you can use the built-in venv module to create a virtual environment. This module is the recommended way to create and manage virtual environments.
A virtual environment is a tool that helps to keep dependencies required by different projects separate by creating isolated python virtual environments for them. It solves the “Project X depends on version 1.x but, Project Y needs 4.x” dilemma, and keeps your global site-packages directory clean and manageable.
So if like me you work a lot with Python, you can use the venv module to create a virtual environment for your project. This will allow you to install packages without affecting the global Python installation.
You will find here two neat alias to create and activate a virtual environment.
alias venv="python3 -m venv .venv; source .venv/bin/activate"
alias irisvenv="python3 -m venv .venv; source .venv/bin/activate; pip install https://github.com/grongierisc/iris-embedded-python-wrapper/releases/download/v0.0.3/iris-0.0.3-py3-none-any.whl"
This is the second piece in our series on 2021.2 SQL enhancements delivering an adaptive, high-performance SQL experience. In this article, we'll zoom in on the innovations in gathering Table Statistics, which are of course the primary input for the Run Time Plan Choice capability we described in the previous article.
When connecting to the database using a client-server architecture, for example using language binding, the machine name of the client can be obtained using the following code:
set client=##CLASS(%SYS.ProcessQuery).Open("P"_$j).ClientNodeNameHi Guys,
is there a way or utility that we can drag & drop images in a Zen page?
Thanks