#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 David Loveluck · Feb 25, 2019 4m read

There have been some very helpful articles in the community that show how to use Grafana with IRIS (or Cache/Ensemble) by using an intermediate database.

But I wanted to get at IRIS structures directly. In particular, i wanted to access the Cache History monitor data that is accessible by SQL as described here

https://community.intersystems.com/post/apm-using-cach%C3%A9-history-mo…

and didn't want anything between me and the data.

I already had class queries that returned the data i wanted, so i just needed to embed them in a REST class that returned JSON. I haven't included my class Grafana.

5
4 1763
InterSystems Official Fabiano Sanches · Nov 10, 2022

InterSystems is proud to announce the developer preview program for the 2022.3 releases. Many updates and enhancements have been added in 2022.3 and there are also brand new capabilities, such as the new FHIR SQL Builder, improvements for Columnar Storage, and support to Oracle Linux 9 (not in this first preview).

Future preview releases are expected to be updated biweekly and we will add features as they are ready. Please share your feedback through the Developer Community so we can build a better product together.

The build number for this developer preview release is 2022.3.0.539.0.

0
1 425
Article Evgeny Shvarov · Aug 14, 2022 2m read

Hello fellow developers!

When developing with ObjectScript Package Manager, one crucial thing is the package version, which we place in the module.xml file. When we add changes to the package and are ready to publish a new version of the package in the registry, we also need to increase the version number. This is clear, but it is annoying, and we can often forget to do that. 

This small article will help you to automate such a process.

Probot logo

1
0 815
Question Yan Kevin · Jul 13, 2022

Hi,

