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

Discussion Eduard Lebedyuk · Aug 16, 2021

A quine is a computer program which takes no input and produces a copy of its own source code as its only output.

Wikipedia.

How about a fun challenge?

The task is to write a quine in InterSystems ObjectScript. It can be a class, or a method, or a routine, or just a line to be executed in a terminal. You decide!

Here's some resources you might consider useful:

Hard mode: do not use source code access functions.

Here's my (extremely uninspired, I know) attempt:

Class User.Quine
{

/// do ##class(User.Quine).Test()
ClassMethod Test()
{
    set sc = ##class(%Compiler.UDL.TextServices).GetTextAsString($namespace, $classname(), .str)
    write str
}

}

It produces this output:

How many different ways of producing a quine are there in ObjectScript?

15
0 669
Question Michael Lindner · Sep 2, 2021

New to IRIS. Installed docker container as per instructions. From my system I run:

# docker exec -it iris bash

and then try to start a terminal session, which fails

irisowner@2f54ebfbc52f:~$ irissession IRIS

<NOTOPEN>

How do I successfully start a terminal session?

7
0 478
Article José Pereira · Sep 1, 2021 6m read

This article explains how to use the InterSystems IRIS platform to write a basic IMAP client. First, we present an overview of IMAP, then we discuss the main IMAP commands and client implementation. Finally, we offer a simple use of this IMAP client on the IRIS interoperability application.

Note that this article isn’t a detailed IMAP explanation. For more detailed information, please check the references of this article.

IMAP Overview

The Internet Message Access Protocol (IMAP) lets users retrieve emails. Mark Crispin proposed IMAP in the 1980s, and since then, the protocol has been publ

smiley

0
1 783
Announcement Guillaume Rongier · Sep 1, 2021

All French-speaking developers are friendly invited to follow a stream in the form of a journal.

Every first Thursday of the month at 12:00 (Paris time), we organize a 30-45 minutes stream on Youtube with the following format :

  • News on technologies around InterSystems.
  • A section called "Did you know it?" (tips and tricks on IRIS)
  • A "dossier", where we develop a subject (example: How language gateway works).
  • And we end the program with an Interview of an french developer

Previous episodes  :

0
0 253
Announcement Eduard Lebedyuk · Aug 31, 2021

We invite you to the webinar "InterSystems Reports",  on Tuesday, September 7th, at 10:00 (Moscow time). The language of the webinar is Russian.

InterSystems Reports, a part of InterSystems IRIS and InterSystems IRIS for Health, is a robust, modern report generation and publishing solution that includes:

  • Report Designer - a tool for report developers to create and preview reports.
  • Report Server, which gives users access to run, schedule, filter, and modify reports.

In this webinar, we'll cover all the steps of working with the InterSystems Reports, including:

  • Connecting In
0
0 304
Question Yakov Berger · Aug 25, 2021

After setting AllowedIPAddresses with a valid IP address 

i get the following errors.

ERROR <Ens>ErrException: <READ>zOnTask+44 ^EnsLib.TCP.InboundAdapter.1 -- logged as '-'
number - @''

what am i doing wrong?

and question:

where in the message viewer can i see the source IP of the message?

Thanks

3
0 214
Question Eduard Lebedyuk · Aug 20, 2021

In my Business Operation I need to execute a bookkeeping method every X seconds.

How can I do that?

There are two workarounds (I dislike both):

  1. Execute bookkeeping on process start - but there might be no requests at all
  2. Create a BS that sends messages to BO every X seconds - it makes production more complex and also queues might not guarantee that the method is executed on schedule.

Thoughts?

8
0 371
Announcement Evgeny Shvarov · Aug 26, 2021

Hi Developers!

Here're the technology bonuses for the InterSystems Analytics contest that will give you extra points in the voting.

Adaptive Analytics (AtScale) Cubes usage - 4 points
InterSystems Adaptive Analytics provides the option to create and use AtScale cubes for analytics solutions.

