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

Question Scott Roth · Oct 6, 2023

I recently started work on trying to Tighten Security in our Development Instance of IRIS that is running based on recommendations from our Audit as you might of seen from my other posts. I am currently trying to get into the Private Web Gateway Manager within IRIS as CSPSystem, but when I attempt to sign in nothing happens. 

I went through and reset the password in the CSP.ini and within IRIS for CSPSystem. I made sure it had the new GatewayRole per suggested 

https://docs.intersystems.com/healthconnect20231/csp/docbook/DocBook.UI.Page.cls?KEY=GSECURING_tighten#GSECURING_tighten_smp_CSPSysA

2
0 656
Article Claudio Devecchi · Nov 26, 2020 16m read

Introduction

We are in the age of the multiplatform economy and APIs are the "glue" in this digital scenario. Since they are so important, they are seen by developers as a service or product to be consumed. Therefore, usage experience is a crucial factor for its success.

In order to improve this experience, specification standards such as the OpenAPI Specification (OAS) are increasingly being adopted in the development of RESTFul APIs.

What is IRIS ApiPub?

IRIS ApiPub is an Open Source project whose main goal is to automatically publishRESTful APIs created with Intersystems IRIS technology, i







4
4 1405
Question Scott Roth · Oct 6, 2023

I am trying to lock down security within our Development environment per requirements from a Security Audit that was done earlier this year. I need to try to limit access at a public level, access to cache users, and exposure.

I installed IRIS with the Lockdown method, and have configured my web applications, services, resources, etc.

When I go into my namespace, I am constantly presented with the following error when I try to start or stop an Object...

Cannot login as IRIS manager. Please confirm the '_Ensemble' user is enabled and is assigned the '%All' role.

_Ensemble already has the %A

3
0 296
Question Scott Roth · Oct 4, 2023

We currently have a couple of Shell scripts we have written to EnableConfigItem from a Unix (Red Hat) command line, so we can control when a Service/Operation is running via the cron in Unix. We do this by calling

:>iris session xxxxx

using _system user.

During our Security audit it was mentioned that we need to lock down some of the cache users. 

  • So, has others written scripts to make IRIS calls via command line?
    • If so, what is the consensus of using a Cache user vs using say a LDAP service account?
  • Or what have you used in the past to ensure that the password is not hardcoded any
3
0 366
Question Martin Staudigel · Oct 2, 2023

Hello Community,

I am working on creating a FHIR bundle with Practitioner resources inside of a BPL business process. Data source is a cache database table containing business partner data objects.
Part of the implementation is a loop over all new or updated data objects. For each element a SAP call is made to retrieve more information and add it to the target resource. As there was no last run on first start, approx. 130000 objects are initially to be exported. After the first run, there would not be more than 100 to be updated on each run.
The process runs fine for some thousand objects, but

3
0 655
Article Megumi Kakechi · Sep 28, 2023 2m read

InterSystems FAQ rubric

In the sample below, an image file is encoded into a Base64 string in a class property, saved, decoded again with Base64, and restored to another file.

【Usage class】

Class User.test Extends %Persistent
{
Property pics As %GlobalBinaryStream;
}


