#InterSystems IRIS

19 Followers · 5.5K Posts

InterSystems IRIS is a Complete Data Platform
InterSystems IRIS gives you everything you need to capture, share, understand, and act upon your organization’s most valuable asset – your data.
As a complete platform, InterSystems IRIS eliminates the need to integrate multiple development technologies. Applications require less code, fewer system resources, and less maintenance.

Article Ariel Glikman · Mar 11, 2024 3m read

In case you're planning on deploying IRIS For Health, or any of our containerized products, via the IKO on OpenShift, I wanted to share some of the hurdles we had to overcome.

As with any IKO based installation, we first need to deploy the IKO itself. However we were getting this error:

Warning FailedCreate 75s (x16 over 3m59s) replicaset-controller Error creating: pods "intersystems-iris-operator-amd-f6757dcc-" is forbidden: unable to validate against any security context constraint:

proceeded by a list of all the security context constraints (SCCs) it could not validate against.

0
0 413
Question Pierre LaFay · Feb 4, 2024

Hello everyone,

I am looking for the syntax or the way to use a class created in the "BNA" Namespace (my application) from the %SYS Namespace.

Here is the context:

I have a "BNA" application contained in the "BNA" NS, this application provides a user creation functionality. This feature creates both the user in a table in the application and in the Iris system.

9
0 610
Article Evgeny Shvarov · May 7, 2020 4m read

Hi Developers!

I want to share with you the approach you can use working with Unit Testing which I personally find very convenient and robust.

Will not talk much here about Unit Testing, we have documentation, enough good articles on the topic not only on the Internet but here on Developers Community too,  e.g. this one.

How can you manage the Unit Testing of your ZPM module?

This is pretty handy with ZPM. It has a special command "test" which runs all the tests you mentioned in the module. You can execute it as shown below:

zpm:USER>module-name test

And this command runs all the tests you mentioned in module.xml.

Let's see how it works.

5
3 826
Article Hiroshi Sato · Mar 7, 2024 1m read

InterSystems FAQ rubric

You can use the %IndexBuilder class to perform index rebuilding using multiple processes.

Here is an example for the purpose of defining the standard index HomeStateIdx for the Home_State (state information of contact address) column of Sample.Person.

The steps are as follows:

1. Hide the index name to be added/rebuilt from the query optimizer.

>write$system.SQL.SetMapSelectability("Sample.Person","HomeStateIdx",0)
1

2. Add %IndexBuilder to the rightmost superclass of the class definition that defines the new index.

0
1 313
Article Patrick Dunn · Mar 7, 2024 4m read

In the WRC, we often see customers contact us because they are having been provided a .PPK file for use with SFTP connections, but they don’t know how to use that key within InterSystems IRIS. This article will explain why this represents such a problem, and explain how to use the .PPK key to generate a Private / Public Key pair in a format recognized by InterSystems IRIS.

The Problem:

0
2 1382
Article Yuri Marx · Mar 7, 2024 4m read

Killer presentations are essential for opening doors, doing business and delighting customers. These types of presentations move away from the traditional and tiring topics and portions of texts, or even pictures of happy people to get closer to the interests of their audience.The best presentations materialize what customers are looking for into something they can see working. Instead of promises, examples in execution and the ability to be very close to what you want to do.

2
2 285
Discussion Eduard Lebedyuk · Mar 5, 2024

Work Queue Manager (WQM) is a feature of InterSystems IRIS that enables you to improve performance by distributing work to multiple concurrent processes programmatically. The idea is that you split the work into chunks, and WQM distributes the chunks across worker processes and can provide the info that the work is done.

However, recently, I got an interesting question: there's a large logical transaction composed of ~1,000,000 individual objects and SQL inserts and updates. Some updates are CPU-intensive, so the original idea was to use WQM to split an update into chunks to speed things up. 

But, here's a catch: if one of the individual 1,000,000 changes fails (there's a variety of application-level checks so that it can fail, and that's not even that abnormal a behavior), the entire transaction must be rolled back. That creates a problem: each chunk must report success before committing their individual transactions, and someone must get all these reports and decide if we are committing or not.

Unfortunately, it looks like WQM does not have a bidirectional communication between workers and manager, so I suggested an approach using events:

  1. Start jobs.
  2. Wait for all jobs to report success using $System.Event.WaitMsg().
  3. Send Commit or Rollback using the $System.Event.Signal().
9
2 387
Job vanshika Tiwari · Mar 6, 2024

Below is the job description for your reference 

Position: Integration Engineer/SME  (US only) 

Location: Remote 

Contract: 12 months 

Job Description:

Description:

Looking for IRIS experience must have 

Lead the implementation of FHIR (Fast Healthcare Interoperability Resources) standards within the data warehouse, ensuring accuracy and efficient data exchange across the ecosystem of partner APIs

• Ingest healthcare data from source systems into FHIR resources and profiles through developing ETL (Extract, Transform, Load) processes, checking for data quality and integrity

1
0 353
Question Lukasz Migacz · Feb 19, 2024

Hi,

I have an odd problem that occurs when I'm trying to import lookup tables in the XML format into Studio.

I store my files in in C:\CodeRepository.

I can manually import these lookup tables using "Import local..." option in the InterSystems Studio. 

However, when I'm trying to import them using command in terminal: do $system.OBJ.LoadDir("C:\CodeRepository\","ck")

I'm getting the following error:

