#InterSystems IRIS

19 Followers · 5.6K 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.

Question Evgeny Shvarov · Oct 20, 2022

Hi folks!

I'm playing with Embedded python with IRIS trying to do some 'hello-world' exercises.

I'm running IRIS in container and have the following python code:

# Program to test coding with IRIS

print('Hello World')

# Run IRIS Class Method import iris
print(iris.cls('dc.sample.ObjectScript')).Test()

So, when I execute it, I get the following:

$ /usr/irissys/bin/irispython /irisrun/repo/python/app.py
Hello World
Traceback (most recent call last):
  File "/irisrun/repo/python/app.py", line 7, in <module>
    import iris
  File "/usr/irissys/lib/python/iris.py", line 14, in
5
0 677
Article Lucas Enard · Aug 17, 2022 9m read

In this GitHub based on this InterSystems community rest api template Guillaume and I have created this example of all the import CRUD operations usable using ONLY Python on IRIS and using Flask.

Using the IRIS ORM or by simply doing SQL requests as both methods are seen in the GitHub.

1. intersystems-iris-docker-rest-template

This is a template of a REST API application built in python in InterSystems IRIS. It also has OPEN API spec, can be developed with Docker and VSCode.

13
0 924
Question Shane M Elliott · Oct 17, 2022

I have installed Iris in Docker container with the above version.  I need to create an additional user to log in via ssh.  I have created a user and put in both the irisuser and irisowner groups, and created a user in iris with permissions.  But, when I run "iris session iris" I originally got an error about permissions: /usr/irissys/bin/irisdb: Permission denied.
I looked @ the /usr/irisys directory and the permissions was only (r-x------).  I changed to (dr-xr-xr-x.)and now I get a different error:
Invalid ownership for ./irisdb
Any suggestions? 

8
0 699
Question prashanth ponugoti · Oct 20, 2022

Hello,

I’m creating a REST API service but I need to convert my object in JSON.

Class message_B Extends Ens.Request 

Property ClientId As %String(MAXLEN = "");

Property mesagge As %Stream.TmpBinary;
}

set pRequest = ##Class(message_B).%New()
​do ##class(Ens.Util.JSON).ObjectToJSONStream(pRequest, .content)

it is ignoring message property in json dueto its data type %Stream.TmpBinary

Could you please help me to resolve it?

2
0 295
Article Pete Greskoff · Jun 27, 2018 8m read

NB. Please be advised that PKI is not intended to produce certificates for secure production systems. You should make alternate arrangements to create certificates for your productions.
NB. PKI is deprecated as of IRIS 2024.1: documentation and announcement.

In this post, I am going to detail how to set up a mirror using SSL, including generating the certificates and keys via the Public Key Infrastructure built in to InterSystems IRIS Data Platform. I did a similar post in the past for Caché, so feel free to check that out here if you are not running InterSystems IRIS. Much like the original, the goal of this is to take you from new installations to a working mirror with SSL, including a primary, backup, and DR async member, along with a mirrored database. I will not go into security recommendations or restricting access to the files. This is meant to just simply get a mirror up and running. Example screenshots are taken on a 2018.1.1 version of IRIS, so yours may look slightly different.

3
4 1833
Question prashanth ponugoti · Oct 19, 2022

Hi Friends,

I have a requirement to convert pdf from URL to Base64 format. I have created one utility method and used in the DTL.

Working fine for small pdf files , we got one pdf with size 4MB , this method is failing (creating corrupted base64 content).

Could you please suggest me the way to convert big pdfs?

