#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 Eduard Lebedyuk · Jun 3, 2021 7m read

IMPORTANT NOTE InterSystems no longer provides a separate InterSystems Reports Server container. To run containerized InterSystems Reports Server, use Logi Reports Server container and your InterSystems Reports Server license. Documentation.

InterSystems Reports is powered by Logi Report (formerly named JReport), a product of Logi Analytics. InterSystems Reports is supported by InterSystems IRIS and InterSystems IRIS for Health. It provides a robust modern reporting solution that includes:

  • Embedded operational reporting which can be customized by both report developers and end users.
  • Pixel-perfect formatting that lets you develop highly specific form grids or other special layout elements for invoices, documents, and forms.
  • Banded layouts that provide structure for aggregated and detailed data.
  • Exact positioning of headers, footers, aggregations, detailed data, images, and sub-reports.
  • A variety of page report types.
  • Large-scale dynamic report scheduling and distribution including export to PDF, XLS, HTML, XML, and other file formats, printing, and archiving for regulatory compliance.

InterSystems Reports consists of:

  • A report designer, which provides Design and Preview Tabs that enable report developers to create and preview reports with live data.
  • A report server which provides end users browser-based access to run, schedule, filter, and modify reports.

From InterSystems documentation.

This article focuses on the Server part of InterSystems Reports and provides a guide on running Report Server in containers while persisting all the data.

2
3 946
Article Robert Cemper · Mar 19, 2022 2m read

This example demonstrates the difference you may experience when you write to
Gllobals directly from Embedded Python compared to native ObjectScript.

To make this demo useful I start 2 background jobs that simply write sequentially
to a dedicated global. A common control method signals for a synchronous start.
Similar a common stop & view interrupts data feeding.

That's the principle process:

  

As 2 jobs run in parallel the probability of just using sequential blocks is reduced.
During the development of this demo, I detected that the JOB command has problems
with ClassMethods in Embedded Python.
WAR

1
0 268
InterSystems Official RB Omo · Mar 15, 2022

InterSystems has corrected a defect that causes incorrect ObjectScript routine compilation.

This defect exists only in the recently released 2021.1.1 version of:

            InterSystems IRIS Data Platform

            InterSystems IRIS for Health

            HealthShare Health Connect

InterSystems recommends that 2021.1.1 not be used.Incorrect routine compilation occurs silently and can cause unpredictable logic execution.2021.1.1 versions have been removed from distribution channels.

1
0 513
Article Sergey Mikhailenko · Jan 18, 2022 5m read

It is becoming more and more common to see beautiful badges in the README.MD file with useful information about the current project in the repositories of GitHub, GitLab and others. For instance:

imageimage

