#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 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 812
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 677
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 550
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 470
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 582
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 602
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 422
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 989
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 347
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 2121
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 5786
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 278
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 416
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 546
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 679
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 1008
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 489
Question Omar Ali Ateen · Oct 17, 2022

Hello 

I have a class to render reports as  pdf. My problem that arabic characters in report replaced with ####. 

Please find my code below

#dim stream as %Stream.Object set report = $classmethod($piece(reportClass, ".cls"), "%New")
set report.RUID = RUID set %response.ContentType = "application/pdf"

set sc = report.GenerateReportToStream(.stream, 2) return:$$$ISERR(sc) sc
do stream.OutputToDevice()

return $$$OK

Your help is appreciated.

3
0 334
Discussion Olga Zavrazhnova · Oct 31, 2022

Hi Community,
Watch the recording of the Second Community Roundtable: "What is the best source control system for development with InterSystems IRIS?" 

Some great discussions have been started during this roundtable. We invite you to continue these discussions. in the comments to this post.

Tell us, which source control you use and why – in the comments to this post. 

0
0 337