#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.

Question Daniel Bertozzi · Mar 27, 2024

Hello

I am trying to convert some old rest classes using the OpenApi spec (e.g. %REST.Impl)

Say I want to return a 401 in my impl.cls for api and I can define the status code as follows, e.g.

 Do ..%SetStatusCode("401")
 Do ..%SetContentType("application/json")

However the api client will see this as 401 OK which is not right.

In the past, I could just create a rest class that extends from %CSP.REST and return as follows:

Set%response.Status = ..#HTTP401UNAUTHORIZED

This will return 401 Unauthorized, which what I expect to see reported in the api client.

3
0 277
Question Heru.H · Jun 20, 2023

When connectiong to IRIS from UBUNTU LTS 18.04, I  got this error message:

ErrorException: odbc_connect(): SQL error: [unixODBC][Iris ODBC][State : S1000][Native Code 417]

[libirisodbcur6435.so]

Access Denied, SQL state S1000 in SQLConnect 

I'm using "ODBC-2022.1.0.209.0-lnxubuntu1804x64.tar.gz" downloaded from

"https://github.com/intersystems-community/iris-driver-distribution/tree…"

and folowing guide from

https://community.intersystems.com/post/intersystems-iris-laravel-odbc

Here's my odbc.ini

[ODBC Data Sources]
TrakCare= TrakCare

1
0 545
Article Daniel Aguilar · Mar 22, 2024 3m read

Hi Community!

Do you usually work with automated tasks? Then let me share with you a pair of tips ;-)

Tip 1: How to know when my automated task will end (approximately)

Do you have an automated task that is running but you are not sure when it will end and you are at the crossroad of take the decision to stop it or wait and you are not sure if could be better wait for 5 o 10 minutes?

Here you are a tip to check when your task will finish (approximately).

For this example I have created a task with this code:

4
2 352
Article Flávio Lúcio Naves Júnior · Mar 24, 2024 5m read

Introduction

In the modern digital age, securing applications, particularly those handling sensitive health data, is paramount. The confidentiality, integrity, and availability of such data are crucial, necessitating robust security measures. Two-factor authentication (2FA) stands out as a critical enhancement in safeguarding access, adding an extra layer of security beyond just passwords. Recognizing the significance of this feature, InterSystems provides built-in support for 2FA in its database solutions. This tutorial aims to guide you through the process of configuring two-factor authentication in your InterSystems environment, ensuring that your data remains secure and accessible only to authorized users.

3
3 767
Question Sylvie Greverend · Mar 29, 2024

I built my rest api with ^%REST and update with CreateApplication.
Postman works fine and I suppose production server will work fine as UI and rest api will be on the same domain, but for now in dev, I need to have access from my local to the Iris rest api. I have a CORS error.

I do not know how to configure my swagger file to have either Parameter HandleCorsRequest=1 or <route Cors=true in the generated displ,cls.

3
0 403
Article Veerarajan Karunanithi · Feb 27, 2024 4m read

What is Unstructured Data?
Unstructured data refers to information lacking a predefined data model or organization. In contrast to structured data found in databases with clear structures (e.g., tables and fields), unstructured data lacks a fixed schema. This type of data includes text, images, videos, audio files, social media posts, emails, and more.

Why Are Insights from Unstructured Data Important?
According to an IDC (International Data Corporation) report, 80% of worldwide data is projected to be unstructured by 2025, posing a significant concern for 95% of businesses. Forbes Article
 

3
0 502
Article Luis Angel Pérez Ramos · Mar 27, 2024 6m read

As you have seen in the latest community publications, InterSystems IRIS has included since version 2024.1 the possibility of including vector data types in its database and based on this type of data vector searches have been implemented. Well, these new features reminded me of the article I published a while ago that was based on facial recognition using Embedded Python.

Introduction

2
2 571
Question Rebecca Johnson · Mar 29, 2024