You can use the AtScale server we set up for the contest (URL and credentials can be collected in the Discord Channel) to use cubes or create a new one and connect to your IRIS server via JDBC.

The visualization layer for your Analytics solution with AtScale can be crafted with Tableau, PowerBI, Excel, or Logi.

Documentation, AtScale documentation

Training

0
0 350
Question Andrew Barber · Aug 25, 2021

Hi,

I wonder if anyone could help me.

I'm used to writing Microsoft SQL database queries, but at the moment I am also trying to write reports on an IRIS database (used to be cache) in Microsoft BIDS.

My chief headache is parameters. They don't behave the "normal way" in BIDS, in that you can't rename them. Therefore, referencing them in the main code is a nightmare for me.

Say my report has two parameters. If i want to refer to both in a dataset, I have to list them in the order they are in the report and both by using a question mark, ie:

WHERE
column1 = ?

and column 2 = ?

But if I o

4
0 365
Announcement Anastasia Dyubaylo · Aug 11, 2021

Hi Community,

We are pleased to invite all the developers to the upcoming InterSystems Analytics Contest Kick-off Webinar! The topic of this webinar is dedicated to the Analytics contest.

On this webinar, we’ll demo AtScale, InterSystems Reports (Logi), IRIS BI, IRIS NLP and answer the questions on how to develop, build, and deploy Analytics applications using InterSystems IRIS.

Date & Time: Monday, August 23 — 10:00 AM EDT

Speakers:  
🗣 @Carmen Logue, InterSystems Product Manager - Analytics and AI
🗣 @Evgeny Shvarov, InterSystems Developer Ecosystem Manager


6
0 469
Question Arvind Balachandran · Jun 28, 2021

Team,

I am trying to use Visual studio code(1.57) for class development and for compiling classes (intersystems tools extension) . It works.

Now, i would like to use TFVC (Team Foundation Version Control) for source control.  

I can see download option where i can manually download the Namespace as folder and classes as files.

Since whenever i save the file, it directly pushes the change to remote system. I am not sure where the local workspace is.

How to configure VS Code to track my changes and Check In / Check out the code.

If there are other ways to achieve source code control in TFV

5
0 783
Question Sylvie Greverend · Jun 30, 2021

Data transformations can be changed in Management portal, but the modifications are not synced with visual studio code. Classes are synced from VSCode to Iris. VSCode can take care of the git repository.

I am curious to know how people are developing data transformations on Iris with VSCode? Are you editing the DT classes with VSCode and forget about the UI? Are you exporting from management portal the files to VSCode directory? Are you using a source control hook?

Thank you

1
0 730
Question Oliver Wilms · Aug 22, 2021

I want to try SAM in AWS. I followed these steps:

docker pull store/intersystems/sam:1.0.0.115

git clone intersystems-community/sam: System Alerting and Monitoring (SAM) (github.com)

git clone https://github.com/intersystems-community/sam

tar zpxvf sam-<version>.tar.gz

tar zpxvf sam-1.0.0.115-unix.tar.gz

$ cd sam-<version>

cd /home/ec2-user/git/sam/sam-1.0.0.115-unix/

$ ./start.sh

In your browser, visit:
http://<ip-address-of-host-where-SAM-runs>:8080/api/sam/app/index.csp
You'll be prompted to login. You can use standard InterSystems IRIS credentials like _SYSTEM/SYS. You'll b


7
0 1034
Question Tim Stowe · Aug 20, 2021

So I've got the IRIS AMI spun up in AWS EC2; it seems to be running fine.  
I've added an EBS volume to it for persistent storage, and now I'm pondering how to make it actually do something useful.  

What's the best way to do deploy code to this instance?  I can think of a few ways to do it, but what's the least painful way?  Push my code to an S3 bucket and figure out how to load it at system start?  Github project?  

2
0 308
Article Oliver Wilms · Aug 22, 2021 2m read

I have described my efforts to optimize IRIS Mirror deployment in AWS ElasticContainer Service (ECS) in my prior article.

IRIS Mirror in the cloud (AWS) | InterSystems Developer Community | AWS
 

