#InterSystems IRIS for Health

10 Followers · 2.4K Posts

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.

InterSystems Official Fabiano Sanches · Sep 2, 2022

In addition to the new supported platforms (Ubuntu 22.04 LTS and RHEL 9), Community Edition limits will soon be updated to:

  • Maximum cores: 20
  • Maximum connections: 8 

NOTE: These limits aren't available yet for the latest developer preview build 2022.2.0.322.0. It's expected to the Developer Preview 7, to be released by next week.

2
0 397
Question Michael Davidovich · Aug 26, 2022

Hello,

I'm using CircleCI to spin up the image `store/intersystems/irishealth-community:2021.2.0.649.0`.

When building the application we are getting messages that say:

ERROR #5373: Class 'EnsLib.HL7.Message', used by 'Package.Class', does not exist
Skip class Package.Class

Other missing classes seem to include, but not limited to:

Ens.BusinessProcessBPL
Ens.BusinessService
EnsLib.RecordMap.ComplexChild
EnsLib.EDI.XML.Document
Ens.Request

Binding to a port and looking the management portal, it seems we have the namespace HSLIB and some classes:

As far as we understand, these classes should

19
0 550
Article Renan Lourenco · Mar 9, 2020 2m read

InterSystems IRIS for Health ENSDEMO

Yet another basic setup of ENSDEMO content into InterSystems IRIS for Health.

Make sure you have Docker up and running before starting.

Setup

Clone the repository to your desired directory

git clone https://github.com/OneLastTry/irishealth-ensdemo.git

Once the repository is cloned, execute:

Always make sure you are inside the main directory to execute docker-compose commands.

docker-compose build

Run your Container

After building the image you can simply execute below and you be up and running 🚀:

-d will run the container detached of your command line ses

vscode

14
0 653
Question Phillip Wu · Aug 7, 2022

I’m a complete novice with ObjectScript.

I’m trying to write some Object Script directly into command line interface on Linux using some examples on the internet

sudo -u irisowner iris session SCRTC

Username: superuser

Password: ************

AUMHSCRTC:USER>a SET x=1

AUMHSCRTC:USER> WHILE x<10 {

AUMHSCRTC:USER> WRITE !," Looping",x

AUMHSCRTC:USER> SET x=x+1

AUMHSCRTC:USER> }

AUMHSCRTC:USER> WRITE !,"DONE"

AUMHSCRTC:USER>do a

 Looping1

 Looping2

 Looping3

 Looping4

 Looping5

 Looping6

 Looping7

 Looping8

 Looping9

DONE

That seems to work!

How if I put these commands

16
0 626
Question Michael Hellemans · Aug 31, 2022

Hello,

I need to run some clean up routine in the background so loss of my terminal session won't stop the process.

I found the JOB command in the documentation.
JOB | ObjectScript Reference | InterSystems IRIS Data Platform 2022.1
When I try it, it doesn't seem to be doing much. I also expected this to become visible in the Background Tasks but that doesn't happen either.

Probably I am missing something.

This is the command I am running:
JOB ##class(HIHLib.Support.GetHL7MessageStat).ISBListingQuery("2017-01-01","2017-02-01",0,"WAHISCL",-1,0)::10

The same command without the ::10 has the sam

5
1 601
Announcement Anastasia Dyubaylo · Aug 22, 2022

Hi Community,

We are glad to invite you to the upcoming Interoperability Contest Kick-off Webinar: Building Sustainable Solutions! The topic of this webinar is dedicated to the Interoperability programming contest.

In this webinar, we'll show you some of the general principles and problems of solving sustainability challenges, as well as some great ideas that came up in hackathons for inspiration and do's and don'ts. 

Also, we’ll discuss and answer the questions on how to build interoperability solutions using InterSystems IRIS and IRIS for Health.

Date & Time: Monday, August 29 – 09:00 AM EDT

Speakers:  
🗣 Tomas Studenik, CEO of Insane Business Ideas and co-founder of Caelestinus
🗣 @Dean Andrews, Head of Developer Relations  
🗣 @Evgeny Shvarov, InterSystems Developer Ecosystem Manager


3
0 400
Job Spencer Frey · Aug 31, 2022