Attempting to setup an outbound (I'm querying out, not querying the IRIS db) SQL connection. I am connecting to a PostgreSQL database, name "hl7interface".

I have setup the odbc.ini file at /usr/local/etc with the following contents:

[HL7Interface2]
Driver = PostgreSQL
Description = HL7 Interface DB
Servername = localhost
Port = 5432
Protocol = 7.4-1
#userName = postgres
#Password = <real pw here>
Database = hl7interface
ReadOnly = no
ServerType = Postgres

I have set the /etc/odbcinst.ini file with the location of the PostgreSQL driver:

6
0 315
Question Phillip Wu · Mar 21, 2024

I want to write a routine [I think this is the correct Intersystems term] call STOPALLPRODUCTIONS.

I want to be able to call the routine:

DO ^STOPALLPRODUCTIONS

Routines are described here:

https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cl…

The code will be something like:

zn "namespace1"

set status=##class(Ens.Director).StopProduction()

set status=##class(Ens.Director).GetProductionStatus()

WRITE "namespace1 production is ",$CASE(status,

              0:"Running",1:"Stopped",2:"Suspended",

              3:"Troubled")

zn "namespace2"

3
1 247
Announcement Laurel James (GJS) · Mar 27, 2024

I'm excited to let you know that we at George James Software have released some new VS Code training courses. Following the success of our Basics course we have expanded our offering to help InterSystems users looking to move to VS Code improve their knowledge. Here's what's on offer...Studio to VS Code Migration - The Basics (2.5 hours)An interactive training webinar for those who have never used VS Code before and want hands-on help in getting set up and explaining the basics of how it works.Upcoming dates: Wed, April 17th + Wed, May 15thPrice: $450 / £450 / €450 per personVS Code for

2
0 208
Announcement Eduard Lebedyuk · Mar 28, 2024

Hello Community,

I'd like to share with you our article with @Regilo.Souzaon AWS Amazon blog Automating application-consistent Amazon EBS Snapshots for InterSystems IRIS databasesOur team has created this step-by-step instruction to create application-consistent snapshots for InterSystems IRIS databases. In this article, we outline how to automate pre-scripts to pause I/O and flush buffer to disk and post-scripts to thaw I/O, as shown in the following figure:

Architecture diagram for automating application-consistent EBS Snapshots for InterSystems IRIS databases.

0
0 286
Announcement Rob Tweed · Sep 28, 2022

I'd like to announce the release of something really rather interesting - revolutionary in fact.  That may sound like hyperbole, but I don't think you'll have seen anything quite like this, or even thought it possible!

We've pushed out a new JavaScript/Node.js module named glsdb which you can read all about here in detail:

https://github.com/robtweed/glsdb

However, for the purposes of this announcement here, I just want to focus on one part of glsdb: its APIs that abstract IRIS (or Cache) Classes as equivalent JavaScript Objects.

8
1 470
Question Kim Trieu · Mar 26, 2024

Using VECTOR_COSINE() in SQL query to perform a text similarity search on existing embeddings in a %VECTOR column.

Code is below.

Commented out sql query returns this error: SQLCODE: -29  Field 'NEW_EMBEDDING_STR' not found in the applicable tables^ SELECT TOP ? maxID , activity , outcome FROMMain .AITest ORDER BY VECTOR_COSINE ( new_embedding_str ,

Sql query as written returns ERROR #5002: ObjectScript error: <PYTHON EXCEPTION> *<class 'OSError'>: isc_stdout_write: PyArg_ParseTuple failed!

10
0 302
Announcement Rob Tweed · Mar 26, 2024

You may have heard about our mg-dbx-napi interface for IRIS which provides insanely fast access from Node.js.  If you've been following recent developments in the server-side JavaScript world, you'll be excited to know that mg-dbx-napi also works with Bun.js, the latter proving to be significantly faster than Node.js for many/most purposes.

Of course, if you're a Node.js user, you'll probably wonder how mg-dbx-napi compares with the Native API for Node.js that is included with IRIS.

With all that in mind, we've created a Github repository: mg-showcase

8
2 337
InterSystems Official Andreas Dieckow · Mar 26, 2024

InterSystems introduced this feature many years ago and a time when using Public Key Infrastructure was not yet widely used. Creating materials for use with Public Key Infrastructure is now widely available, and InterSystems is observing a decline in using the InterSystems PKI. In addition, investments would be required to securely use it. The IRIS PKI documentation stated for years:

The InterSystems PKI is for testing purposes only. Do not use it in a production setting.

As of today March 26, 2024, the InterSystems PKI is now deprecated.

The product documentation has been updated and now states:

0
2 255
Question Bruce Borchorst · Mar 25, 2024

I am exploring a way to make IRIS an immutable system where the production/operation IRIS is never changed. Changes are only made in Development, and then the "version" is copied to production/operation and stated.

For this to work, I will need data (objects) on a file share and the IRIS system on different systems. When the "new" version spins up, it will use the latest data.

I do not know if I can or how to separate "object data" from classes and code. 

1
0 192
Article Adel Elsayed · Jan 8, 2024 9m read

InterSystems IRIS Document Database (DocDB) offers a flexible and dynamic approach to managing database data. DocDB embraces the power of JSON (JavaScript Object Notation), providing a schema-less environment for storing and retrieving data.

It is a powerful tool, enables developers to bypass a ton of boiler plate code in interaction with existing applications, serialization, pagination and integration. the seamless flow of DocDB with Interoperability Rest services and operations, gives a big leap in API production and management.

for full DocDB documentation Here. in the context of this article i will showcase a use case in which DocDB will make a perfect fit.

1
0 841
Question Richard Rayburn · Mar 22, 2024

In cache studio there are features, dialog boxes, that help map data from a global to class properties.
I have used %CacheSQLStorage quit a bit, or have in the past, to map globals to classes.

I haven't been able to find a similar feature in VisualStudio.
Do I need to upgrade to IRIS to be able to use VisualStudio to map global properties to classes?

Thanks for your time,
Richard

2
0 223
Article Hiroshi Sato · Mar 21, 2024 2m read

InterSystems FAQ rubric

Properties defined in list collections (Property XXX As list of %String;) can be manipulated using SQL functions: $LISTBUILD(), $LISTFROMSTRING().

For each SQL function, please refer to the document page below.

InterSystems SQL Reference - $LISTBUILD() [IRIS]
IRIS SQL Reference - $LISTFROMSTRING() [IRIS]
Caché SQL Reference - $LISTBUILD()
Caché SQL Reference - $LISTFROMSTRING()

/// Class definition exampleClass ISJ.ListOfData Extends%Persistent
{
    Property listdata As list Of %String;
}

An example of SQL statement execution is as follows. 

1
1 320