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

Announcement Pravin Barton · Nov 2, 2021

Hello everybody! We’re happy to announce a new way to download Community Edition kits of InterSystems IRIS and IRIS for Health. The Community Edition is a no-cost developer edition that makes it easy to start developing solutions with IRIS. You can now download these kits through the Evaluation service: evaluation.intersystems.com.

If you already have an InterSystems single sign-on account (for example, to post here on the Developer Community), you can log in with those credentials. If you're new to InterSystems, please follow the link from the login page to register for a new account.

Onc

3
3 1736
Question Cyril Grosjean · Jan 2, 2024

Hi,

I'm trying to access to my datas stored in a RecordMap from SQLAlchemy, and I need to access to any tables already created before using SQLAlchemy.

Here is some part of my code :

TestBase:

classTestBase(DeclarativeBase):
    CreatedAt: Mapped[int] = mapped_column(TIMESTAMP, default=func.now())
    UpdatedAt: Mapped[int] = mapped_column(TIMESTAMP, default=func.now(), onupdate=func.current_timestamp())

 

Engine creation and entities binding :

bases = {
    "TEST": TestBase.metadata.create_all,
}

defcreate_engine_and_session(namespace: str) -> Session:
    engine: Engine = cr
0
0 170
Question Ashok Kumar T · Dec 19, 2023

Hello Community,

How to properly connect and run the Grafana with my local IRIS community instance  in Windows machine. I had executed Mr. @Dmitry Maslennikov contianerzied environment from this POST  and it's working pretty. However the Plugin is not yet posted in the Grafana plugin datasource. What is the roadmap to do setup and establish connection same in my local environment . I have read some additional community post for reference 
 

Regards,

Ashok

1
0 308
Article Mihoko Iijima · Dec 28, 2023 1m read

InterSystems FAQ rubric

There is no need to recompile the routines after the version upgrade, but since the version update overwrites %SYS, user-created INT and OBJ format routines (*.INT,*.OBJ) in %SYS will be deleted. Therefore, you need to be careful. 

MAC, INT and OBJ routines with the following names are not deleted.

%Z*.INT, %z*.INT, Z*.INT,z*.INT
%Z*.OBJ, %z*.OBJ, Z*.OBJ,z*.OBJ

Please note that classes/CSPs need to be compiled after upgrading.

However, if you are upgrading to a maintenance release, no compilation is required. For details, please refer to the document below.

Post-up

0
1 256
Question Flávio Lúcio Naves Júnior · Dec 21, 2023

Hello everyone,

I'm currently conducting tests using the docker image intersystemsdc/irishealth-ml-community:latest. I'm accessing the Linux terminal and attempting to utilize the superuser functions, but I'm encountering an issue with the password. Could someone assist me, please?

Best Regards,
Flávio

1
0 280
Article Mihoko Iijima · Dec 21, 2023 1m read

InterSystems FAQ rubric

If multiple InterSystems products are installed on the same system, the latest version of the InterSystems ODBC driver among the installed products will remain registered in the driver manager.

You can change to any driver by changing the registry entry below.

 Please note that running RegFiles.bat does not change the ODBC driver.

The registry entry is as follows.

HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\InterSystems ODBC35 key Driver
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\InterSystems ODBC35 key Setup

The above entry records the path to the driver cu

0
0 414
Question Rizki Okta Alhadi · Dec 17, 2023

Hi all

how to enable content-type : application/json 

this is our web application environment

with body request

we got result when our hit with postman like this

{

    "resourceType": "OperationOutcome",

    "issue": [

        {

            "severity": "error",

            "code": "invalid",

            "diagnostics": "<HSFHIRErr>InvalidContentType",

            "details": {

                "text": "The Content-Type 'application/json' is not supported."

            }

        }

    ]

}

what we have to do to make this request success, thanks for your help and time

Tha

4
0 495
Question Ashok Kumar T · Dec 19, 2023

Hello Community,.