The project is being developed The quality of the code, which also provides its own badge, which immediately shows the status of code validation of the project. If you insert a line into the README.MD file

 [![Quality Gate
4
3 816
Question Robert Cemper · Mar 11, 2022

It sounds strange though it's embarrassing.

I have a class with ClassMethods written in ISOS and Embedded Python.

The ClassMethods written in ISOS start in the Background as usual. No problems

But my 

ClassMethod setPy() [ Language = python ]
{
import iris, datetime, time
- - -

Just fails the JOB command with (even 15 sec) timeout and $ZC=0
This is not funny
My actual workaround:
I created a ClassMethod in ISOS, that does an elegant JobStart
and this ClassMethod only runs the Embedded Python ClassMethod.
I'm not amused and hope there is just an undocumented/unknown param missing

I have a feeling

4
0 441
Question James Woo · Mar 17, 2022

SET ^||fruit(1)="apple",^||fruit(4)="banana",^||fruit(8)="cherry"
SET ^||fruit(1,1)="Macintosh",^||fruit(1,2)="Delicious",^||fruit(1,3)="Granny Smith"
SET ^||fruit(1,2,1)="Red Delicious",^||fruit(1,2,2)="Golden Delicious"
SET ^||fruit="Fruits"
ZWRITE ^||fruit

^||fruit="Fruits"
^||fruit(1)="apple"
^||fruit(1,1)="Macintosh"
^||fruit(1,2)="Delicious"
^||fruit(1,2,1)="Red Delicious"
^||fruit(1,2,2)="Golden Delicious"
^||fruit(1,3)="Granny Smith"
^||fruit(4)="banana"
^||fruit(8)="cherry"


How I do send the output of zwrite to $$$TRACE()?

4
0 795
Question prashanth ponugoti · Mar 17, 2022

Hi Community,

I DTL I am assigning value to %TimeStamp type praport named BirthDate.

18001225  converted to 1800-12-25T00:00:00  but giving below error

ERROR #7208: Datatype value '1800-12-25T00:00:00' is not a valid timestamp format
> ERROR #5802: Datatype validation failed on property 'xxx.xxx.xxxx.xxxxx:BirthDate', with value equal to "1800-12-25T00:00:00"

20000612   converted to 2000-06-12T00:00:00  is not giving any error

Please help me to resolve this. 

* We did not define the variable type as %TimeStamp   , this persistence class created based on XSD.

Thanks 

Prashanth

3
0 437
InterSystems Official Stefan Wittmann · Feb 16, 2021

The GA release is now published for the 1.5 version of the InterSystems API Manager (IAM).

 

The container for IAM, including all relevant artifacts to upgrade from earlier versions of IAM can be downloaded from the WRC Software Distribution site in the Components area.

 

The build number for this release is IAM 1.5.0.9-4.

 

InterSystems API Manager 1.5 makes it easier to manage your API traffic, integrate with your environment and onboard users of your APIs. It has many new capabilities, including:

 

  • Improved User Experience
  • Introducing new Developer Portal tools
  • Support for Kafka connectivity
6
0 702
Article Murray Oldfield · Jun 17, 2016 2m read

Myself and the other Technology Architects often have to explain to customers and vendors Caché IO requirements and the way that Caché applications will use storage systems. The following tables are useful when explaining typical Caché IO profile and requirements for a transactional database application with customers and vendors.  The original tables were created by Mark Bolinsky.

In future posts I will be discussing more about storage IO so am also posting these tables now as a reference for those articles. 



A list of other posts in this series is here
 


It is vital to have well set up storage

7
2 3161
Question Andy Stobirski · Mar 15, 2022

How do I use the LOAD DATA command as described here.

I have the following LOAD DATA statement:

LOAD DATA FROM FILE 'E://Temp/Values.txt'

into PARIS.UAGU_MNDOOUT1 (AHSU_ID, AHSU_UAG_ID)

Where do I run it? It doesn't work in the SQL Gateway, in the terminal, in an embedded SQL command.

What am I missing?

2
0 470
InterSystems Official Bob Kuszewski · Mar 15, 2022

The InterSystems Kubernetes Operation (IKO) version 3.3 is now available via the WRC download page and the InterSystems Container Registry.

IKO simplifies working with InterSystems IRIS or InterSystems IRIS for Health in Kubernetes by providing an easy-to-use irisCluster resource definition. See the documentation for a full list of features, including easy sharding, mirroring, and configuration of ECP.

IKO 3.3 Highlights:

  • Support for 2021.2 and 2022.1 editions of InterSystems IRIS & IRIS for Health
  • Support for Kuberentes 1.21
  • Deploy common System Alerting and Monitoring (SAM) configurations as part of your irisCluster
  • InterSystems API Manager (IAM) can now also be deployed and managed as part of the irisCluster
  • Automatic tagging of mirror pair active side, so a service can always point to the active mirror member.
0
0 288
Question Michael Lundberg · Mar 15, 2022

Hello

I have trouble capturing the value from a stored procedures output variable from an MS SQL Database.

In the database querywindow of MS SQL manager, the procedure is called as:
declare @return As varchar (100)
Execute TheProcedure @return. @return then contains string of content.

From HC I call the procedure:

set RetValue = ""
set Inparm = "@return"
set Outparm = ## class (% ListOfDataTypes).% New ()

SET SQLQuery = "exec TheProcedure ?"
(have also tried
"{call TheProcedure (?)}"

SET tSC = ..Adapter.ExecuteProcedure (, .Outparm, SQLQuery, "o *", Inparm)
set RetValue = outparm.GetAt(1)

This constantly

3
0 490
Article Yuri Marx · Mar 15, 2022 4m read

This is the fourth part of the series of articles on migrating from the main databases on the market to InterSystems IRIS.In this part, the procedures for migrating from Microsoft SQL Server will be detailed.As described in previous articles, there are currently a few options to do the migration, but the two most popular options include the use of DBeaver (https://openexchange.intersystems.com/package/DBeaver) or SQLGateway.

0
3 885
Question Niklas Thilmont · Mar 14, 2022

Hey InterSystems Community!
This is probably far-fetched - is there a way to get notified/get a piece of code triggered whenever the state of a global changes?

Now what could I possibly want with that? Quite simple! I would like to forward the content of a global (in this case the "FSLog" global written by the FHIR implementation) while adding timestamps to it - to create some sort of file-based logging for it.

9
0 371
Article Henrique Dias · Jan 13, 2022 4m read

Hey community! How are you doing?

I hope to find everyone well, and a happy 2022 to all of you!

Over the years, I've been working on a lot of different projects, and I've been able to find a lot of interesting data.

But, most of the time, the dataset that I used to work with was the customer data. When I started to join the contest in the past couple of years, I began to look for specific web datasets.

I've curated a few data by myself, but I was thinking, "This dataset is enough to help others?"

So, discussing the ideas for this contest with @José Pereira , we decided to approach this contest

4
0 480
Question prashanth ponugoti · Mar 9, 2022

Hi Community,

We are not using github or any source safe till now. We have ensemble hl7 interfaces (business services, processes, operations)available in production. Now we want to deploy these interfaces to a brand new cloud server with iris instance.

Here in current production we have studio access but new cloud server iris we have only vscode access.

I have exported all the classes from current production using  Studio and  I have exported xml file with me.

How to import this exported file into VS CODE to deploy classes in a new cloud server?

Does VS CODE have any option to import cls files

2
0 980
Announcement Mark Lo · Jun 9, 2020

The Documentation team in InterSystems Learning Services is happy to announce the new InterSystems IRIS Server Migration Guide!

Have you ever wanted to copy, move, or clone an instance of InterSystems IRIS to a new server? Maybe the operating system on the old server is no longer supported, or maybe you want to add a new member to an existing mirror. Migrating your application databases is easy, but what about your tasks, users, roles, resources, and other security settings? What do you need to migrate, and how best to do it?

3
3 1250
Question GUSTAVO MARQUES · Mar 3, 2022

Does any one could tell me how can I access the target properties from inside SQL in DTL Subtransform? For example, if I use the following statement:

SELECT ID INTO :target.SetIDPID  FROM firstlook.person WHERE  FirstName = 'Paul' - as said in documentation :

  SELECT Name INTO :target.Name FROM MainFrame.EmployeeRecord WHERE SSN = :source.SSN AND City = :source.Home.City

I get an Error: ERROR <Ens>ErrException: <PROPERTY DOES NOT EXIST>

But if I pass the value for a variable "SetIDPID" I can use it in a set action without any problem: 

SELECT ID INTO :SetIDPID  FROM firstlook.person WHERE

1
0 376
Question Renato Araujo · Mar 8, 2022

Hello everyone!

I am writing a SQL CALL (using JDBC) to a stored procedure that outputs a structured object (Oracle Object).

However, the adapter method is not accepting the corresponding JDBC Data Type STRUCT for the output parameter, returning the following error:

ERRO #5023: Erro no Gateway Remoto: JDBC Gateway SP execute(0) error 0: Remote JDBC error: ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'AGUARDAR_EVENTO'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored

Declaration of Output parameter:

Set tParams(1, "SqlType") = $$$SqlJStruct
Set tParam

0
0 528
Article David Loveluck · Aug 27, 2019 28m read

Since Caché 2017 the SQL engine has included new set of statistics. These record the number of times a query is executed and the time it takes to run.

This is a gold mine for anyone monitoring and trying to optimize the performance of an application that includes many SQL statements but it isn’t as easy to access the data as some people want.

This article and the associated sample code explains how to use this information and how to routinely extract a summary of daily statistics and keep a historic record of the SQL performance of your application.

What is recorded?

Every time an SQL statement

7
6 1722