#InterSystems IRIS

19 Followers · 5.5K 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.

InterSystems Official Carmen Logue · Aug 30, 2023

InterSystems Reports version 23.2 is now available from the InterSystems Software Distribution site in the Components section.  They are labeled InterSystems Reports Designer and InterSystems Reports Server and are available for Mac OSX, Windows or Linux.  insightsoftware elected to move from a  numerical number plan to a year-based numbering plan in 2023 so there are no versions 20 through 22;  versions increase from Version 19 to Version 23.  Note that the reports Server docker image will be available at a later date from the Container Repository.

This new release brings along some great en

0
0 275
Article Rizmaan Marikar · Aug 30, 2023 5m read

Wanted to share something I learned recently while working on a problem. We needed to add and change some Business Hosts in one of our edge productions.

In the past, we simply added the production class to CCR and then spreading it around. But there was a problem because different developers were working on different things, and we only wanted to include only the relevent production changes onto the CCR. 

Here's a little piece of code that can help add new things to an existing production:

class HSEDGE1PKG.ProductionDefinition
{

/// define the Productions Definitions which are listed be
0
2 274
Question Phil Burkhalter · Aug 29, 2023

I am trying to create the JSON message below for a REST API:

Class REST.Test.Sample.ItemDetails Extends (%Persistent, %JSON.Adaptor)
{

Property ItemId As %String;

Property Item As list Of AllItems;

}

Class AllItems:

Class REST.Test.Sample.AllItems Extends (%JSON.Adaptor, Ens.Response)
{Property ItemtId As %String;

Property itemName As %String(MAXLEN = 100);

Property itemStockNumber As %String(MAXLEN = 150);

Property itemType As %String;

Property itemPriority As %String;

Property itemDetailData As %String(MAXLEN = 10000);
}

I have a table with the data I want to export as a JSON mes

7
1 426
Question Adam Raszkiewicz · Aug 28, 2023

When creating the db using the Properties array, if I use a literal like "/iris/db/<instance name>/<directoryname>" it's created in the correct directory.

       set Properties("Directory")="/iris/db/InstanceName/DirectoryName"

but when it's executed with a variable, as in the example below,  it gets created in /iris/sys/<instance name>/mgr/

      set directoryPath="/iris/db/InstanceName/DirectoryName"
      set Properties("Directory")=directoryPath

