Hey Community!
We're happy to share the next video in the "Code to Care" series on our InterSystems Developers YouTube:
InterSystems IRIS is a Complete Data Platform
InterSystems IRIS gives you everything you need to capture, share, understand, and act upon your organization’s most valuable asset – your data.
As a complete platform, InterSystems IRIS eliminates the need to integrate multiple development technologies. Applications require less code, fewer system resources, and less maintenance.
Hey Community!
We're happy to share the next video in the "Code to Care" series on our InterSystems Developers YouTube:
My intention is to show how simple it is to generate a lookup table taking into account the information received in our HL7 messaging. The HL7 message lookup table provided by IRIS is certainly sufficient for most of the searches we want to perform, but we always have that special field in our HIS, LIS, RIS, etc. that we'd like to search by. But that's in a segment outside of that lookup table. That field forces us to generate a specific search using the expanded search criteria. We'll likely have many messages, and we'll also have to filter by date and time so we don't timeout.
Do you have at least two years' experience developing with InterSystems IRIS® data platform and basic knowledge of InterSystems ObjectScript?
👨🎓Validate your expertise with the new InterSystems IRIS Development Professional certification exam, our first professional-level exam!
Hi Community,
Enjoy the new video in a series of videos created by our Project Managers to highlight some of the interesting features of the new 2025.1 release:
⏯ RAG with built-in Vector Search in InterSystems IRIS 2025.1
Having been inspired with Shared code execution speed question/discussion, I dare to ask another one which is annoying me and my colleagues for several weeks.
We have a routine called Lib that comprises 200 $$-functions of 1500 code lines total. It was noticed that after calling _any_ function of another rather big routine (1900 functions, 32000 lines) the next call of $$someFunction^Lib(x) is getting 10-20% slower than previous call of the same function.
I am having issues trying to send SOAP requests to a Cloud Based AWS Application that lives outside of our network.
It is using a Basic Authentication, Key, Certificate Authority and Whitelist for Security.
If I attempt the connection using wget from the command line I am able to connect,
:>wget --bind-address=10.95.129.245 --server-response https://xxxxxxxxxx/xxxxxxx/services/Mirth
--2025-06-06 15:54:51-- https://xxxxxxx/xxxxxxxx/services/Mirth
wget: /ensemble/.netrc:16: unknown token xxxxxxx
wget: /ensemble/.netrc:16: unknown token xxxxxxxx
Resolving xxxxxxx.com (xxxxxxx). 34.233.89.
Hello, dear members of our developer community!
In today's article, we're going to take a look at one of the latest remote monitoring features that have been added to the product for our IRIS instances. I'm talking about OpenTelemetry support.
.png)
Embedded Python has been around for a while. You probably followed the tutorials and learned about it. However, if you've tried to combine Python and ObjectScript in real development work, you probably ran into situations where you get an error message like this:
USER>Do ##class(MyClass).SomeMethod() ERROR #5002: ObjectScript error: <PYTHON EXCEPTION> *<class 'ZeroDivisionError'>: division by zero
It's a long string for limited information.
Hi.
I want to save and compile a class in VS Code, but I get the error:
Failed to save 'Utils.cls': Unable to write file 'isfs://mip:mz/API/Utils.cls?project=MZ' (Unknown (FileSystemError): Unknown Error).
Any ideas what is wrong?
Regards,
Matjaž
Hey everyone,
I'm diving deeper into Caché ObjectScript and would love to open a discussion around the most useful tips, tricks, and best practices you’ve learned or discovered while working with it.
Whether you're an experienced developer or just getting started, ObjectScript has its own set of quirks and powerful features—some well-documented, others hidden gems. I’m looking to compile a helpful set of ideas from the community.
If you're migrating from Oracle to InterSystems IRIS—like many of my customers—you may run into Oracle-specific SQL patterns that need translation.
Take this example:
SELECT (TO_DATE('2023-05-12','YYYY-MM-DD') - LEVEL + 1) AS gap_date
FROM dual
CONNECT BY LEVEL <= (TO_DATE('2023-05-12','YYYY-MM-DD') - TO_DATE('2023-05-02','YYYY-MM-DD') + 1);
In Oracle:
LEVEL is a pseudo-column used in hierarchical queries (CONNECT BY). It starts at 1 and increments by 1.
CONNECT BY LEVEL <= (...)InterSystems has released new point updates to resolve a defect affecting the most recent prior versions of 2025.1.0, 2024.1.4, 2023.1.6, and 2022.1.
Hello,
I have created this script that does lot of writes to a single global. DB write performance is much slower than expected (compared to another similar systems).
set rec = "..." //fill it with something
set time = $piece($horolog,",",2)
while(($piece($horolog,",",2)-time) < 30) //30 seconds
set ^A($System.Util.CreateGUID()) = rec
}I have notified the following :
I am having a hard time trying to figure out the following...
Within a DTC, I was able to take the a EnsLib.HL7.Message source and using
set a= $System.Encryption.Base64Encode(source.RawContent)
set encodedMessage=$Get(a)to take the HL7 message encode it and add it to the Data Class as a string to be sent to an Operation to be sent out as a SOAP Request.
However to make it more universal I tried doing this within a copy of EnsLib.HL7.SOAPOperation
Method SendMessage(pMsgOut As EnsLib.HL7.Message, Output pMsgIn As EnsLib.Hi Guys,
I'm looking for a Zen component that allow me to populate a list of items and the ability to multiselect, similar to checklist?
I've thought of using MultiSelectSet component but don't know how can I populate it like to a query or resultset?
a short sample code would be helpful.
Thanks
Does anyone have a copy of the Class EnsLib.File.CSVService, which can import a CSV file in a Business Service?
I have created a New Database/Namespace within our TEST environment on both the Primary and Backup of the mirror. When I go to create the database/namespace on the DR node I am getting "Cannot open file '/ensemble/TEST/iris.cpf_...." while the cpf file that it references does not exist. Anyone have any clue to why this might be happening?
Hello All,
No matter what I try in Business Process Logic (BPL), I am unable to calculate the patient's age in days or years.
Has anyone ever built logic in a Business Process (BPL) to calculate a person's age in days?
Thank you!
Hi,
Can anyone please tell me how to append a string using a update query.
For eg : "Hello" is the string . I need to append the string world and it needs to be "Hello world".
Thanks
Jude
Hi Community,
Our Project Managers created a series of videos to highlight some of the interesting features of the new 2025.1 release. Please welcome the first one of them:
MonLBL is a tool for analyzing the performance of ObjectScript code execution line by line. codemonitor.MonLBL is a wrapper based on the %Monitor.System.LineByLine package from InterSystems IRIS, designed to collect precise metrics on the execution of routines, classes, or CSP pages.
The wrapper and all examples presented in this article are available in the following GitHub repository: iris-monlbl-example
|
Advisory ID
|
Product & Versions Affected
|
Risk Category & Score
|
Explicit Requirements
|
|
DP-439649
|
Products:
Versions:
|
Operational:
System Stability:
This issue does not constitute a security vulnerability. It does not allow users to bypass permissions checks or access data outside their authorized namespace. |
I have a Task that I am trying to write the output to a file. How do I check for if the Output File has been included in the Task Schedule, so I can direct my output of my class to that output file?
Thanks
Scott
Hi Guys,
How can I create Python pages instead of CSP or Zen pages, not familiar with Python and the only way I know is using embedded Python as methods as attached below?
.png)
Thanks
Let's suppose two different routines use one and the same chunk of code. From the object-oriented POV, a good decision is to have this chunk of code in a separate class and have both routines call it. However, whenever you call code outside of the routine as opposed to calling code in the same routine, some execution speed is lost. For reports churning through millions of transactions this lost speed might be noticeable. Any advice how to optimize specifically speed?
P.S. Whenever someone is talking about the best choice for whatever, I am always tempted to ask: "What are we optimizing?".
Hi Community,
Enjoy the new video on InterSystems Developers YouTube:
⏯ Migrating 20TB to InterSystems IRIS with Near 0 Downtime @ Global Summit 2024
How would you go about creating an SQL Stored Procedure that would result in the same output as "IN LIKE"?
For example...
CustomersTable
| RecordId | CustomerName |
| 123 | Mark Stevens |
| 456 | Betty Johnson |
| 789 | John Stevens |
| 321 | Brian Smith |
| 654 | John Markson |
| 987 | Tom Obrian |
select *
from CustomersTable
where inLike('%Mark%', '%John%')Would return:
| 123 | Mark Stevens |
| 456 | Betty Johnson |
| 789 | John Stevens |
| 654 | John Markson |
Hi IRIS experts!
I have a parameter in a class that stores a global name:
Parameter GlobalName = "^AGlobal";
then I'm trying to call it as:
set gn=$name(..#GlobalName)
to use it later as:
set @gn@("index")="value"
But! I'm having syntax at set gn=$name(..#GlobalName)
What am I doing wrong?
Hello,
I have a class with a "Unique" index (pxfactidIndex) on a %Numeric property (pxfactid) (partially-edit code snippet below):
Property pxfactid As %Library.Numeric(MAXVAL = 9223372036854775807, MINVAL = -9223372036854775808, SCALE = 0) [ SqlColumnNumber = 7 ];
Index pxfactidIndex On pxfactid [ Unique ];
Storage Default
{
<Data name="FactDefaultData">
<Value name="1">
<Value>pysubjectid</Value>
</Value>
...
<Value name="6">
<Value>pxfactid</Value>
</Value>
...
</Data>
<DataLocation>^CRMBI.FactD</DataLocation>
<DefaultData>FactDefaultData</DefaultData>
<ExtentLocation>Hi Community,
i'm trying to figure out how to pass a string to a routine from Powershell:
####
ROUTINE ImplUtil
Say(pSomething = "hello, i'm the ROUTINE") public{
w !,pSomething,!
}
####
call: irissession healthconnect -U user 'Say^ImplUtil(12345)'.png)
what's the right way to pass in text?