Hi everyone!

I am recruiting on a fully remote Intersystems Developer.  This role will be a long term contract to begin with high likelihood of extensions or conversion permanent.  Please check out the job description down below and feel free to send me an email with your resume: Spencer.Frey@insightglobal.com 

The Healthcare Integration Developer is responsible for designing, developing, and deploying the complex near real-time and real-time data interoperability solutions using Healthcare industry-standard data formats/specifications (HL7, FHIR, EDI, etc.). The role is responsible for cons

1
0 425
Article Mark OReilly · Aug 31, 2022 2m read

Background 

Most websites have a "Fav.ico" file that sets what the icon is for the webpage. Most users have multiple environments, Dev/Test/Live. Often it can be difficult at a glance to see which environment you are in at a time. Wouldn't it be nice to visually see what version you are in? In this example all the instances are called the same and are named "ENSEMBLE". Note that this is certainly IRIS FOR HEALTH as is used on 2022.1 

The default Icon is IR

In this article we will change to logos to similar to the below 

Icon File

The icon file is installed with your installation fo

1
0 521
Question sween · Apr 1, 2022

Upgraded IRIS/Connect to 2022.1 and /api/atelier no longer works through a Web/CSPGateway.  Also upgraded the Web/CSPGateway to version WebGateway-2022.1.0.152.0 on Ubuntu and HTTPD Server version: Apache/2.4.29 (Ubuntu) with no luck as well.

It doesnt seem to matter if I add /api/atelier or /api/monitor to the enabled applications list, these routes do not make it back to the instance, however /csp, /csp/sys still does.

Am I missing a step in this upgrade process to serve these apps through Web/CSPGateway in the new kit version?
I can curl the monitor/atelier endpoints successfully directly

2
0 372
Question Mark OReilly · Aug 24, 2022

I am using $Query to loop through a global. 

When I use $GET to get the data all we get back is the global name. 

How do you get the value of the global after you have looped. 

Below is my example in terminal. 

Thank you in advance 

Set node = $Query(^FromExtraMed("")) 

w node
^FromExtraMed("A02",9220)

If i try w $GET(node) it returns 

^FromExtraMed("A02",9220)

If i had this hardcoded it would have got the value

w $GET(^FromExtraMed("A02",9220))
0,66340,2120

I have already read the documentation and it is not clear. Can someone advise? 

5
0 395
Question Richard Cawthraw · Jul 27, 2022

I am receiving batched results in an EDIFACT file. I need to debatch and send individual HL7 out. I have built a DTL to read the first instance of a result from EDIFACT and that generates an ORU^R01 as desired, but I have no idea how to make the DTL loop and send multiple HL7 messages outbound.

I did go down the path of stripping the first instance of a result from the EDIFACT, then sending the now truncated EDIFACT data back to itself. This works well in theory but I then need a while loop in the Rule Editor, and I cannot seem to access the source.RawContent property of the virtual doc in th

1
0 267
Question Michael McGrann · Aug 15, 2022

We are looking for a 3rd party application that can scan our IRIS based Cache Object Script code for vulnerabilities or coding weaknesses.  There are many, many applications/vendors out there that do code scanning but none seem to support Cache Object Script or scanning the IRIS environment.   If anyone is aware of a company/product that can scan our code / IRIS environment, I would love to hear about it.

Thanks in advance for the help.

Mike

3
0 580
Question Lewis Houlden · Aug 17, 2022

I am trying to import a large base64 string into objects but I can't seem to get it to work:

ClassMethod Test() As %Status
{
Set readerForItkRequestData = ##class(%XML.Reader).%New()
 
Set file="c:\Source\test_full.xml"
 
Set status = readerForItkRequestData.OpenFile(file)
Do readerForItkRequestData.Correlate("Envelope","Phu.Epro.Schema.Itk.Envelope")
set temp = readerForItkRequestData.Next(.pOutput,.tStatus)
Do pOutput.%Save()

}

The class I'm trying to project to: 