 Is there any reason string literals work and variables do not?

5
0 238
Article Luis Angel Pérez Ramos · Aug 29, 2023 8m read

We continue with the series of articles based on the QuinielaML application.

In today's article I will describe how to work with the Embedded Python functionality available in InterSystems products.

Embedded Python allows us to use Python as a programming language within our productions, being able to take advantage of all the features available in Python. Here you can expand information about it.

First of all, let's remember what the designer of the architecture of our project is like:

Problematic to solve

In our case, we need to obtain the historical results of the First and Second

2
2 262
Question Ephraim Malane · Oct 13, 2022

Hi ommunity,

I am downloading an Excel xlsx from the web with the below method and saving it as xlsx, how do I convert and save xlsx as csv?

ClassMethod DownloadFileUrl()
{
        
        Set httprequest = ##class(%Net.HttpRequest).%New()
        Set httprequest.Server = "www.health.gov.za"Set httprequest.SSLConfiguration = "SSL_OAUTH_Client"Do httprequest.Get("/wp-content/uploads/2021/04/ICD-10_MIT_2021_Excel_16-March_2021.xlsx")
        write httprequest.HttpResponse.StatusLine         
        Set stream=##class(%FileBinaryStream).%New()
        Set stream.Fil
6
1 671
Article Iryna Mykhailova · Aug 2, 2022 8m read

Before we start talking about databases and different data models that exist, first we'd better talk about what a database is and how to use it.

A database is an organized collection of data stored and accessed electronically. It is used to store and retrieve structured, semi-structured, or raw data which is often related to a theme or activity.

At the heart of every database lies at least one model used to describe its data. And depending on the model it is based on, a database may have slightly different characteristics and store different types of data.

To write, retrieve, modify, sort, transform or print the information from the database, a software called Database Management System (DBMS) is used.

The size, capacity, and performance of databases and their respective DBMS have increased by several orders of magnitude. It has been made possible by technological advances in various areas, such as processors, computer memory, computer storage, and computer networks. In general, the development of database technology can be divided into four generations based on the data models or structure: navigational, relational, object and post-relational.

5
4 1968
Question Dave Lancaster · Aug 25, 2023

Trying to write multiple records to a file via Record Mapper from a single inbound DFT transaction with multiple FT1 segments.  DTL with HL7 DFT inbound and Record Mapper outbound checks field values in both FT1 segment and PV1 segment within a "foreach" loop, and if criteria are met for a particular FT1 then the target fields in the record map are set with values from multiple segments (MSH, PID, PV1, and FT1).  Currently in this setup, only the last qualifying FT1 segment's fields will write to the file (if there is more than one qualifying FT1 segment)....How can I set it up so that a new r

2
0 261
Question Ben Spead · Aug 22, 2023

We're trying to get a little more discipline around Web Gateway change control, and deploy changes to our CSP.ini from source control.  I was wondering if anyone cared to share their best practices in this area?  There is a "RELOAD" parameter (https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cl…) which says you can put RELOAD=1 in your CSP.ini file in order to force it to automatically activate when noticed by the daemon.  

Do people use this approach, and keep RELOAD=1 stored in their CSP.ini in source control?  Or do you not use this but rather cal

6
2 431
Question Norman W. Freeman · Aug 25, 2023

I have enabled Audit in Portal for monitoring license usage. 

When the system is under load, this event appears quite often :  

Event Source Event Type Event User Web Session Description
%System %Login Login UnknownUser     %Service_WebGateway 

It does not seems to cause issue with licensing , still, I am wondering why it's there and how it works (what cause such events).

After some tests (on a non production environment, not under load), here is what I have found out :

  • this event can occurs when accessing static resources like a CSS or JS file. I don't get that


4
0 279
Article Heloisa Paiva · Aug 23, 2023 18m read

Our objective

Today we continue expanding our last article by sharing information about some features we added to our portal. We will include a pinch of CSS to visualize the available data better and export it. Finally, we will study how to add some filtering and ordering options. By the end of this article, you should be able to display a complete simple query beautifully.

Previously, on "A portal to manage storage made with Django"...

We should pick up where we left off before proceeding to the development of the portal. We have previously created the basis for the project on the command









2
2 356
Article Sylvain Guilbaud · Aug 24, 2023 1m read

It sometimes happens that due to an adverse event the AUDIT database (IRISAUDIT) has grown to such proportions that the disk it resides on is full and the daily purge cannot be expected to reclaim disk space.

As IRISAUDIT is a system database required at startup, there is no question of attempting to restart IRIS after simply deleting IRIS.DAT from the <IRIS ROOT>/mgr/irisaudit/ database, nor of hot swapping, by system manipulations trying to dismount, replace, remount, since it is simply not possible to dismount it.

IRISAUDIT database: mounting required when starting IRIS

IRISAUDIT base:

4
0 339
Article Piyush Adhikari · Feb 24, 2023 2m read

InterSystems has also released IRIS as containerized deployments. This post is to demonstrate how InterSystems IRIS and applications those rely on IRIS a backend can be packaged into an image and be run in other machines in containers and how simple it is to do that.

A container runs image/s which have all the necessary executables, binary code, libraries, and configuration files. And the images can be moved from one machine to another, and  an images repository like Docker Hub can simplify that process.

I have used an application from Open Exchange for this demo.

Demo video: https://www.lo

2
3 522
Article Yuri Marx · Jan 12, 2022 12m read

The JSON is a data document free of types and validation rules. However, in some scenarios it is important that the JSON document has type and business rules validation, especially in interoperability scenarios. This article demonstrates how you can leverage a market-defined JSONSchema technology that is open for everyone to use and do advanced validations.

About JSON

According to json.org, “JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScri


























3
2 1485
Question Michael Davidovich · Aug 21, 2023

A bit of an old school CSP question.  <csp:search> is a really nice, quick way to make easy lookups for CSP pages, especially for back office stuff that doesn't need to look pretty for the modern web app user.

At any rate, I'm here at the moment:

<csp:search SHOWSQL=1 NAME="OrgSearch" SELECT="OrganizationName Organization Name,Abbreviation,Software->Abbreviation Software" WHERE="OrganizationName Organization Name,Abbreviation,Software->Abbreviation Software" STARTVALUES=",,Software" PREDICATES="%startswith,%startswith,%startswith" CLASSNAME="AppLibrary.Organization" OPTIONS="popup" ONSELECT=

3
0 234
Article Luis Angel Pérez Ramos · Aug 22, 2023 4m read

Welcome dear members of the Community to the presentation and first article of a small project that will demonstrate the capabilities of InterSystems IRIS to provide full backup functionality for a web application developed in Angular. This article will be limited to presenting the concept as well as the InterSystems IRIS functionalities used in a general way, going into more detail in subsequent articles.

Welcome to QuinielaML!

Introduction

It is possible that you have already heard about InterSystems IRIS functionalities such as Embedded Python and IntegratedML, but surely you have not


0
1 573
Article Mihoko Iijima · Aug 17, 2023 1m read

InterSystems FAQ rubric

It can be obtained using AllFields query of %SYS.ProcessQuery class.

For the details, please refer to the document Process (Job)【IRIS】Process (Job).

An example of execution in the terminal is as follows.

USER>set stmt=##class(%SQL.Statement).%New()
USER>set st=stmt.%PrepareClassQuery("%SYS.ProcessQuery","AllFields")
USER>write st   // you can call %Execute() when st = 11
USER>set rset=stmt.%Execute()
USER>while rset.%Next() { write rset.%Get("JobNumber"),"-",rset.%Get("Pid"),"-",rset.%Get("OSUserName"),"-",rset.%Get("CurrentDevice"),"-",rset.%Get("Routine"),"
2
1 515
Article sween · Aug 21, 2023 6m read

Summary

A Quick start to include InterSystems IRIS Tables in Data Build Tool using Python.

It uses the sqlalchemy plugin with sqlalchemy-iris which enables the iris strategy for duckdb as a source for a dbt project.

EDIT: If you stumbled here on Google Geuse for "iris dbt", your best bet is to checkout dbt-iris for the native adapter implementation that follows dbt guidelines.

Im out of town for the Python meetup in Cambridge, but will submit to the InterSystems Python Programming Contest starting in September. Sucks I will miss it, wanted to connect with Thomas Dyer and see how close I got,

image

3
1 663