1
0 240
Article Robert Cemper · Mar 5, 2024 2m read
  • The idea of this package is to compare the performance of columnar storage    inside IRIS without wrapping it to some foreign platform that is not my world   
  • In addition, I do not want to measure network performance between 2 containers,     but inside a closed IRIS environment that I have fully under my control
  • Even the use of SMP or some other browser-based presentation has some influence that I want to avoid.
  • Measuring should be as close to the core as possible. So I flagged it NATIVE. Some people might feel it is ABORIGINAL.

How to use it

2
0 255
Article Luis Angel Pérez Ramos · Feb 29, 2024 4m read

As most of you probably already know, since approximately the end of 2022 InterSystems IRIS included the columnar storage functionality to its database, well, in today's article we are going to put it to the test in comparison to the usual row storage.

Columnar Storage

What is the main characteristic of this type of storage? Well, if we consult the official documentation we will see this fantastic table that explains the main characteristics of both types of storage (by rows or by columns):

4
5 579
Question Scott Roth · Jan 18, 2024

I had a question about using ZSTART, ZSTOP, and ZMIRROR.

  • If we use them and it is not correct, does it mess up with any of the existing functionality?
  • So, if I create a ZSTART with a simple command of starting the %JDBC Server will that mess up anything existing in the Startup sequence?
  • Is ZSTART, ZSTOP, and ZMIRROR just an extension of the existing functionality, or does it alter how the built in functionality runs?
  • Should we tread lightly in the use of them?
7
1 502
InterSystems Official Fabiano Sanches · Feb 28, 2024

InterSystems announces its fourth preview, as part of the developer preview program for the 2024.1 release.  This release will include InterSystems IRIS®,  InterSystems IRIS® for HealthTM, and HealthShare® Health Connect.

Highlights

2
0 344
Question Pavan Kumar Rayudu · Mar 4, 2024

How to send the HL7 Batch messages over a SOAP webservice which takes 3 credentials(Username, Password& Org.ID) using IRIS Management Portal V 2019.1?

WSDL   xsd : element - 1.Username , 2.Password ,3.Org.ID ,4.HL7 Message.

Info I had -  

Source is CSV File will be translated to HL7 using data Transformations. All the transformed messages need to be sent to destination System through SOAP request as a single Batch File.

0
0 194
Question Wanbo Wang · Mar 2, 2024

Hi all,

Does anybody have the same issue?

$ZF(-100) to run python script not work when directly execute in studio or in storedproc called by TrakCare, but can work when do in iris session.

The python script imports a "barcode" package. It seems that when directly execute in studio or in storedproc called by TrakCare, the package can not be imported.

sr = $ZF(-100,"/SHELL", "/usr/bin/python3.9","/trak/cnpubase/tc/webfiles/web/custom/CNPU/script/py/barcode/genslbarcodetest.py",keyStr,path)
2
0 250
Question Phillip Wu · Feb 29, 2024

Hi,

I've just installed WebTerminal to my IRIS system (Linux SUSE).

I go url:

http://trak01:57772/terminal/

But it just times out

My management portal address is:

http://trak01:52773/csp/sys/UtilHome.csp

The port 57772 is not being listened to [ ss -l|grep LISTEN|grep 57772] 

The doco for WebTerminal says to use this port number in "1.1.3 Launching WebTerminal"

How can I fix this?

Is there some process that needs starting?

Is there further configuration eg. apache web server setup?

Thanks.

==========

This install was done from the *.xml (WebTerminal-v4.9.5.xml) using the Management Portal:

2
0 284
Question Kurro Lopez · Feb 12, 2024

Hi all,

As you know, it is very complicated to debug a Business Service Rest API because the object is created when the applications receive a request, so we cannot have the JobId that we can use to debug.

https://docs.intersystems.com/iris20211/csp/docbook/DocBook.UI.Page.cls…

So, I'm trying to get the JobId when the class is being created, write a trace in OnInit() method and write the JobId in a log info

Method OnInit() As%Status
{
	$$$LOGINFO("JobId: "_$JOB)
	hang20breakQuit..OnInit()
}
3
0 294
Article Lily Taub · Mar 19, 2019 9m read

Intro

Most server-client communication on the web is based on a request and response structure. The client sends a request to the server and the server responds to this request. The WebSocket protocol provides a two-way channel of communication between a server and client, allowing servers to send messages to clients without first receiving a request. For more information on the WebSocket protocol and its implementation in InterSystems IRIS, see the links below.

7
3 6145
Article Eduard Lebedyuk · Dec 19, 2023 8m read

If you're running IRIS in a mirrored configuration for HA in Azure, the question of providing a Mirror VIP (Virtual IP) becomes relevant. Virtual IP offers a way for downstream systems to interact with IRIS using one IP address. Even when a failover happens, downstream systems can reconnect to the same IP address and continue working.

The main issue, when deploying to Azure, is that an IRIS VIP has a requirement of IRIS being essentially a network admin, per the docs.

To get HA, IRIS mirror members must be deployed to different availability zones in one subnet (which is possible in Azure as subnets can span several zones). One of the solutions might be load balancers, but they, of course, cost extra, and you need to administrate them.

In this article, I would like to provide a way to configure a Mirror VIP without the using Load Balancers suggested in most other Azure reference architectures.

1
3 1091
Question Daniel Raderstrong · Feb 23, 2024

Every class on the server throws this same error when trying to run the debugger. I've already made sure I don't have the %SecureBreak role assigned which seems to typically fix this issue. Any advice on how to troubleshoot this would be greatly appreciated! 
Error is : <COMMAND>zDebugStub+40^%Debugger.System.1

10
0 382