#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 Sergey Mikhailenko · Jan 25, 2021 2m read

Hello, developers!

I would like to share the history of the project - the ZAPM shell.

As soon as ZPM was implemented, I immediately began to think about how best to use it.

And immediately faced with the desire to move more quickly between namespaces, especially when there are more than 20 of them. I had to leave the ZPM, move to the desired namespace and re-enter the shell. I suggested an improvement - a new "namespace" command for easier navigation. I didn’t wait - I did it myself. And so it went. If you need it, get ready to do it yourself.

0
0 305
Article Yuri Marx · Jan 25, 2021 3m read

The ObjectScript language of InterSystems IRIS has a very powerful metadata engine called XData. This feature allows the creation of metadata definitions for your classes, to be used by the compiler or by programs that will extend the standard features of the language, based on the XData definitions of its scope.

An example is IRIS Publisher, an Open Source application from the community capable of collecting all XData definitions in HTML and / or Markdown format and generating a Web Portal with all the application documentation assembled from these XData elements.

0
0 487
Article Evgeny Shvarov · Jan 24, 2021 2m read

Hi developers!

Often we need to deploy some data along with code pieces of the application.

And for InterSystems IRIS developers the question could sound: "How can I deploy the data I have in globals?"

InterSystems IRIS Globals Model QuickStart | InterSystems

Here I want to suggest to you one of the approaches - deploying global data using the ZPM package manager.

0
0 511
Announcement Evgeny Shvarov · Jan 24, 2021

Hi developers!

Sometimes we need to test this or that library, framework, or function vs some dataset. And often we want to deal with some meaningful data.

Recently I added two very simple but meaningful datasets that could be installed with one line.

Titanic Dataset

Application

Contains 800+ records about passengers from the famous cruise liner. The dataset could be installed with:

zpm "install dataset-titanic"

This installs one class dc.data.Titanic with 800+ records.

Countries dataset

Application

The dataset contains data about 167 countries such as population, surface, capital, the average life expectancy. The dataset could be installed as:

zpm "install dataset-countries"

This installs one class dc.data.Countries and the global with data.

0
1 289
Article Ray Fucillo · Sep 2, 2020 7m read

While the integrity of Caché and InterSystems IRIS databases is completely protected from the consequences of system failure, physical storage devices do fail in ways that corrupt the data they store.  For that reason, many sites choose to run regular database integrity checks, particularly in coordination with backups to validate that a given backup could be relied upon in a disaster.  Integrity check may also be acutely needed by the system administrator in response to a disaster involving storage corruption.

8
9 2384
Article Yuri Marx · Jan 20, 2021 1m read

Sometimes it is necessary to execute commands from the shell of the host operating system, where your ObjectScript program is located, to launch programs, operating system services, schedule crontasks, among other activities. For this, the language has a utility procedure called $ZF(-100). See:

$ZF(-100,flags,program,args)

Where flags is the type of command you want to execute. In our case, the flag is "/ SHELL", to execute shell commands on the host operating system.

Program is the name of the program or service to be executed.

Args are execution arguments passed to the program.

2
2 1216
Question Werner Beukes · Jan 20, 2021

I need to do some nifty string manipulation on a source property. I will not be able to do it with the functions available(with the knowledge that I have of what is available). Could I call a ClassMethod to do this for me? This is what I want to do: The source property is "myemail@myemaildomain.co.uk". I need to add the text "test" to the beginning of that string. "testmyemail@myemaildomain.co.uk". That should be simple enough, but then I have to do this as well, "testmyemail@myemaildomaintest.co.uk". Note the additional "test" added after "myemaildomain".

7
0 314
Article Tani Frankel · Jan 19, 2021 2m read

For the benefit of those who want to use the Document Database (DocDB) capabilities within InterSystems IRIS, and specifically the REST API it provides, I put together a Postman Collection that provides samples for several basic calls.

For example:

0
0 911
Article Yuri Marx · Jan 16, 2021 3m read

Hi InterSystems Community!

The ObjectScript language of InterSystems IRIS has the ability to extend classes using a very interesting feature called XData.

It is a section in your class that can be used to create custom definitions to be used within the class itself and also externally.

To create one or more XData definitions for your class is very easy, see the example:

Classdc.Sample.PersonExtends(%Persistent,%JSON.
2
0 554
Question Mathew Lambert · Jan 12, 2021

Does anybody know if there is an easy way to know if the execution of the command $System.SQL.PurgeForTable went well/wrong?

The documentation describes that a string is returned, but in fact there is a nice Quit "" in the code.

Maybe inside PurgeForTable^%apiSQL there is any process variable set when it goes well/wrong?

Thank you very much!

5
0 264
Question Nicky Zhu · Jan 7, 2021

Hi guys,

In our clients environment, multiple sources will connect to one DB (all through JDBC connections) and perform various operations. Sometimes they found some data was deleted without  reason.  Thus they want some feature like SQL Server Database Audit Specifications that can log who at what time with which IP deleted data in a specific DB.

I've checked IRIS Audit but I didn't  find feature about  that . How can we audit and log  delete  of a known DB? The deletions might be performed by delete statament or truncate table stattement.

Thanks.

5
0 687
Question Phung Thoa · Nov 2, 2020

Hi all, By using VS code, I want to copy multiple files to local directory, then sync them to server, but I can't find where local directory is stored? In Atelier IDE, I could open a view of server and can copy the code to the project, then code is saved in the local directory. When I copy multiple files to the local directory -> choose sync in Atelier -> the code will be synchronized to the server How to do this from VS Code? Thanks!

14
0 998
Announcement Anastasia Dyubaylo · Jan 7, 2021

Hi Developers,

We're pleased to invite all the developers to the upcoming InterSystems Multi-model contest kick-off webinar! The topic of this webinar is dedicated to the Multi-model contest.

On this webinar, we will demonstrate the APIs for each data model in action.

Date & Time: Monday, January 11 — 10:00 AM EDT

Speakers:  
🗣 @Benjamin De Boe, InterSystems Product Manager
🗣 @Bob Kuszewski, InterSystems Product Manager - Developer Experience
🗣 @Evgeny Shvarov, InterSystems Developer Ecosystem Manager


2
0 294
Article Yuri Marx · Jan 12, 2021 3m read

Hi Community,

In this article I compared the features of the main leaders in the ODBMS gartner quadrant - 2019. See the list sorted by number of existent features.

  1. InterSystems IRIS 2020.3 - 59 features (https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls)
  2. Oracle Database 21c - 54 features (https://docs.oracle.com/en/database/oracle/oracle-database/index.html)
  3. Microsoft SQL Server - 45 features (https://docs.microsoft.com/en-us/sql/sql-server/?view=sql-server-ver15)
  4. AWS Aurora - PostgreSQL - 34 features (https://docs.aws.amazon.
4
1 657