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

Article Megumi Kakechi · May 4, 2023 2m read

InterSystems FAQ rubric

In Windows, set the processes with the following image names as monitoring targets.

[irisdb.exe]

contains important system processes.
* Please refer to the attachment for how to check important system processes that should be monitored.

[IRISservice.exe]

This is the process for handling IRIS instances via services.
When this process ends, it does not directly affect the IRIS instance itself, but stopping IRIS (stopping the service) is no longer possible.

[ctelnetd.exe]

%Service_Telnet Starts when the service is enabled and becomes a daemon process to access IRIS via Telnet.

0
1 435
Question Timothy Leavitt · May 1, 2023

Has anyone seen this before? I'm new/bad at Docker and not even sure how to debug.

$ sudo docker logs <container>
[INFO] Starting InterSystems IRIS instance IRIS...
[INFO] Unable to read the startup.last file to identify the location of the write
image journal file (IRIS.WIJ) that was last in use by this instance. Please
fix the permissions of the startup.last file.

** Startup aborted **

Starting IRIS
Recovery failure. Startup aborted.
[ERROR] Command "iris start IRIS quietly" exited with status 256
[ERROR] See the above messages or

7
0 464
Article Mark Bolinsky · Feb 12, 2019 32m read

The Amazon Web Services (AWS) Cloud provides a broad set of infrastructure services, such as compute resources, storage options, and networking that are delivered as a utility: on-demand, available in seconds, with pay-as-you-go pricing. New services can be provisioned quickly, without upfront capital expense. This allows enterprises, start-ups, small and medium-sized businesses, and customers in the public sector to access the building blocks they need to respond quickly to changing business requirements.

 

Updated: 10-Jan, 2023 

3
12 7134
Question Punit · May 2, 2023

I'm trying to update the hosts file on Windows in C:\Windows\System32\drivers\etc

I know that in Linux if you update the hosts file, you sometimes need to restart the Network Manager for the changes to take effect.

So my question is that is there a similar thing that we need to do on Windows or do the changes take effect as soon as the file is saved?

3
0 722
Article Dmitry Maslennikov · Apr 19, 2023 2m read

Apache Superset is a modern data exploration and data visualization platform. Superset can replace or augment proprietary business intelligence tools for many teams. Superset integrates well with a variety of data sources.

And now it is possible to use with InterSystems IRIS as well.

An online demo is available and it uses IRIS Cloud SQL as a data source.

4
0 1146
Article Robert Cemper · Aug 26, 2017 3m read

This is a  rather personal view of the history before Caché.
It is in no sense meant to compete with the excellent books from Mike Kadow discussed in an earlier article.
We have different histories and so this is meant to create a different perspective of the past.

The whole story started in 1966 at MGH (Mass.General Hospital) on a PDP-7 Ser.#103
with 8K of memory (18-bit words) [ today = 18K byte ]  as a spare system.

"Serial Number 103 - was located in the basement of the now demolished Thayer Building,
currently [2014] the site of the Cox Cancer Center at MGH.

15
2 2225
Question William Caldwell · Apr 21, 2023

I have a client who' recently acquired a business that was running software that uses InterSystems IRIS as the database back end.  In the process of preparing to have my company's software installed the client formatted the hard drive of his server, wiping out his data.  I can't convert the data to MS SQL without a functioning database.  He had a backup on an external drive, which I have copied down to my local machine.  I loaded up  a virtual machine with Windows 10 Pro, I installed Docker and IRIS.  I started searching for explicit instructions for restoring the .

7
0 1056
Article Hiroshi Sato · Apr 27, 2023 2m read

InterSystems FAQ rubric

Migrating data to another system takes two steps.

1. Migrating class definitions

To migrate the class definition to another system, export it to a file in XML format or UDL format (extension .cls).

The export procedure in Studio is as follows.

Tools > Export

> Select multiple classes you want to migrate with the [Add] button

> Check [Export to local file]

> Confirm that the file type is XML, enter a file name, and click [OK].

After this, import the exported XML and UDL files in the studio on another system. The import procedure in Studio is as follows.

4
0 441
Question Jean Millette · Apr 26, 2023

Our team has had success creating and publishing Power BI reports using an ODBC connection to an IRIS database, but there have been concerns about the responsiveness of these reports.

