#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 · Feb 19, 2022 2m read

Hey developers!

Sometimes we need to insert or refer to the data of classes directly in globals.

And maybe a lot of you expect that data structure of global with records is:

^Sample.Person(Id)=$listbuild("",col1,col2,...,coln).

And this article is a heads up, that this is not always true, don't expect it as granted!

1
0 482
Question Renato Araujo · Feb 20, 2022

Hi all,

I am trying to use a %Status property on some of my Response classes. If the execution of a service goes wrong, I set the %Status property on Response with the value $$$ERROR($$$GeneralError, "pre-defined error message"). 

When I check the visual trace for this message and look for the %Status (property "status_code" on the image), it is displayed like this:

If I select to display the Body of the Response, I get the 'readable' form of %Status:


According to the documentation, this is expected as %Status properties are encoded in base64 during Projection to XML.


So my question is: Is it

1
0 406
InterSystems Official Bob Kuszewski · Feb 9, 2022

UPDATE:  Developer Preview 7 has been released.

Update 7 includes a number of stability improvements over previous updates and support for support for all of the planned 2022.1 features.  If you notice any problems at all, now's the time to let us know.  The docker pull commands below have been updated with the latest build numbers.  Enjoy!

Developer Preview releases are now available for the 2022.1 version of InterSystems IRIS, IRIS for Health, and HealthShare Health Connect.

As this is InterSystems' first developer preview release, let's take a moment to describe what these are.  The developer preview program enhances the previous IRIS preview program with approximately bi-weekly releases that add features as they are ready.  This allows us to get feedback on capabilities and enhancements as they're available.  You'll see below a list of enhancements that are targeted for 2022.1, which are not included in the first developer preview.  Look for those over the coming weeks. 

We are eager to learn from your experiences with this new release ahead of its General Availability release. Please share your feedback through the Developer Community so we can build a better product together. 

InterSystems IRIS Data Platform 2022.1 is an extended maintenance (EM) release. 2022.1 includes the many important new capabilities and enhancements have been added in 2021.2, the continuous delivery (CD) release, since 2021.1, the previous EM release. Please refer to the release notes for 2021.2 for an overview of these enhancements.

9
0 1547
Question José Ademar de Oliveira Junior · Feb 4, 2022

Hello Programmers,
I'm trying to use Intersystems IRIS Database with
Quarkus, but I'm getting problems making it work
does anyone knows how to set up the Intersystems IRIS Database
on Quarkus ?

I did that on my pom.xml  and also I added the jar
hibernate-iris-1.0.0.jar and intersystems-jdbc-3.2.0.jar but it's not working 

<dependency>
            <groupId>com.intersystems</groupId>
            <artifactId>intersystems-jdbc</artifactId>
            <version>3.2.0</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/src/main/resources/intersystems-jdbc-3.2.0.jar</systemPath

17
0 777
Discussion Vikram Rajput · Feb 15, 2022

