#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 Yuri Marx · Jan 31, 2022 8m read

From IRIS 2021.2 is possible write Class Methods using the Python Language. I used this new feature to detect persons and objects into images, using ImageAI (https://github.com/OlafenwaMoses/ImageAI). The ImageAI creator defines it as: "An open-source python library built to empower developers to build applications and systems with self-contained Deep Learning and Computer Vision capabilities using simple and few lines of code." In this article you will learn how to apply AI Computer Vision to detect object and persons inside images.

0
2 377
Question Steve Pisani · Jan 29, 2022

Hi,

What is the Python syntax I can use from a ClassMethod (developed in an IRIS using embedded Python), in order to invoke another class method,

- in the same class; and

- in another class.

I see 'self' is synonymous to use $this (..) in ObjectScript, but these are ClassMethods I am invoking, and self did not seem to work.

thanks - Steve

5
0 847
Article Yuri Marx · Jan 30, 2022 2m read

If you need create a upload REST API with IRIS is very simple. Do these procedures:

From Postman client you send a file

P.S.: It is a multipart form with a file type using "file" in the name. The request type is form/multipart. See the http request:

POST /image-analyzer/postFile HTTP/1.1
Host: localhost:52773
Content-Length: 213
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW

----WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="file"; filename="/C:/Users/yurim/OneDrive/Imagens/salesschema.
0
3 976
Article Robert Cemper · Jan 24, 2022 1m read

I have created a package that offers a utility to load a Global into JSON object and reverse     
to create a Global from this type of JSON object. Academic refers to the structure created.
Each logical node of the Global is presented separately with all its descendants.
Even if they don't contain any stored data.

1
0 390
Article Matthew Giesmann · Jan 28, 2022 2m read

We recently encountered an Embedded SQL issue while upgrading to IRIS 2021.1, and thought the issue and workaround might be interesting to share.

Key takeaway:  Host variables in an ORDER BY clause of an embedded SQL query that is inside of a method don't work as expected. IRIS versions starting with 2020.1 are affected. As a workaround, add the host variable to the Method's PublicList list and "new" them so the embedded query has access to them.

1
0 458
InterSystems Official Jeff Fried · Oct 26, 2021

It's come to our attention that the built-in license in the InterSystems IRIS and IRIS for Health 2021.1 Community Edition release is incorrectly set to expire on October 30, 2021.  

There is no impact to any production versions (the Community Edition is for development purposes), but developers will find that their instances stop running and should replace them with new ones.   For cases where replacing them is an issue, we have provided an override key.

I apologize for any inconvenience this may cause.

16
1 1555
Question Marcio Coelho · Jan 27, 2022

Hi....
I am trying to execute legacy routines from Cache 2018, into new environment with Iris 2021. I use new JDBC driver to make this connection, and change my java code to execute this legacy  routines. But I get this write error: <REMOTE EXECUTE INVALID WRITE> 
I changed the mnemonic routine to populate object and return this object to java. And the java class convert this object to json.
This is my simple classes used for this process, just to exemplification:
Java Class

package test;

import java.sql.SQLException;
import com.fasterxml.jackson.databind.JsonNode;
import com.
3
0 492
Question prashanth ponugoti · Jan 27, 2022

Hi Community

I have logged final generated json in the object script class using below statement

$$$LOGINFO("JSON = " _newMsg.Read())

where newMsg contains JSON stream, which contains nearly 1000000 + bytes.

In message viewer I am able to see Only some part of the json .

I want to capture all the json for my validation, how can i see total JSON in Management portal or any other source?

Thanks in Advance

3
0 504
Question Andre Wessels · Dec 10, 2021

There is a major  opportunity in South Africa for a complex WMS solution.

We have a long standing production warehouse management system, we need to partner with an organisation that has track record of such implementation in the past two (2) years.

 

Are there any partners out there that might be interested in a Joint Venture ?

1
0 471
Article Eduard Lebedyuk · Jan 26, 2022 4m read

If you're deploying to more than one environment/region/cloud/customer, you will inevitably encounter the issue of configuration management.

While all (or just several) of your deployments can share the same source code, some parts, such as configuration (settings, passwords) differ from deployment to deployment and must be managed somehow.

In this article, I will try to offer several tips on that topic. This article talks mainly about container deployments.

4
0 525
Article Yuri Marx · Jan 25, 2022 4m read

Sometimes it is necessary to transfer or migrate data and data schema from Postgres to IRIS. There are currently a few options for doing this, but the two most popular options are using DBeaver (https://openexchange.intersystems.com/package/DBeaver) or SQLGateway. The first will be demonstrated in this article and the second is presented in an excellent article by Robert Cemper, DB Migration using SQLgateway (https://community.intersystems.

1
1 1176
Question Eduard Lebedyuk · Jan 24, 2022

I'm using this Dockerfile to build .Net Gateway with my PEX BS. It works fine. If I change the image reference here to store/intersystems/iris-community:2021.2.0.617.0 in line 8 (so update from 2020.2 to 2021.2) it fails to build with:

KafkaConsumer.cs(4,20): error CS0234: The type or namespace name 'EnsLib' does not exist in the namespace 'InterSystems' (are you missing an assembly reference?) [/source/KafkaConsumer.csproj]

KafkaConsumer.cs(9,34): error CS0246: The type or namespace name 'BusinessService' could not be found (are you missing a using directive or an assembly reference?
1
0 265
Question Jason Bowen · Jan 17, 2022

Hello everyone,

I am having a challenge with the IRIS community version in Docker with wsl2. Host machine is Win 11 and the IRIS/Ubuntu image is Ubuntu-20.04 from running 'wsl -l -v.

I am not able to reach the WebPortal in IRIS nor the Super User port. docker ps -a = containers.intersystems.com/intersystems/iris-community:2021.1.0.215.3   "/tini -- /iris-main"   3 weeks ago   Up 26 hours (healthy)   0.0.0.0:1972->1972/tcp, 2188/tcp, 53773/tcp, 0.0.0.

5
0 469
Question Ming Zhou · Jan 21, 2022

I am looking for a way to find all properties defined in any given class through coding, including those inherited from parent class(s). In case of inherited properties, I would like to know from which class etc.

A related question: XML adaptor provides a way to export xml schema for a class. Is there a similar method for JSON adaptor to generate a JSON schema for a class?

Thanks in advance for your help.

5
0 835
Question Martin Staudigel · Jan 24, 2022

Hello Community,

to return data from the OnPage() method of a %CSP.Page I used to simply write out the value of a %DynamicArray e.g. via

write tResponse.%ToJSON()

and return $$$OK afterwards.

Large objects bigger than 4MB result in an exception when trying to create return values using this way. What is best practice for returning values as JSON, especially if values exceeding the capcity of the %String class are to be expected? I saw that it is possible to write data to a file with e.g.:

set tmp = tResponse.%ToJSON("/opt/home/tmp/test_stream.

3
0 401
Question Werner Noske · Jan 21, 2022

When I installed the IRIS 2021.2 Community Edition, I found some Globals, which seem to be set for the Intersystems Ensemble and DeepSee products. For me that is an annoying design error in those products and only confusing my developers.

As I do not want to use these, I tried to delete them, because they interfere in the list of globals mixed with our own Globals.

But for several of the EnsEdi Globals I get an error message telling me, they can't be deleted, because they are wrong.

Is there a way to get rid of them? Or do I have to wait for a new IRIS version?

5
0 326
Announcement Anastasia Dyubaylo · Jan 17, 2022

Hi Community,

Let's meet together at the online meetup with the winners of the InterSystems Datasets contest!

You'll have an opportunity to have a discussion with InterSystems Product Managers on new LOAD DATA functionality, Q&A on datasets, etc. Our winners' demo included!  

Date & Time: Thursday, January 20, 2022 – 11:00 EDT

2
0 337
Announcement Anastasia Dyubaylo · Jan 19, 2022

Hey Developers,

Watch as the presenter uses IKO to deploy the WebGateway, SAM, and InterSystems API Manager with the latest version of the InterSystems Kubernetes Operator: 

⏯ IKO: The InterSystems Kubernetes Operator (Version 3.0)

0
0 480
Question Mike Yackanich · Jan 18, 2022

Hi all,

I am testing asynchronous Bulk Data retrieve with a large EHR vendor. When I retrieve the bulk data, they are returning ndjson (CONTENT-TYPE of "application/fhir+ndjson; charset=utf-8"). If I attempt to process that content using JSON functions - I get

ERROR #5035: General exception Name 'Parsing error' Code '3' Data ''

For example, the following generates the error

s objArray={}.%FromJSON(quickStreamOut)

The error makes sense in that ndjson is not a valid json format (I assume at least).

But how then should ndjson be parsed in COS?

1
0 593
Article Jose-Tomas Salvador · Nov 9, 2021 3m read

For some years I missed being able to offer, to everybody interested in ObjectScript, a tutorial more or less complete, to start with ObjectScript. Something that could help more and make things easier to those new developers that come to our technology... something intermediate, halfway between the common "Hello World!", that doesn't really get you further, and the "Advanced Training", that is unaffordable because of lack of time,etc.

If there were something truly helpful not only as an introduction to the ecosystem, but as a starting point, as a boost, to really start to walk into ObjectScript and move forward by yourself... wouldn't that be awesome?

7
1 879
Question Dominic Chui · Oct 11, 2021

Does anyone know of a relatively quick and straightforward way of converting code written in the old dot scoping syntax with argumentless do (see here for reference: https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=RCOS_cdo_legacy) to the modern parentheses scoping syntax? It's not too bad to do it by hand, but it's also easy to make a mistake and leave a "quit" in an if statement by accident for example.

E.g.

do:someCondition

.set value = do ##class(ExampleClass).ExampleFunctionThatReturnsValue()  quit:'value

do ##class(ExampleClass).

10
1 705
Question Daniel Castro · Jan 11, 2022

Hi !

 I am new to the language and I am trying to read some json data from a government site (it is public data).

The address is: https://apisidra.ibge.gov.br/values/t/1736/n1/all/v/all/p/all/d/v44%202…

Here is some data sample:

[{"NC":"Nível Territorial (Código)","NN":"Nível Territorial","MC":"Unidade de Medida (Código)","MN":"Unidade de Medida","V":"Valor","D1C":"Brasil (Código)","D1N":"Brasil","D2C":"Variável (Código)","D2N":"Variável","D3C":"Mês (Código)","D3N":"Mês"},{"NC":"1","NN":"Brasil","MC":"30","MN":"Número-índice","V":"0.
15
0 920