How to increase the performance of the production when getting multiple messages from various Healthcare organizations
Each DTL calls “ConstructClone” to make a copy of the message before making any changes to it. There will be hundreds of cloned-objects in case of hundreds of DTLs
It is expected to run the rules chain by using Rule Editor without DTL, namely against a SINGLE cloned-object (for example HL7 2.3, ORU_R01) with a FunctionSet in case of hundreds or thousand of rules under same protocol
Question is how to pass the cloned-object from one rule 1 to rule 2, and send the modified object to target Process or Operation in Rule Editor?
Migrate to VS Code this summer with our comprehensive Basics and Advanced Features training courses.
George James Software is offering migration strategies and training to support the adoption of VS Code with InterSystems IRIS, IRIS for Health, HealthShare, and Caché. We're in the unique position of having deep knowledge and understanding of both InterSystems platforms and VS Code, through our regular contributions to VS Code itself.
Are you signed up to take the new InterSystems IRIS SQL Specialist certification exam? Get ready with these in-person and self-paced learning resources!
Hi Community,
I am receiving a JSON file as input in ensemble and i need to convert the JSON message to HL7 message.
Can anyone share few points how to read a JSON file into Ensemble production by creating a Custom Business service?
I have created a custom business service as below but i am not aware which parameters i need to pass in OnProcessInput method?
Method OnProcessInput(pInput As Ens.Request, Output pOutput As %RegisteredObject) As %Status
Do i need to Ens.Request or RegisteredObject or Ens.StreamContainer?
Thanks,
Joe
Integrating frontend React applications with backend services like IRIS database via REST APIs can be a powerful way to build robust web applications. However, one common hurdle developers often encounter is the Cross-Origin Resource Sharing (CORS) issue, which can prevent the frontend from accessing resources on the backend due to security restrictions enforced by web browsers. In this article, we'll explore how to tackle CORS issues when integrating React web apps with IRIS backend services.
Creating the Schema
We start by defining a simple schema named Patients:
Given a properly formatted ISO 8601 date time of 2024-06-23T06:03:00Z using SQL DatePart results in an error:
[SQLCODE: <-400>:<Fatal error occurred>]
[%msg: <Invalid input to DATEPART() function: datepart='ss', datetime value='2024-06-23T06:03:00Z')>]
If I remove the trailing Z (for Zulu / UTC time) and leave the T, DatePart works fine.
I have also tried various ± offsets from UTC e.g. +0400 and that also results in the same SQL error
Hi everyone,
We have successfully configured the Patient Index and are now looking to bring it to upper environments. Our plan is to export the Linkage Definition and import it into higher environments to avoid any manual work. However, I am having trouble finding an export option in the Linkage Definition Designer and locating the globals that hold this setup.
I would greatly appreciate any tips or guidance on how to export/import the Patient Index configuration between environments.
Thank you in advance!
I am updating a large JSON Dynamic Object. Inserting three streams using Do obj.%Set("data",pStream,"stream>base64").
Maybe I am calling Iterate() too often?
Hello,
Thanks for reading this question.
We need to remove the line feeds and carriage returns from start and end, but not from the middle of a string
We have tested the following ways:
set output = $ZStrip("[line feed](carriage return) str [line feed](carriage return) ing [line feed](carriage return)","<>C")But it removes also control characters which we need to preserve...
Also we have tested:
set output = $REPLACE("[line feed](carriage return) str [line feed](carriage return) ing [line feed](carriage return)",$C(13,10),"")
Hello and welcome to the Developer Ecosystem Spring News!
This spring was full of online and offline activities in the InterSystems Developer Ecosystem. In case you missed something, we've prepared for you a selection of the hottest news and topics to catch up on!
%20(2).jpg)
I am working on JSON and want to be prepared to handle large Objects. I try this code:
ClassMethod MaxLen() As %Status
{
set longStr=""
for i=1:1:$SYSTEM.SYS.MaxLocalLength() { set longStr = longStr_"x" }
write "Maximum string length = "_$LENGTH(longStr)
;
set longObject = {"a":(longStr),"b":(longStr)}
set file=##class(%File).%New("/tmp/longObjectFile.txt")
do file.Open("WSN")
do longObject.%ToJSON(file)
do file.Close()
;
do file.Open("RS")
set newObject = {}.%FromJSONFile(file)
write !,"Property newObject.a is "_$LENGTH(newObject.a)_" characters long."
I have JSON object which contains file references. I need to replace the file reference with base64 encoded file which is up to 10MB.
I tried the following but it did not work as expected:
do dynObj.%Set("data",pStream.ReadLineIntoStream(.tSC))
Hey Community!
We're happy to share our newest learning path dedicated to the essentials of GenAI, accessible on the Learning Portal via your SSO:
🤖 Getting Started with Generative AI 🤖
Here is what you can expect:
Hi,
I would like to ask whether there is some option to stop auto-formatting when I compile. The code is sometimes well formatted but the auto-formatter does not work correctly in some situations. I am talking about the compilation in the Studio editor in this image, not about Visual Studio Code.
Thank you in advance,
Alin C Soare.
I try to get a vector from calling GetEmbedding, but i failed to convert it into a vector
Here is a simplyfied sample class:
Class User.myclass Extends %Persistent
{Property myVECTOR As %Vector(CAPTION = "Vector");
Property myProperty As %String(MAXLEN = 40) [ Required ];
}
here the GetEmbedding part from User.mymethods:
Hello. I was asked to base64-encode files such as Word documents (which contain images) and then post them to a Jira server. I found code to base64 encode a file here:
https://community.intersystems.com/post/encoding-base64-stream-chunk-si…
It seemed to work, but when someone tried to open the Word document, the images inside could not be displayed.
Red Hat Insights alerts now available for InterSystems IRIS
InterSystems and Red Hat are working together to add IRIS-specific alerts to Red Hat Insights.
Red Hat Insights is a service to predict and recommend remediations for system risks in Red Hat Enterprise Linux environments. Insights is free with nearly every RHEL, OpenShift, or Ansible subscription. You can learn more about Insights at Red Hat’s site.
Swappiness Recommendation
The first recommendation “Apply swappiness recommendation for better performance of InterSystems IRIS” has been activated.
Hi Community!
We're super excited to invite you to the LinkedIn Live event dedicated to online learning!
🌐 Two Decades of Innovation in Learning and Development 🌐
📅 Thursday, May 30, 10 am ET | 4 pm CEST
🗣 Presenters:
- @John Paladino, Head of Client Services, InterSystems
- @James Breen, Director of Global Learning, InterSystems
In this article we are going to see how we can use the WhatsApp instant messaging service from InterSystems IRIS to send messages to different recipients. To do this we must create and configure an account in Meta and configure a Business Operation to send the messages we want.
Let's look at each of these steps in more detail.
Setting up an account on Meta
This is possibly the most complicated point of the entire configuration, since we will have to configure a series of accounts until we can have the messaging functionality.
Here you can read the official Meta documentation.
InterSystems FAQ rubric
Data for InterSystems products (table row data, object instance data) is stored in global variables.
The data size of each global can be obtained by clicking the properties of the global you want to view from the Management Portal > System > Configuration > Local Database > Globals page, and then clicking the Calculate Size button on the Global Attributes page that appears.
To display the data sizes of globals in a namespace, you can call ^%GSIZE utility on the terminal.
The method of execution is as follows.
From time to time we develop an Ensemble Production with simple SQL Inbound data from external databases, we need to develop a few new classes. There are at least:
- 1 Ens.Request class with the fields captured from the SQL ResultSet
- 1 Business Service class using SQL Inbound Adaptor, and in the OnProcessInput(), copy the relevant field data from ResultSet to the new Ens.Request, and call either ..SendRequestSync() or ..SendRequestAsync().
There are often questions surrounding the ideal Apache HTTPD Web Server configuration for HealthShare. The contents of this article will outline the initial recommended web server configuration for any HealthShare product.
As a starting point, Apache HTTPD version 2.4.x (64-bit) is recommended. Earlier versions such as 2.2.x are available, however version 2.2 is not recommended for performance and scalability of HealthShare.
I am actually new to IRIS, and we are DevOps/PowerShell/Ansible team. We want to achieve certain administration tasks like updating Memory, Heap size, Lock size etc., in Management Portal through PowerShell. Is there any way i can achieve this without out logging in into Management portal. Off course, we have namespace, user id and password details. We have installed ODBC drive and able to update tables in the IRIS database. I have seen updating information in management portal getting updated in cpf file but vice versa i am not aware. i did not try though.
Hi,
After executing a task using RunNow() method of class %SYS.task i am not able to find suitable method for getting the status in %SYS.Task class. Please help how to get the task status throuhgh Python/IRISNAtive for Python combination
InterSystems FAQ rubric
The procedure for uploading/downloading from an FTP server is as follows.
1. Upload the image file to the FTP server
Hi,
Hi have problems to import globals, this is a testing only.
From Caché (v.2012, very older, 8 bits character, Latin1 encode) I created a file exporting globals, file *.gof with de web system utilities,.
When I import these globals to Iris (v2024.1 16 bits character), the restore utility show this error:
In Index types, I can see "Extent Index", Please tell me in detail about it
InterSystems FAQ rubric
If you want to run an OS executable file, command, or a program created within an InterSystems product when the InterSystems product starts, write the processing in the SYSTEM^%ZSTART routine. (The %ZSTART routine is created in the %SYS namespace).
Before you write any code in SYSTEM^%ZSTART, make sure that it works properly under all conditions.
If the ^%ZSTART routine is written incorrectly, or if it is written correctly but the command does not return a response or an error occurs during processing, InterSystems products may not be able to start.
Hello,
With my team, we're evaluating the different streams existing in order to find good pratices for our project using InterSystems IRIS. In doing so, we found that there exists different forms of the same stream with the %Stream.FileBinary and %Stream.FileBinaryGzip classes. We think that the %Stream.FileBinaryGzip takes less space to be stored, but is there other diferences between these two classes and what would you recomend to use ? Is it the same thing for %Stream.FileCharacter and %Stream.FileCharacterGzip ?
Thanks for your help,
Vincent Dheilly