I've updated the IRIS community form 2023.2 to 2023.3 and I didn't see the User defined(Sample) error messages in ^IRIS.Msg global even I verified in both pointer and data level. I re run the set x=##class(%MessageDictionary).Import("error.xml") After import I could see the pointers and data in ^IRIS.Msg

Is the User defined error will reset from the server after IRIS upgrade?

Regards,

Ashok

1
0 165
Article Evgeny Shvarov · Mar 27, 2023 1m read

Hi folks!

Recently I was in need to setup a local FHIR server using IRIS For Health and I think I found the easiest and simplest way ever.

Just run in terminal these two lines below :

docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/irishealth-community

and

docker exec -it my-iris iris session iris -U "USER" '##class(%ZPM.PackageManager).Shell("install fhir-server")'

And you'll have FHIR server running locally at http://localhost:9092/fhir/r4.

That's it!

The FHIR server will use the latest build of InterSystems IRIS for Health Community Edition and will deploy FHIR server from this app via IPM package in  FHIRSERVER namespace.

This is for Mac, so please add in comments how it works in Windows.

This is a very short article as it is really easy to setup a local FHIR server with InterSystems IRIS for Health and IPM Package Manager.

6
0 919
Question Jagadiswara Bandaru · Nov 30, 2023

We have solution which uses IRIS with IAM and webgateway integrated.

After integration, we notice that in the kong configuration in the kongdb upstreams are not created as listed in the kong.yml

We noticed that, IAM api calls are failing with enterprise license expired.

[kong@iam-deployment-75f485954c-ssdfv /]$ curl --location --request POST 'http://localhost:8001/services/'
{"message":"Enterprise license missing or expired"}

From Logs:

`2023/11/22 14:59:04 [notice] 2331#0: *31 [lua] init.lua:393: timer_at(): [timer-ng] fallback to ngx.timer.at [delay = 86400], context: ngx.timer
2023/11

3
0 401
Question Ashok Kumar T · Dec 17, 2023

Hello Community,

Is there any way to avoid generating the built in validation inside the classmethod from the .disp class definition. I've added the resource with path parameter as integer in swagger 2.0 open API.  The class method(in my case getRandom is the class method) inside .disp handles the integer validation by default. Is there a way to avoid/remove by default.

default validations for Integer

If ($number(pmin,"I",-2147483648,2147483647)="") Do##class(%REST.Impl).%ReportRESTError(..#HTTP400BADREQUEST,$$$ERROR($$$RESTInvalid,"min",pmin)) QuitIf ($number(pmax,"I",-214748364
0
0 141
Article sween · Oct 20, 2023 6m read

This article will cover turning over control of provisioning the InterSystems Kubernetes Operator, and starting your journey managing your own "Cloud" of InterSystems Solutions through Git Ops practices. This deployment pattern is also the fulfillment path for the PID^TOO||| FHIR Breathing Identity Resolution Engine.

Git Ops

I encourage you to do your own research or ask your favorite LLM about Git Ops, but I can paraphrase it here for you as we understand it. Git Ops is an alternative deployment paradigm, where the Kubernetes Cluster itself is "pulling" updates from manifests that reside i







image

3
1 879
Announcement Larry Finlayson · Dec 14, 2023

Building and Managing HL7 Integrations – Virtual  January 22-26, 2024

  • Build, configure, and manage HL7® V2 interfaces using InterSystems integration technologies.
  • This healthcare-focused 5-day course teaches implementation partners, integrators and analysts how to rapidly build HL7 integration solutions.
  • Students build a production that processes and routes HL7 messages.
  • Students learn how to work with the pre-built HL7 business services, business processes and business operations to receive and send HL7 messages.
  • Students also learn how to transform HL7 messages using graphical tool
0
0 248
Announcement Larry Finlayson · Dec 14, 2023

Managing InterSystems Servers –Virtual  January 22-26, 2024

  • This five-day course teaches system and database administrators how to install, configure and secure InterSystems server software, configure for high availability and disaster recovery, and monitor the system. Students also learn troubleshooting techniques.
  • This course is applicable to both InterSystems IRIS and Caché. Although the course is mostly platform independent, students can complete the exercises using either Windows or Ubuntu.
  • Self-Register Here
0
0 148
Question Sebastian Thiele · Dec 13, 2023

Hi community,

I´ve setup a local FHIR server via the framework functionality und set a service config name for the created endpoint since I plan to use a production based FHIR server. I´ve created an additional ressource "FhirClientRessource" and role "FhirClientRole" as well as a user named "FhirClient". The Role resource "FhirClientRessource" ist set as "required resource" in the FHIR server configuration page. The user "FhirClient" is member of the Role "FhirClientRole" which in turn holds RWU priveliges on the "FhirClientRessources".

The user itself does not have the %All Permission. The

4
0 372
Question David Hickman · Dec 12, 2023

I'm receiving a JSON payload via a REST API, I'd like to %JSONImport this stream into a class which extends %JSON.Adaptor. The problem is that the JSON is an array whose elements have no key (as you can see in the example JSON below). Right now I'm having to do some manipulations to convert the stream into a dynamic object and do a %Set which inserts a made up key "record" so "thingone" and "thingtwo" have an associated key that I can use when referencing "thingone" and "thingtwo"...such as record.GetAt(1).thingone

I'm also finding myself having to do the reverse when sending payloads back ou

3
0 370
Question Barbara Raviolo · Dec 12, 2023

Hello all,
we have an encryption problem.

Out partner decode url with AES CBC 256 using crypto-js
https://community.dynatrace.com/t5/Troubleshooting/AES-Encryption-and-D…

with this params value:
var iv = CryptoJS.enc.Hex.parse("0000000000000000");
var stringyouWantToEncrypt = "HelloWorld";
var base64Key = "RXJjb2xpbm9zZW1wcmVpbnBpZWRp";
var encrypted = CryptoJS.AES.encrypt(
    stringyouWantToEncrypt,
    CryptoJS.enc.Base64.parse(base64Key),
    {
        iv: iv,
    }
);
console.log("Key " + CryptoJS.enc.Base64.parse(base64Key));
console.log("Result! "

4
0 589
Article Yuri Marx · Dec 12, 2023 7m read

In part I of this article, we have already learned more about HL7, its messages, structure, segments, and fields. In this part II, we will show you how to transform proprietary/custom data into HL7 using IRIS for Health. For our sample, we used the data generated by the SYNTHEA bulk data generation project (https://synthea.mitre.org/downloads). So, we will show you how to convert 1000 patients from a CSV file to HL7 v2, using the Interoperability features of IRIS for Health.

Article support application – custom2hl7

You can install the sample application that will be used in this article by f
























0
0 727
Article Yuri Marx · Dec 12, 2023 7m read

EHR (Electronic Health Record) systems are designed in a proprietary format/structure and are not based on such market models as FHIR or HL7. Whereas some of those systems can interoperate data in a proprietary format for FHIR and further market models, others cannot. InterSystems has two platforms that can interoperate proprietary formats for market standards: InterSystems HealthShare Connect and InterSystems IRIS for Health. The transformation functionality (DTL - Data Transformation Language) of these platforms can receive data in any format, structure, or communication channel (CSV, JSON,









0
1 689
Question Lewis Houlden · Dec 11, 2023

Hi all

I'm having trouble defining the mapping needed to take the very large base64 string in OBX:5.5, and map it to an XML virtual document property that supports Stream.GlobalCharacter. I know from within the DTL you have to use custom code to manage the segment due to its size. 

do target.StoreFieldStreamRaw(.stream,"LetterAttachment(1).Base64EncodedFile(1)", .rem)
 set tObx14Value = $piece(rem,"|",10)
 set convertedDate = ##class(Phu.Shared.Util.DateTime).ConvertHl7DateTimeToXmlDateTime(tObx14Value)
 do target.SetValueAt(convertedDate,"DocumentDetails(1).AuthoredDate(1)")
 do target.SetValu

4
0 434