Class Phu.Epro.Schema.Itk.Payload Extends (%Persistent, %XML.Adaptor)
{

Parameter XMLIGNOREINVALIDTAG = 1;

Property ManifestItemId

4
0 449
Article Lucas Enard · Aug 17, 2022 8m read

In this GitHub we gather information from a csv, use a DataTransformation to make it into a FHIR object and then, save that information to a FHIR server all that using only Python.

The objective is to show how easy it is to manipulate data into the output we want, here a FHIR Bundle, in the IRIS full Python framework.

1. Fhir-orga-dt


















Settings

3
0 653
InterSystems Official Fabiano Sanches · Aug 17, 2022

This is the fifth in a series of releases that are part of the developer preview program for 2022.2 Future preview releases are expected to be updated biweekly and we will add features as they are ready.  Many updates, fixes and enhancements  have been added in 2022.2, in SQL management, cloud integration, Kafka and JMS adapters, the SQL Loader, and other areas. Please share your feedback through the Developer Community so we can build a better product together.

The Early Access Program (EAP) is still active for the Columnar Storage.   Customers interested in exercising it should join the Ear

0
0 317
Question Chi Wan Chan · Jun 27, 2022

Hi all,

I am trying to test the IAM locally, but I came to a issue. When I turned on the the Basic Authentication, I get an 503 Service Unavailable.
error.

This is the scenario/setup:

1
0 407
Article Michael Braam · Aug 17, 2022 12m read

Being interoperable is more and more important nowadays. InterSystems IRIS 2022.1 comes with a new messaging API to communicate with event streaming platforms like Kafka, AWS SQS/SNS, JMS and RabbitMQ.
This article shows how you can connect to Kafka and AWS SQS easily.
We start with a brief discussion of the basic concepts and terms of event streaming platforms. 

Event streaming platforms purpose and common terms

Event streaming platforms like Kafka or AWS SQS are capable to consume a unbound stream of events in a very high frequency and can react to events. Consumers read the data from stream



0
1 637
Question Michael Davidovich · Aug 12, 2022

Does anyone have experience with CircleCI or really any automation tool using %UnitTest?

I have built my app and ran my unit test in a Docker container automated by CircleCI.  However, after many of the tests failed I see:

How do you halt out of the IRIS session and return an exit code to the shell?

I have a script in my repo that I pass into IRIS after CircleCI does the code checkout

iris session IRIS < inFile

Am I trying to approach this the wrong way?  Should I be writing test output to a file or something?  Even so, I still need a way to say to CirclCI "unit tests failed, so don't d

8
0 569
Question Glenn Bickel · Aug 11, 2022

Hi,

I encountered a strange issue I just can’t solve and I am running out of ideas. After reading the relevant passages of the documentation, asking the community is my last resort.

The task itself is not complicated at all. I am using an EnsLib.SQL.OutboundAdapter to connect to a MS SQL Server (12.0.6433.1) and execute a simple query. Said query is using a temporary table from which I just can’t select any data afterwards. All I get is this error message: <Ens>ErrNoSQLColumns.

I reduced the statement for debugging to this query:

DECLARE @result AS TABLE(

                CaseID varcha

3
0 381
Question Suzy Green · Aug 10, 2022

I am trying to use the IRIS connection to connect from our LIS to Health Connect (ENSEMBLE) directly.  You can do this in the same namespace using this:

##class(Ens.Director).CreateBusinessService(Ensemble Service Name,.theService)
theService.ProcessInput(TRAN,.response)

I would like to be able to do the same thing across servers using IRIS connection.  I have the following connection:

                set connection = ##class(%Net.DB.DataSource).CreateConnection(host, port, namespace, user, pwd)
                if 'connection.IsConnected set ERRTXT="NotConnected" quit
                se




3
0 375
Article Muhammad Waseem · Jul 26, 2021 2m read

Healthcare interoperability is instrumental in improving patient care, decreasing healthcare provider costs, and providing a more accurate picture to providers. However, with so many different systems, data is formatted in many different ways. There are many standards that have been created to try to solve this problem, including HL7v2, HL7v3, and CDA but each one has its drawbacks.

FHIR, or Fast Healthcare Interoperability Resources, is a new format for healthcare data that aims at solving these problems. It is developed by Health Level Seven International (HL7), an organization that also de






2
1 2994
Question Nicky Zhu · Mar 16, 2022

Hi guys, I'm calling a java method as below:

public static byte[] SM4EncryptJson(byte[] arg0) throws Throwable {

String inJson = "";

try {

//logger.info("Payload :" + arg0);

inJson = new String(arg0);

//logger.info("As String :" + inJson);

EncTarget payload = JSON.parseObject(inJson, EncTarget.class);

return SM4Encrypt(payload.getContent().getBytes(),payload.getSecretKey());

}catch (Exception e){

logger.error("Error encrypting : ", e);

logger.error("Content : " + arg0);

logger.error("As String : " + new String(arg0));

//logger.log(Level.SEVERE, e.toStrin
4
0 463
Question Nicky Zhu · Jun 10, 2022

Hi,guys

My client is using IRIS 2021.1 Interoperability and they want to highlight the sessions with unresolved(without resent and completed operations) errors so their maintenance team can have a list of unresolved sessions to check against.

When I'm working on it, it seems to be it is is difficult to decide whether a session have unresolved errors. For example,

enter image description here

in this session, the entry async request is labelled as error after the following dispatches was resent and completed. So it is not correct to decide with the entry. Does it mean that we'll need to fetch all messages from a sessi

2
0 464
Question Jonathan Lent · Aug 4, 2022

I've faced a problem that happens while debugging a process in VSCode. It doesn't seem to matter if this is in a container, on my development VM, or against a locally installed version of IRIS. The problem seems to be mostly with X12 Documents.

So, in a debug session, I can dump out a value to the debug console and it loos correct. The same variable in VSCode appears to be some uninitialized memory location.

In the interactive debugger window:

In the Variables Window:

Host Workstation:

It's not all variables, as you can see, and it always seems to to be same garbage values that get

4
0 472
Question Phillip Wu · Aug 5, 2022

I want to get Mirror Status and copy this report into a file for audit purposes.

I have a Linux servers for IRIS DB with this layout:
LIVETC01           Backup
LIVETC02           Primary
LIVEDR             Async Copy
ARBITER

I understand that this will get me the mirror status
# sudo -u irisowner iris session LIVETC01
LIVETC01:USER>zn "%SYS"
LIVETC01:%SYS>do ^MIRROR

1) Mirror Status
2) Mirror Management
3) Mirror Configuration

Option? 1

1) List mirrored databases
2) Display mirror status of this node
3) Display journal file info
4) Status Monitor