I have come to the opinion that IRIS Mirror is not as reliable as needed when deployed in ECS. The root of the problem is the fact that ECS randomly assigns one of the available IP addresses to each EC2 host or Fargate task it starts.

These get stored in iris.cpf file in MapMirrors section as shown here:

[MapMirrors.IRISMIRROR]

FAILOVER1=10.2ab.1cd.146,2188,,10.2ab.1cd.146,588E6700-DAB7-11EB-9

0
0 471
Question Sehinde Raji · Aug 21, 2021

Hey everyone as you may know I am a beginner and I am kindly asking for some assistance in a problem I have been solving. The problem is that I am calling a user defined function within a procedure called occupiedseatsAdj and the compiler comes up with this error. 

<NOLINE> There has been an attempt to refer to a nonexistent routine line.

From what I understand I can call a user defined function from within a procedure (correct me if I am wrong) as shown below. Is this the correct way or should I create a .Mac file and include it somewhere within the above mentioned cls file ? I u

2
0 281
Article Oliver Wilms · Aug 4, 2021 3m read

I have been working on redesigning a Health Connect production which runs on a mirrored instance of Healthshare 2019. We were told to take advantage of containers. We got to work on IRIS 2020.1 and split the database part from the Interoperability part. We had the IRIS mirror running on EC2 instances and used containers to run IRIS interoperability application. Eventually we decided to run the data tier in containers as well. Later we switched from using EC2 instances to Fargate “server-less” compute. A challenge was that each time AWS Elastic Container Service started a new container, it assi

14
2 1003
Article Iryna Mykhailova · Aug 21, 2021 9m read

The first installment of this article series discussed how to read a big chunk of data from the raw body of an HTTP POST method and save it to a database as a stream property of a class. The second installment discussed how to send files and their names wrapped in a JSON format. 

Now let’s look closer at the idea of sending large files in parts to the server. There are several approaches we can use to do this. This article discusses using the Transfer-Encoding header to indicate chunked transfer. The HTTP/1.1 specification introduced the Transfer-Encoding header, and the RFC 7230 section 4.1 described it, but it’s absent from the HTTP/2 specification. 

0
0 977
Article Eduard Lebedyuk · Apr 21, 2021 1m read

It's possible to enable Ctrl+C / Ctrl+V in IRIS Terminal for Windows.

To do that, open Terminal and select Edit > User Settings and enable Windows edit accelerators. This settingspecifies whether the Terminal enables the common Windows edit shortcuts (Ctrl+C, Ctrl+V, Ctrl+Shift+V), in addition to the basic Terminal edit shortcuts (Ctrl+Insert and Shift+Insert).

After that Ctrl+C / Ctrl+V would work.

Also <SYNTAX> errors after incorrect copy/paste go away.

Docs.

7
1 508
Question Aaron Vail · Aug 19, 2021

I'm wanting to write a query in SQL that will return a row with a count for each day for a given month or year for a specific operation or configname.  The following is a start but I'm not finding what I want in the documentation to parse out the TimeLogged field of the table.  Nay help is appreciated.

SELECT count(TimeLogged), ConfigName
FROM Ens_Util.Log
where TimeLogged like '2021-07%'
and ConfigName = 'operation_Name'
group by TimeLogged

2
0 255
Announcement Laurel James (GJS) · Aug 19, 2021

Hi developers, 

We have just published an update to the Deltanji version control extension for Visual Studio Code.

When used in certain Deltanji workflows, triggering an automatic checkout on first keystroke could result in the developer working on an outdated copy of the code and only being notified of this later when saving their changes. In order to prevent this from happening checkout now reloads the document immediately. 

Error messaging has been improved in two areas - when attempting to cancel code that is not checked out, and when trying to register new code onto a withdraw system. 

We have also improved interoperability between the Deltanji extension and the InterSystems ObjectScript one, as well as its handling of multi-component objects.

If you're already a user of Deltanji then your extension with automatically update. You can find out more information on Deltanji and the latest release here

0
0 209