set encodedData = ""
set request=##class(%Net.HttpRequest).%New()
    do request.Get(httpUrl)
    if request.HttpResponse.StatusCode = 200
    {
//set len = request.HttpResponse.Data.SizeGet()
    set content = request.HttpResponse.Data.Read()
    set encodedData = $system.Encryption.Base64Encod

6
0 2294
Question Ephraim Malane · Oct 19, 2022

I am reading file values by position with comma-separated string and it gives me incorrect values on the below line because there is a comma within double quotes within a string.

I would like to remove any text that has quotes with object script or alternatively separate each value with pipe-delimited so that I can return position 8 as code and position 9 as a description

line = file.ReadLine()

description = $P(line,",","9")
code = $P(line,",","8")

12162,CHAPTER I,Certain infectious and parasitic diseases (A00-B99),003 (A20-A28),Certain zoonotic bacterial diseases,A28,"Other zoonotic

2
0 368
Article Philipp Bonin · Oct 19, 2022 2m read

The concept of low code development is getting more and more important across all industries. Everybody who is starting to get into low code programming, will inevitably come across Node-RED. InterSystems IRIS is renowned for its interoperability and so should be accessible via Node-RED.

For those who have not heard of Node-RED yet: Node-RED is a Low-Code programming application, which is based on so called nodes that are connected with wires.

5
0 554
Question Alfredo Neto · Oct 13, 2022

Hello,

I am currently having the experience activating prometheus for iris db.

This environment that I speak uses IKO as a base.

I need to put 3 notes in the iris service area.

Are they:

annotations:
   prometheus.io/path: "/monitor/metrics"
   prometheus.io/port: "52772"
   prometheus.io/scrape: "true"

I'm not finding this possibility in the IKO documentation.

Has anyone had this experience and can help us with this challenge?

 Below is the current configuration we made, however, it did not create the annotations we need

apiVersion: intersystems.com/v1alpha1
kind: IrisCluster
metadata:
  name:
4
0 301
Announcement Shane Nowack · Oct 19, 2022

Get certified on InterSystems IRIS System Administration!

Hello Community,

After beta testing the new InterSystems IRIS System Administration Specialist exam, the Certification Team of InterSystems Learning Services has performed the necessary calibration and adjustments to release it to our community. It is now ready for purchase and scheduling in the InterSystems certification exam catalog. Potential candidates can review the exam topics and the practice questions to help orient them to exam question approaches and content. Passing the exam allows you to claim an electronic certification badge that can be embedded in social media accounts such as Linkedin.  

1
0 359
Question Harshdeep Acharya · Mar 23, 2022

Hi Team,

Can you please help me to develop EDI X12 to XML and XML to EDI X12 conversion in IRIS 2021.1 for EDI 204, also known as Motor Carrier Load Tender?

Also, suggest flow for how to achieve this kind of functionality in InterSystems IRIS. If you are able to provide some Videos/Documents on the EDI X12 interface for 204 then it would be very helpful for me.

Thanks,

Harshdeep Acharya

1
0 425
Question Neil Thaiss · Oct 17, 2022

Hi,
I need to do a DELETE and then do some INSERT transactions on a linked table and don't want the DELETE and need to be able to ROLLBACK the DELETE if any of the INSERT transactions fail.
I have tried Object Script transaction processing (TSTART, TCOMMIT and TROLLBACK) and the SQL transaction processing (START TRANSACTION, COMMIT and ROLLBACK), but neither work.
Could I be doing something wrong in the way I am implementing these, or do does transaction processing simply not work for linked table?
Thanks for any advices, in advance.

Neil

1
0 281
Article Henry Pereira · Aug 2, 2021 8m read

https://media.giphy.com/media/Nxu57gIbNuYOQ/giphy.gif

Easy, easy, I'm not promoting a war against the machines in the best sci-fi way to avoid world domination of Ultron or Skynet. Not yet, not yet 🤔

I invite you to challenge the machines through the creation of a very simple game using ObjectScript with embedded Python.

I have to say that I got super excited with the feature of Embedded Python on InterSystems IRIS, it's incredible the bunch of possibilities that opens to create fantastic apps.

Let's build a tic tac toe, the rules are quite simple and I believe that everyone knows how to play.

That's what saved me of the tedium in my childhood

8
5 1605
Question Evgeny Shvarov · Oct 8, 2022

Folks!

Could you please share any best practices on how to debug Embedded Python code?

Given I have the following class method:

ClassMethod HideShip() As %Status [ Language = python ]
{
    import iris
    shipsgl=iris.gref(iris.cls(__name__)._GetParameter("BoardStorage"))
    shipsgl.kill()
    from random import Random
    board=iris.cls(__name__)._GetParameter("BoardRange")
    x=random.randint(0,board+1)
    y=random.randint(0,board+1)
    shipsgl.set([x,y],1)
}

And when I run it shows the following error:

USER>d ##class(eshvarov.sample.SeaBattle.GamePython).HideShip()

D
5
0 999
Announcement Laurel James (GJS) · Sep 20, 2021

Hi developers, 

We're excited to let you know about the latest release of Serenji, your on-the-spot debugger from George James Software. Version 3.2.0 focuses on the debug experience and introduces zero configuration for users. No matter where you are or what you're doing, Serenji is always ready to go in just one click, so you won't lose focus by spending time setting up a launch configuration. 

This enhanced debugger also takes advantage of the latest features of VS Code itself. With this powerful combination you'll be able to smoothly identify and quickly fix errors in your code, contributing to the production of quality, maintainable code... and isn't that what everyone wants?! 

   

In this latest release you will experience: 

  • Debugging in just one click with zero configuration. 
  • Navigation directly to the source of an error using our gj :: locate technology.
  • Intuitive prompting for entrypoint and arguments.
  • Configurable break on error.
  • Program output in debug console. 
  • Run and Debug CodeLenses.
  • Run multiple concurrent debug sessions and consoles. 
  • Shaded background for read-only documents. 

If you're a new user, it's now easier for you to get started. The introduction of a welcome page Walkthrough and guidance on the Explorer and Run and Debug views means you can effortlessly create your initial workspace and start debugging. 

Download Serenji directly from the VS Code marketplace and take a look at our release notes to find out more about these new features and how to use them. 

We offer a free 30 day trial so if you're not yet a user of Serenji but you're interested in how it can help you, drop me a message through the Developer Community or email us at info@georgejames.com.

Happy debugging! 

1
4 408
Question Edmara Francisco · Oct 13, 2022

Hello!

I used %Projection.Java to generate the java proxy classes. Follows the projected class image.

Note that "import com.intersystems.binding.Database" was added but it displays the error cannot find symbol.

Has anyone had this problem, how was it resolved?

4
0 297
Announcement Laurel James (GJS) · Oct 13, 2022

We’ll be hosting our bi-annual virtual User Group Session on Thursday, November 3rdat 3pm (GMT). We will demonstrate the new Production component driver for Deltanji - it enables highly granular management of Interoperability Productions with tight integration into the management portal. 

The session is also an opportunity for us to help to problem-solve any issues you're having, and a chance for you to offer your feedback on our tools.

Those interested in finding out more about Deltanji source control are welcome to join us too.

Sign up for free on Eventbrite >> https://bit.ly/3yBVYVO

0
0 307
Question Alfredo Neto · Jul 15, 2022

Hello.

Our scenarios need to persist messages in the orchestrator. Our Iris Orchestrator is an ephemeral pod with no persistent disks running on AWS EKS in multiple AZ.

We want to know if the iris orchestrator has:

- AWS EFS Support
- Integration with AWS SQS
- Sharing to the same AWS EBS.

2
0 351
Article Timothy Leavitt · Oct 12, 2022 1m read

I just wrote up a quick sample to help a colleague load data into IRIS from R using RJDBC, and figured it's worth sharing here for future reference.

Ultimately it was pretty simple, aside from IRIS not liking "." in column names; the workaround is to just rename the columns. Someone better at R than me could probably provide some generic approach. smiley

# Need a valid value for JAVA_HOME prior to calling library(RJDBC)
Sys.setenv(JAVA_HOME="C:\\Java\\jdk-8.0.322.6-hotspot\\jre")
library(RJDBC)
library(dplyr)
# Connect to IRIS – needs path to InterSystems JDBC JAR in your installation
drv <-
2
2 349
Question Chip Gore · Sep 20, 2022

Hi -

I'm looking for some help in getting an OS level application on my server to startup from a csp page and I'm just missing something.

I have a routine (and I've tried the same code from an instance method, with the same results) that will launch an application at the OS level using the $zf(-100,keywords,program,parms) from a terminal session, but it won't/doesn't seem to work when I call the code from a #server() call from my webpage. I don't know if there is some combination of keywords or perhaps a different version of the $zf() call that should/would work.

I am open to any suggestions at

7
1 406
Question Scott Roth · Oct 11, 2022

I am trying to get the Apache Web Gateway with Docker running on a development RHEL 8 machine so I do not have to config the Web Gateway and Apache apart from each other. I noticed the Apache Web Gateway docker image is using IRIS Community Edition. However when I try to run the docker image with podman I am running into issues with the IRIS setup. I was wondering if someone could help me. When I get the image to run I am seeing the following errors...

[iris]       | [ERROR] Required Linux capability cap_setuid is missing.
[iris]       | [ERROR] Required Linux capability cap_dac_override is

2
1 366
Question Patty Aguirre-Romero · Jan 4, 2022

We will receive an ORM message in Business Service in Iris. From that ORM, an ADT^A31 message will be generated and sent out to the EMR before the ORM message is sent out. The ORM message has to wait until Iris receives an acknowledgement from the EMR indicating the ADT message was received. Then, the ORM message will be sent to the EMR. What do I need to set up to hold the ORM message until the acknowledgement is received? 

Thank you!

Patty Aguirre-Romero

11
0 874