【When importing】

  set x=##class(User.test).%New() // create a new object

  // prepare an image
  set file=##class(%File).%New("c:\temp\Mii.png")
  do file.Open("RUK\BIN\")
  for {
       if file.AtEnd=1 quit
       // Convert image to Base64 format in chunks of 1024 bytes
       set cnt=file.Read(1024)
       se
2
2 725
Article Mihoko Iijima · Oct 5, 2023 1m read

InterSystems FAQ rubric

On Linux, use the iris command to execute a routine or method from a shell and get the return value.

For more information,  please refer to the document "About Instance Connections".

An example of a command is as follows.

iris terminal instname [arguments]

The return value of a shell script can be specified using a special variable using the Terminate() method of the %SYSTEM.Process class when the process ends, rather than by specifying an argument in the QUIT or RETURN command that is specified when a routine or method ends. Use the method of returning a value to

2
1 574
InterSystems Official Fabiano Sanches · Oct 4, 2023

InterSystems announces its second developer preview for the 2023.3 release of InterSystems IRIS® and InterSystems IRIS for HealthTM.

Future preview releases are expected to be updated biweekly and we will add features as they are ready.

Please share your feedback through the Developer Community so we can build a better product together. Initial documentation can be found at these links below. They will be updated over the next few weeks until launch is officially announced (General Availability - GA):

Highlights

There are several excitin

0
0 305
Article Keren Skubach · Oct 1, 2023 1m read

Are you preparing to use VS code for the first time? Just make sure you have enough privileges.

Have you defined your Iris server in your VS Code settings, and still get the following error?

VS Code accesses Iris/HealthConnect using the web application /api/atelier. If you do not have permission (i.e. you are using an LDAP user to connect and the web application is not configured to support LDAP), this is the reason why you couldn't connect.

you will also notice a 'Login Failure' entry in the audit database, with the reason for it. Get your system manager to add the needed permission to t

3
2 557
Question Jonathan Lent · Sep 25, 2023

All,

I've asked my teammate to open a WRC on this issue, but wanted to open the discussion to see if maybe we aren't the first people to see this issue.

The code we are deploying is a COS object with some Python methods. The code works fine locally on the developer's machine. However, when the business process runs in the server environment, we see the following when COS code attempts to call a [Language = python] method:

In component Event Log:
ERROR <Ens>ErrException: <OBJECT DISPATCH>ValidateSheet+9 ^ClientPortal.Process.FinalClientAdjustmentApprovalProcess.1 *python object not found -- l

5
0 422
Article Robert Cemper · Sep 26, 2023 1m read

The related package avoids adding %JSONAdaptor to each class but uses  instead   
SQL functions JSON_OBJECT() to create my JSON objects. With this approach, you can   
add JSON to any class - even deployed ones - without any need for change or recompiling.

The trigger was the Export of M:N relationships  as JSON  objects or arrays.

0
0 454
Question Christine Nyamu · Sep 14, 2023

I need to run a SQL query and use the output to map PV1 7.1. The query is :

SELECT ID
FROM TestTable
WHERE ProviderName = 'TEST,PROVIDER' AND IDType= 'BPI'

When I run this query with the 'TEST PROVIDER'  I do pull the ID in question but I can't figure out how to do it from the DTL given that there are various providers sent in PV 1 7 . Any assistance will be greatly appreciated. 

8
0 534
Question Ashok Kumar T · Sep 24, 2023

I have created a FHIR endpoint and send the FHIR resource to FHIR Interoperability production class which is HS.FHIRServer.Interop.Service through the the created endpoint(/r4). I can able to see/get the HS.SDA3.QuickStream(It use CacheTemp.HS.Stream temporary globalon the fly(In between the process). I'm unable to get the FHIR resource from the QuickStream once the process completed. Is this HS.SDA3.QuickStream is wiped out from the system once process completed?

Executed the below code. Even tried with zwrite of ^CacheTemp.HS.Stream is also empty. Tried with IRSITMEP database as well.

1
0 444
Article Mihoko Iijima · Sep 21, 2023 1m read

InterSystems FAQ rubric

The meaning of each timeout value is as follows.

1. [Server response timeout]

If IRIS/Caché processing (routine or query execution) does not finish within this set time, the browser will return an error.

For example, if this value is 60 seconds and it takes 90 seconds to execute a routine/method/query, an error will occur.

2. [Queued request timeout]

For each IRIS/Caché server configured in CSP/REST, you can limit the number of processes that can run CSP/REST concurrently.

For example, when the maximum number of server connections is 3 and if multiple pages tha

2
0 628
Question Mary George · Sep 20, 2023

Hi Community, 
 

Can I please check what the size limit for the parameter in  $SYSTEM.Encryption.Base64Decode() method ? 

I have a 12 page base64 encoded PDF document, which is failing when decoded. I am getting the error below:

ERROR <Ens>ErrException: <ILLEGAL VALUE>zXSDToLogical+1^%Library.Binary.1 -- logged as '-' number - @''

OBX:5 size=4233781

I tried the below from terminal, but it is not able copy the whole string for the parameter so couldn't execute it. 

Set text=$SYSTEM.Encryption.Base64Decode("JVB<<TRUNCATED>>) 

I am able decode the same string using notepad++ and save i

4
0 676
Question Scott Roth · Aug 22, 2023

My original ZAUTHENTICATE.mac to use Delegated sign on did not include GetCredentials(), however I am being told it probably should have it so I am eliminate an error I am seeing when trying to troubleshoot the ZAUTHENTICATION. I am trying to add the GetCredentials() from the documentation to the existing ZAUTHENTICATE.mac  but I am getting an error

GetCredentials(ServiceName,Namespace,Username,Password,Credentials) Public {

  // For console sessions, authenticate as _SYSTEM.
  If ServiceName="%Service_Console" {
    Set Username="_SYSTEM"
    Set Password="SYS"
    Quit$SYSTEM.Status





7
0 626
InterSystems Official Fabiano Sanches · Sep 20, 2023

InterSystems announces its first developer preview for the 2023.3 release of InterSystems IRIS® and InterSystems IRIS for HealthTM.

Future preview releases are expected to be updated biweekly and we will add features as they are ready.

Please share your feedback through the Developer Community so we can build a better product together. Initial documentation can be found at these links below. They will be updated over the next few weeks until launch is officially announced (General Availability - GA):

Highlights

There are several excit

1
0 334
Announcement Mihoko Iijima · Sep 20, 2023

Hello developers!

We are holding the first technical article contest on Japan's InterSystems Developer Community!

The first contest is a technical document writing contest, and you can submit any content related to the InterSystems IRIS/InterSystems IRIS for Health. (The article must be in Japanese.)

✍ InterSystems Japan Technical Document Writing Contest: Articles related to IRIS ✍

🎁 Participation prize: There will be a participation prize for everyone who submits an article for the contest.

🏆Special prize: Authors of three selected works will receive special prizes.

Entering the contest is easy! Please post an article related to IRIS on the developer community during the period from Wednesday, September 6, 2023 to Monday, November 6, 2023.


0
0 560
Question Michael Wood · Sep 18, 2023

I am mapping a field to the FHIR Location resource field address.line.  Using message class HS.FHIR.DTL.vR4.Model.Resource.Location

The line field is repeating

I set field as such,

This causes the error,

ERROR <Ens>ErrException: <INVALID OREF>zTransform+71^AH.AHEDSLPFD.Transforms.ReltioEntityToPFDFHIRLocation.1 -- logged as '-' number - @' If 'tIgnore { Set tSC=target.address.line.SetAt(zVALz,(1)) }'

Any suggestions on how I can format the target?

2
0 313