Question William Liu · Jun 26, 2024

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?
 

0
0 120
Announcement Laurel James (GJS) · Jun 26, 2024

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.
 

0
1 211
Question Joe Jones · Mar 13, 2023

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

14
0 1467
Article Xintong Li · Jun 26, 2024 8m read

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:

5
8 641
Question Carl (booz Allen) Deitrich · Jun 25, 2024

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

2
0 265
Question David.Satorres6134 · Jun 24, 2024

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!

4
0 182
Question Yone Moreno · Jun 25, 2024

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),"")
7
0 525
Question Oliver Wilms · Jun 23, 2024

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."

5
0 360
Question Oliver Wilms · Jun 23, 2024

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))

9
0 216
Question Alin Soare · Jun 20, 2024

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.

6
0 253
Question Ditmar Tybussek · Jun 23, 2024

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:

4
0 253
InterSystems Official Bob Kuszewski · Sep 28, 2023

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. 

1
0 534
Article Luis Angel Pérez Ramos · Feb 7, 2024 6m read

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.

1
4 746
Article Tomoko Furuzono · Jun 13, 2024 4m read

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.

2
1 767
Question Joseph Tsang · Mar 22, 2019

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().
3
0 489
Article Mark Bolinsky · Feb 5, 2019 9m read

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.

1
15 11626
Question Veerraju Grandhi · Jun 9, 2024

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. 

4
1 266
Question Josep Balagué · Jun 17, 2024

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:

2
0 234
Article Hiroshi Sato · Jun 6, 2024 1m read

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.

1
0 182
Question Vincent Dheilly · Jun 11, 2024

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

2
0 223