Option? 4
Status of Mirror LIVETC at 14:25:22 on 08/05

6
0 672
InterSystems Official Fabiano Sanches · Aug 4, 2022

This is the fourth in a series of releases that are part of the developer preview program for 2022.2 Future preview releases are expected to be updated biweekly and we will add features as they are ready.  Many updates, fixes and enhancements  have been added in 2022.2, in SQL management, cloud integration, Kafka and JMS adapters, the SQL Loader, and other areas. Please share your feedback through the Developer Community so we can build a better product together.

 The Early Access Program (EAP) is still active for the Columnar Storage.   Customers interested in exercising it should join the E

0
0 357
Question Michael Davidovich · Jul 29, 2022

What are other's thoughts, opinions and experiences going from CSP to RESTful services, specifically when it comes to reusing code in CSP files?

One could define a method in CSP as follows:

<script language="cache" method="SubmitSomethingAwesome" arguments="aswesomeId:%Numeric"> 

And it's generated in csp.mycsppage.cls ascsp.mycsppage.SubmitSomethingAwesome(awesomeId as %Numeric).

Have people had success defining there rest call by calling the generated CSP classmethod?

Things that work well I've found:

- Procedure block is off so you can easily pass the symbol table around from the REST

3
0 538
Article Sylvain Guilbaud · Apr 20, 2022 4m read

During a major version upgrade it is advisable to recompile the classes and routines of all your namespaces (see Major Version Post-Installation Tasks).

do $system.OBJ.CompileAllNamespaces("u")
do ##Class(%Routine).CompileAllNamespaces()

To automate this administration task and keep a log of any errors, below is an example of a class to import and compile into the USER namespace that you can use after each upgrade : admin.utils.cls

 

 Class admin.utils.cls

3
1 1462