when I using ObjectScript Trigger Code , I want to get whether the fields has changed by using "{fieldName*C}" ,  actually, fieldName in "{fieldName*C}" is a real field name ,but in my code, fieldName is a variable as follows:

		SET stat=##class(%SYSTEM.SQL).GetColumns(tableName,.byname,.bynum,1)
		IF stat=1{
			SET i=1
			WHILE $d(bynum(i)){
				SET xColName=bynum(i)
				SET valComp={xColName*C}
				
				IF valComp=1{
					SET oldVal=1 //{xColName*O}
					SET newVal=2 //{xColName*N}
					&sql(INSERT INTO Yan.
5
1 680
InterSystems Official Bob Kuszewski · Nov 9, 2022

InterSystems is pleased to announce the release of System Alerting & Monitoring (SAM) version 2.0.

What is SAM?

SAM marries IRIS’s standards-based Monitoring API and Log Monitor with familiar industry standard tools like Grafana and Prometheus to create a basic monitoring and alerting solution for IRIS clusters.

For more on SAM, see the System Alerting and Monitoring Guide.

What’s new in SAM 2.0?

The industry standard tools that SAM relies on have all been upgraded. 

Configuration Export & Import – You can now export your SAM configuration and re-import it into another SAM instance.

0
1 552
Question Kathy Ward · Oct 28, 2022

<assign value='source.{ORC:FillerOrderNumber}' property='target.{OBR:FillerOrderNumber}' action='set' />
<assign value='##class(%IO.FileStream).%New()' property='tempStream' action='set' />
<assign value='tempStream.Open(,"NEWR")' property='Status' action='set' />
<foreach property='source.{OBXgrp()}' key='g1' >
<foreach property='source.{OBXgrp(g1).OBX()}' key='s1' >
<if condition='source.{OBXgrp(g1).OBX(s1):ValueType} = "ED"' >
<true>
<assign value='SetID + 1' property='SetID' action='set' disabled='1' />
<assign value='"1"' property='target.{OBX(1):SetIDOBX}' action='set' />
<assign value='source.

1
1 456
Question Ward De Backer · Oct 28, 2022

Hi developers!

As a follow-up to my previous post on the Node.js Native API, I created a quick poll because it may be interesting to see what technologies developers are using in their applications around the world with IRIS & Caché. I put a poll below, just check all boxes you have used or plan to use with InterSystems technology.

Thank you all for your cooperation!

1
0 476
Question Phillip Wu · Nov 7, 2022

Hi,

I have installed Visual Studio on my PC and connecting to IRIS on my Linux server.

I have installed the InterSystems extensions.

I click on the InterSystems icon on left->Click on "Choose Server and Namespace" -> Pick my server myTrak.

However I get this error:
request to https://mytrak:52773/api/atelier/ failed,
 reason: write EPROTO 18648712:error:100000f7:SSL routines:OPENSSL_internal: WRONG_VERSION_NUMBER:../../third_party/boringssl/src/ssl/tls_record.cc:242:

Does anyone know how to fix this?

----

Visual Studio 1.69.2
Extensions
==========
InterSystems Language Server 2.

2
0 590
Question Patrik Spisak · Nov 4, 2022

How do I create recursive classmethod which stop all methods from running when condition are meet?

ClassMethod workpieceUnit(mainArticle As %String, article As %String) As %String
{
	
	&SQL(SELECT unit->unitCode INTO :unitCode FROM production_article.composition WHERE mainArticle = :mainArticle AND article = :article)
	
	IF SQLCODE = 0
	{
		W !, "Has Value"
		QUIT unitCode
	}
	ELSE
	{
		SET sql = "SELECT article, unit->unitCode,  production_article.composition_sqlArticleCode(article, type) AS articleCode FROM production_article.
6
0 609
Question Phillip Wu · Nov 7, 2022

Hi,

I want to know how to add a class to IRIS namespace 'USER' using terminal.

How do I do this?

I know you can add this class using Visual Studio Code with the Intersystems extension installed on my PC and connected to an IRIS instance.

Is it possible to do this with terminal? From this prompt:
BASETC:USER>

I have a class like in this example:

Class ObjectScript.RightTriangle
{

/// Compute area and hypotenuse of a right triangle
ClassMethod Main()
{
    write !, "Compute the area and hypotenuse of a right triangle",
          !, "given the lengths of its two sides."
    ....
}
}
4
0 429
Question Dmitry Maslennikov · Oct 23, 2022

This is not an issue in ObjectScript, due to its typeless nature. But it's essential for external programming languages that care a bit more about types of variables.

And in any case, it's still reproducible in ObjectScript. I have table

CREATE TABLE some_table (
        id INTEGER NOT NULL, 
        x INTEGER, 
        y INTEGER, 
        z VARCHAR(50), 
        PRIMARY KEY (id)
)

And data

INSERT INTO some_table (id, x, y, z) VALUES (1, 1, 2, 'z1');
INSERT INTO some_table (id, x, y, z) VALUES (2, 2, 3, 'z2');
INSERT INTO some_table (id, x, y, z) VALUES (3, 3, 4, 'z3');
INSERT INTO some_table (id, x, y, z) VALUES (4, 4, 5, 'z4');
11
0 1004
Announcement Olga Zavrazhnova · Nov 6, 2022

Hi Developers! 

InterSystems continues the Developer Meetup event series. The next one will happen on November 17th from 5:30 pm-8 pm ET in Boston, MA, USA.
At this meetup, you will learn more about Kubernetes, Mirantis Lens tool, and how to run Lens with InterSystems IRIS IKO (InterSystems Kubernetes Operator).

Food and drink will be provided. 

> Register here <

InterSystems <> Mirantis Developer Meetup on Kubernetes

Agenda:

0
0 348
Article José Pereira · May 2, 2022 16m read

Introduction

This article aims to give an introduction to what gRPC is and an example of how to play with the official Hello World using IRIS Embedded Python.

You can find all the code exposed here, in this project repo.

gRPC

The gRPC (gRPC remote procedure call) is an API architectural style based on the RPC protocol. The project was created by Google in 2015 and is licensed under Apache 2.0. Currently, the project is supported by the Cloud Native Computing Foundation (CNCF).

5
0 2131
Article Mark Bolinsky · Jan 29, 2016 4m read

** Revised Feb-12, 2018

While this article is about InterSystems IRIS, it also applies to Caché, Ensemble, and HealthShare distributions.

Introduction

Memory is managed in pages.  The default page size is 4KB on Linux systems.  Red Hat Enterprise Linux 6, SUSE Linux Enterprise Server 11, and Oracle Linux 6 introduced a method to provide an increased page size in 2MB or 1GB sizes depending on system configuration know as HugePages.

At first HugePages required to be assigned at boot time, and if not managed or calculated appropriately could result in wasted resources.  As a result various Linux distributions introduced Transparent HugePages with the 2.6.38 kernel as enabled by default.  This was meant as a means to automate creating, managing, and using HugePages.  Prior kernel versions may have this feature as well however may not be marked as [always] and potentially set to [madvise].  

Transparent Huge Pages (THP) is a Linux memory management system that reduces the overhead of Translation Lookaside Buffer (TLB) lookups on machines with large amounts of memory by using larger memory pages.  However in current Linux releases THP can only map individual process heap and stack space.

9
5 5804
Announcement Laurel James (GJS) · Nov 4, 2022

Thank you to everyone who joined our User Group Session yesterday!

It was great showing off the new Deltanji Production Component driver that facilitates source control of interoperability productions, and we had some really insightful discussions as well.

If you missed out on the session and would like a copy of the recording, feel free to drop me a message. 

0
0 279
Question Phillip Wu · Nov 1, 2022

Hi,

I'm often required to copy the database from production to test.

This is to 'refresh' the database on test.

To achieve this I copy all required IRIS.DAT files from production to test.

The nodes are mirrored on production.

The nodes are not mirrored on test.

Each of the database files IRIS.DAT has a mirror attribute.

Is there a way of checking if the mirror attribute is set for the database file? eg. an objectScript program

4
0 424
Question Kevin Kindschuh · Nov 3, 2022

Is there a way for web application to set its session timeout value according to the user role or other criteria?

In this case, I have a custom production monitor page, and I want to set 5 minutes for most users but allow managers a longer time or those displaying pages on a monitor a longer time.

1
0 548
Discussion Timothy Leavitt · Oct 19, 2022

Hello community! I'm working on an internal innovation effort at InterSystems considering our documentation/resources around upgrades. As part of this, I'd love to have your answers to any/all of the following questions, either via comment or (if you prefer your answers to be more private) direct message.

Thanks in advance!

What InterSystems products + versions are you running? ($zv is ideal.)

What makes you decide to upgrade?

What are your blockers to upgrading?

What is your process for evaluating and planning a possible upgrade?

What documentation resources do you use?

12
0 682
Question Norman W. Freeman · Oct 12, 2022

I use the following code to check the last modified date of file which is on a network shared folder (eg: "\\someserver\subfolder\foobar.txt")

set file = ##class(%File).%New(filePath)
set lastModifiedDate = file.DateModified //might hang up for a very long time 
set file = "" //close file

if the file is not available or does not exists, DateModified property return a negative value (which is fine). I use that property to quickly check if file has been modified and need to be imported.

2
0 1015
InterSystems Official Fabiano Sanches · Nov 1, 2022

InterSystems is pleased to announce the 2022.2 release of InterSystems IRIS Data Platform, InterSystems IRIS for HealthHealthShare Health Connect, and InterSystems IRIS Studio are now Generally Available (GA).

2022.2 is a Continuous Delivery (CD) release. Many updates and enhancements have been added in 2022.2, in SQL management, cloud integration, Kafka and JMS adapters, the SQL Loader, and other areas. The new Columnar Storage has been released, but it stills an experimental feature.

Release Highlights

Platform Updates

InterSystems IRIS Data Platform 2022.

0
0 490