As an attempt to improve responsiveness, I'm trying out the "DirectQuery" connection using the InterSystems IRIS connector available in our version of Power BI Desktop (September 2021). 

The version of IRIS I'm connecting with is "IRIS for Windows (x86-64) 2022.

3
0 2165
Question Mindy Caldwell · Apr 21, 2023

Salesrep is the production file with only an index on the idkey (it has more properties than shown here).

Property SalesRepId As %String(MVATTRIBUTE = 0, MVJUSTIFICATION = "L", MVWIDTH = 10) [ Required ];

Property Surname As %String(MVATTRIBUTE = 2, MVJUSTIFICATION = "L", MVWIDTH = 25);

Property Forename As %String(MVATTRIBUTE = 3, MVJUSTIFICATION = "L", MVWIDTH = 25);
. . .

4
0 291
Article Evgeny Shvarov · Mar 14, 2019 5m read

Hi Community!

I think everyone keeps the source code of the project in the repository nowadays: Github, GitLab, bitbucket, etc. Same for InterSystems IRIS projects  check any on Open Exchange.

What do we do every time when start or continue working with a certain repository with InterSystems Data Platform?

We need a local InterSystems IRIS machine, have the environment for the project set up and the source code imported.

So every developer performs the following:

  1. Check out the code from repo
  2. Install/Run local IRIS installation
  3. Create a new namespace/database for a project
  4. Import the code into this new namespace
  5. Setup all the rest environment
  6. Start/continue coding the project 

If you dockerize your repository this steps line could be shortened to this 3 steps:

  1. Check out the code from repo
  2. Run docker-compose build 
  3. Start/continue coding the project 

Profit - no any hands-on for 3-4-5 steps which could take minutes and bring head ache sometime.

You can dockerize (almost) any your InterSystems repo with a few following steps. Let’s go!

10
9 1985
Article Seisuke Nakahashi · Apr 27, 2023 2m read

Let's say you have Python including variable-length arguments methods. How can you call it from ObjectScript? 

def test1(*args):
  return sum(args)
  
def test2(**kwargs):
  a1 = kwargs.get("a1",None)
  a2 = kwargs.get("a2",None)
  return a1+a2

You can call this "a.py" from ObjectScript as below.  For **kwargs argument, create Dynamic Object in ObjectScript and put it into methods with <variablename>... (3 dots) format. 

    set a=##class(%SYS.Python).Import("a")
    write a.test1(1,2,3)   ;; 6
    set req={}
    set req.a1=10
    set req.a2=20
    write a.
0
1 345
Job Annette Steenekamp · Apr 18, 2023

Job description

Do you want to make a difference? Being part of a team where all team members are valued for their contribution?

SOFTSPLICE values their employees as their most valuable asset. We value a healthy work and life balance.

We need capable and devoted developers to expand our team. We have interesting diverse projects to work on.

Are YOU the next team member of our dynamic team?

1
0 449
Question Stefan Cronje · Feb 26, 2021

Hi *.*,

I am new to IRIS, IKO and IAM. I have read through a lot of the documentation, but I need clarity on some things that I can't find in the documentation.

  • Which Load Balancer does IKO use on the ingress?
    Can it be set to use another one? e.g. nginx-kubernetes + GCP LoadBalancer?
  • On a multi-compute and multi-data instances deployment, how do you get to the Management Portal of each instance?
    i.e. The load balancer is the only point of entry into the cluster exposing 1972 and 52773, so how do I route to the individual instances?
3
0 477
Article Evgeny Shvarov · Apr 12, 2023 3m read

Hi Developers!

There is a recent update came for developer community images of InterSystems IRIS and IRIS For Health.

This release comes with Environment variables support.

Currently 3 variables are supported:

  • IRIS_USERNAME=user to create
  • IRIS_PASSWORD=with password
  • IRIS_NAMESPACE=create namespace if doesn't exist

Here is what you can do - see below.

Start iris with your username and password created:

docker run --rm --name iris-sql -d -p 9091:1972 -p 9092:52773  -e IRIS_PASSWORD=demo -e IRIS_USERNAME=demo intersystemsdc/iris-community
1
1 857
Announcement Laurel James (GJS) · Apr 26, 2023

Deltanji 7.1 is now available.

Key updates include: 