I am surprised with the performance (poor) of Native API for .NET

       Following code (where ^testGlobal,node1 has 50 records) takes 5 seconds to run.  Anyone else think there is room for the improvement? 

    string global = "^testGlobal";
            object[] Subs = new object[1];
            Subs[0] = "node1";

            try
            {
                IRISIterator iter = iris.GetIRISIterator(global, Subs); 
               foreach (var item in iter)
                {        
                    Console.WriteLine((string)(iter.CurrentSubscript));
                }
7
0 545
Article Eduard Lebedyuk · Feb 17, 2022 2m read

If your embedded python code calls tkinter library (which is used by a lot of graphic producing libraries, including matplotlib), you might get this error:

<THROW> *%Exception.PythonException <CLASS DOES NOT EXIST> 230 ^^0^DO ##CLASS(User.Test).Test() 
<class '_tkinter.TclError'>: Can't find a usable init.tcl in the following directories:

c:/intersystems/irispy/lib/python/lib/tcl8.6
c:/intersystems/irispy/lib/tcl8.6
c:/intersystems/lib/tcl8.6
c:/intersystems/irispy/library
c:/intersystems/library
c:/intersystems/tcl8.6.9/library
c:/tcl8.6.9/library

This probably means that Tcl
0
1 3040
Question Scott Roth · Feb 16, 2022

I am not sure if this is the correct place for this question, but I am struggling to setup TLS security for our IRIS Management Portal and etc. through Apache and the Web Gateway. I have a couple of questions when it comes to the setup.  

  • if I build a private key and certificate within Red Hat, does that certificate have to be on everyone's pc to connect to the Management Portal?
  • Can I use a self signed Certificate?
  • Can I use the existing CA on the server, or do I need to work with my Data Security team to get a Certificate?

Any help would be appreciated

Thanks

Scott Roth

1
0 601
Question Michael Jobe · Jan 26, 2021

The current version of SAM creates Prometheus metric endpoints which appear to be handled correctly by the current prometheus scraper, however the metrics do not confirm to the current prometheus standard.  The standard states: 

  • Prometheus' text-based format is line oriented. Lines are separated by a line feed character (\n). The last line must end with a line feed character. Empty lines are ignored.

Link is here: Prometheus format

In the current output on the

<hostname>:8080/api/monitor/metrics

endpoint the last metric does not contain a newline causing parsers to fail.

9
0 498
Article Robert Cemper · Feb 8, 2022 1m read

I have created a package to export a Global into JSON object file and to re-create it by reloading from this file   
embeddedPython refers to the new available technologies. It should be understood as a learning exercise of 
how to handle the language interfaces. Only Global nodes containing data are presented in the generated JSON file.
Differently from the previous example, this one is using embedded Python only, no ObjectScript. Therefore PURE

2
0 663
Question sween · Feb 11, 2022

If anybody could give me some insight on creating the %All Namespace programmatically I would appreciate it.   There are quite a few posts I found that reference its creation using the UI, but I cant seem to get passed some validations with any form of the below:

Set Properties("Globals")="%DBDEFAULT"
//Set Properties("Library")="IRISLIB"
Set Properties("Routines")="%DBDEFAULT"
//Set Properties("SysGlobals")="IRISSYS"
//Set Properties("SysRoutines")="IRISSYS"
Set Properties("TempGlobals")="IRISTEMP"
Set tSC=##class(Config.Namespaces).Create("%All",.Properties)

The documentation for Config.

3
0 507
Discussion Eduard Lebedyuk · Feb 2, 2022

You will receive a string of comma-separated integers whose elements have both a negative and a positive value, except for one integer that is either only negative or only positive, our challenge will be to find that integer. As usual shortest solution wins.

##Input "1,-1,2,-2,3"

##Output 3

3 has no matching negative appearance

##Note

Rules

  1. The signature of the contest entry MUST be:
Class CodeGolf.PairedOpposites
{

ClassMethod Solve(o As %String)
34
0 862
InterSystems Official RB Omo · Feb 9, 2022

InterSystems has corrected a defect that can result in an SQL query returning incorrect results.

This defect exists only in the 2021.2 (Continuous Delivery) version of:

            InterSystems IRIS Data Platform

            InterSystems IRIS for Health

            HealthShare Health Connect

InterSystems has replaced existing distributions of these products with new builds that correct the defect. The corrected distributions can be identified by the build number (651) and are available via normal means. Ad Hoc corrections are not available for Continuous Delivery (CD) distributions.

This defect

0
0 361
Question Felipe Quezada · Jan 26, 2022

Hello guys! I need some assistance with these problems I have.

The first one is that I need to execute a Python file, which is at /XY path. This PY is supposed to read an excel file and create a CSV version in /XZ path.

I am quite sure that the PY file is correct, but when using this function I get nothing but this error:

SET tSC = $ZF(-100,"/ASYNC /SHELL ", "python", "/data/InterSystems/IRIS/mgr/TEST01CODE/ExcelReading/ExcelToCSV.py")

ConfigItem 'FJ EXCEL READING' (FJ.BS.ExcelReading) started in job 3164

ERROR #00: (sin descripción de error)

Any ideas or suggestions?

The second error I have is

2
1 682
Question Peter (Sechaba) Tomodi · Feb 9, 2022

What is the best way to add an en-uk.json or an en-za.json file to the custum folder, since the default is en-us.json?

<hspc-home>/base/ui-custom-app/assets/i18n/en-za.json
 

Where can I get the json files for UK and Za ?

4
0 284
Question Jeffrey Drumm · Feb 8, 2022

Is there a straightforward workflow in VS Code for moving a class from one namespace to another on the same server? With Caché/IRIS Studio, it was a (sort of) simple export/change namespace in file menu/import operation. But in VS Code it's not obvious (to me, at least). 

I can add multiple namespaces to a workspace, but when using isfs:// paths I see only a "Download" option and no "Upload" or "Import/Compile." When I'm navigating the local file tree, I see Import options, but no way to select the namespace into which I want to import.

I've worked around this by creating the package name on

8
0 1985
InterSystems Official Jeff Fried · Feb 7, 2022

InterSystems has been using a two-stream release cadence with InterSystems IRIS since 2018 (see the original announcement from when we started).   We provide:

  • Continuous delivery (CD) releases — these releases provide access to new features quickly and are ideal for developing and deploying applications that are continuously being updated and can take immediate advantage of new features.
  • Extended maintenance (EM) releases — these releases are less frequent than the continuous delivery releases but provide the increased stability of maintenance releases.
3
2 4400
Question Joao Lazaroni · Feb 8, 2022

I have created a Class method to list employees that are subordinated to a certain boss. But I don´t know how to relate the data in the way it was given to me.

For Example:

  • ^Employee(IdEmployee) = Name

                  ^Employee(1) = "Jessica"

                    ^Funcionario(10) = "Rose"

  • ^HistEmployee(IdEmployee, Date) = Salary^Job^IdEmployeeBoss

                    ^HistEmployee(10, 64628) = "3500^Secretary^1"

So, based on this seetings, Jessica is Rose's boss. But I don't know how I can make a relation between that string and the subscript. Can someone help me?

2
0 292
Announcement Anastasia Dyubaylo · Feb 1, 2022

Hi Community,

We are pleased to invite all the developers to the upcoming InterSystems Python Contest Kick-off Webinar! The topic of this webinar is dedicated to the Python contest.

In this webinar, we’ll present two templates to start working with Embedded Python :

  1. What is Embedded Python and Jupyter;
  2. Embedded Python with Interoperability (PEX hacked to use Embedded Python).

As always, our experts will answer the questions on how to develop, build, and deploy Python solutions using InterSystems IRIS.

Date & Time: Monday, February 7 – 12:00 PM EDT

Speakers:
🗣 @Guillaume Rongier, InterSystems Sales Engineer  
🗣 @Bob Kuszewski, InterSystems Product Manager
🗣 @Evgeny Shvarov, InterSystems Developer Ecosystem Manager

1
0 473
Question prashanth ponugoti · Feb 5, 2022

Hi Community,

We got requirement to Migrate whole interfaces from prod instance (cache2017.1 ) to new instance iris2020.1.

Currently around 100+ integrations (health share and health connect) up and running in prod instance (cache2017.1 ) , we need to migrate this live server to brand new server with iris2020.1.

Could you please suggest me guidelines and best practises while doing this migration.

Please ping me any document reference for this kind of Lift and Shift Migration.

After migration done, we will use new Live (iris2020.1 )instance only.

Thanks,

Prashanth

6
0 483