* Interoperability Production component driver included, for customers who have purchased the add-on. You can watch a short demo of it here.
* Implement multi-select delete of objects and components
* Add setting to give a passable Beyond Compare launch command line
* Support simplified Locations & Routes diagram 

For more information, read the release notes here >> https://bit.ly/3mHyJHc

Please get in touch with support@georgejames.com for your release kit. 

The update is also available for Serenji debugger users on VS Code, which has the Deltanji solo edition embedded. Simply update the Serenji extension to version 3.2.3 or later and load the server-side code. 

0
0 239
Article Eduard Lebedyuk · Apr 26, 2023 2m read

Git stores complete history - meaning you would never lose your files, even if they are deleted, they are still available. That, however, presents an issue if large or sensitive files have been committed. Deleting them DOES NOT remove them from history. Recently one of the repos I work on became unexpectedly large, so here's how you can resolve that:

0
0 268
Article Evgeny Shvarov · Oct 15, 2022 1m read

Hi Devs!

For me, one of the most painful things about ObjectScript is ##class(Class).Method() typing to call a class method in code or in a terminal. I even submitted an idea to simplify it in ObjectScript.

But! There is a new feature in VSCode ObjectScript that was just introduced to the plugin - Copy Invocation!

Just hover Copy Invocation link above every classmethod in a code, click on it and the invocation is copied to the buffer:

Paste it anywhere you want it to execute!

USER>w ##class(dc.sample.ObjectScript).Test()

Bazinga!

Here is the video that shows how it works.

7
2 771
Article Evgeny Shvarov · Feb 12, 2023 3m read

Hi Developers!

As you know InterSystems IRIS Interoperability solutions contain different elements of the solution, such as: production, business rule, business process, data transformation, record mapper. And sometimes we can create and modify these elements with UI tools.  And of course we need a handy and robust way to source-control the changes made with UI tools.

For a long time this was a manual (export class, element, global, etc) or cumbersome settings procedure, so the saved time with source-control UI automation was competing with lost time to setup and maintain the settings.

Now the problem doesn't exist any more. With two approaches: package first development and usage of IPM package git-source-control by @Timothy Leavitt 
.

Meme Creator - Funny WOW IT REALLY WORKS Meme Generator at MemeCreator.org!

The details are below!

8
3 1405
Article Luis Angel Pérez Ramos · Apr 25, 2023 12m read

A common need for our customers is to configure both HealthShare HealthConnect and IRIS in high availability mode.

It's common for other integration engines on the market to be advertised as having "high availability" configurations, but that's not really true. In general, these solutions work with external databases and therefore, if these are not configured in high availability, when a database crash occurs or the connection to it is lost, the entire integration tool it becomes unusable.

4
4 997
Question Punit · Apr 24, 2023

I have a %GlobalBinaryStream object that I'm trying to save as a local file after being received through a SOAP Web Service.

To do this, I created a %Stream.FileBinary object and wanted to set where the stream copied to this object would be saved by using either the DefaultStreamDir() ClassMethod or the NewFileName() ClassMethod. However, the documentation isn't very helpful on how to use these ClassMethods.

Right now, I have the below code:

set localStream = ##class(%Stream.FileBinary).%New()
set st = localStream.
4
0 339
Question Ben Spead · Apr 25, 2023

I have a csp page that is using embedded Runtime Expression (https://docs.intersystems.com/ens201817/csp/docbook/Doc.View.cls?KEY=RC…) and within that expression I am using a $data() modulo 2 to look for root-level data elements (https://docs.intersystems.com/ens201817/csp/docbook/Doc.View.cls?KEY=RC…).

E.g:

#($select($data(^ImportantFlag)#2:"Important!",1:"Normal"))#

However, my modulo sign (#) after the $data() call is seen as the ending tag for the runtime expression resulting in a broken compilation.

3
0 244
Question Michael Davidovich · Apr 21, 2023

I have seen this post and appreciate that discussion: API RESTful Version | InterSystems Developer Community | Business Service

However our org requirement is for a caller to provide the API version in the HTTP request header.  I am finding the cleanest way to route to the correct class using the header version.  My classes are setup as

API.Service.v1

API.Service.v2

Of course only v1 exists now but when v2 goes live on future day, API.Service.v2 will extend API.Service.v1 so we only have to override the method that changes or add a new method if needed.

2
0 370