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

Question Marco Blom · Jun 20, 2023

When trying the Iris Nodejs Quickstart I do get the following message in the source code:

Could not find a declaration file for module 'intersystems-iris-native'. 'C:/Nodejs Quickstart/Solutions/intersystems-iris-native/index.js' implicitly has an 'any' type.
Try `npm i --save-dev @types/intersystems-iris-native` if it exists or add a new declaration (.d.ts) file containing `declare module 'intersystems-iris-native';`
ts(7016)
module"C:/Nodejs Quickstart/Solutions/intersystems-iris-native/index"
 

 the necessary npm modules are installed...

this suggested command does not

1
0 381
Question Eddy Gallo · Aug 26, 2024

I have this code and I need to send 

Set tRequest= ##class(Testing.Messages.GatewayCreateFacilityRequest).%New()

Set tRequest.facilityCode ="VINUSE"

 Set tResponse = ##class(Testing.Messages.GatewayCreateFacilityResponse).%New()

need to send a request to a new server:

Server: ECR10 

Namespace: ECR

Business Service: Healthix.Common.Verato.Gateway.Service.HubQueryService

set tResponse = ##class(Testing.Gateway.Service.HubQueryService).%New().CreateFacility(tRequest)

How do I add code to send it to the ECR10 server?

5
0 198
Article Yuri Marx · Sep 13, 2022 3m read

Samba is the standard for file services interoperability across Linux, Unix, DOS, Windows, OS/2 and other OS. Since 1992, Samba has provided secure, stable and fast file services for all clients (OS and programs) using the SMB/CIFS protocol. Network administrators have used SAMBA to create shared network folders to allow company employees to create, edit and view corporate files as if they were on their computers locally, when these files are physically located on a network file server. It is possible to create a network folder in Linux and see it as a shared folder in Windows, for example. 

Cu

4
3 1910
Question Scott Roth · Aug 23, 2024

Instead of building a BP to execute stored procedures just to insert the data, I figured I would give Linked Stored Procedures a try since all I need to do is insert the data. I have proved in our MS SQL Development environment that it is possible, so I through I could just repoint the Linked Stored Procedure 

set hdbc=$$GetJConnection^%apiGTW("xxxxx")

to the test environment. But when I made the changed in VSCode and compiled the Stored Procedure disappeared from the SQL view in the Management Portal.

So can we not simply update the connection string to point to a different MS SQL Connection?

2
0 173
Article Mihoko Iijima · Feb 23, 2024 5m read

I have challenged to create a bot application using Azure Bot that can retrieve and post data to IRIS for Health.

 

A patient's data has already been registered in the FHIR repository of IRIS for Health.

The patient's MRN is 1001. His name is Taro Yamada. (in Japanese :山田 太郎)

This bot can post new pulse oximeter readings as an observation resource linked to the patient.

2
2 544
Article Sylvain Guilbaud · Jul 8, 2024 2m read

For practical reasons, it may be desirable that after a Linux server restart, the IRIS instance is automatically started. 

Below you will find the steps to follow to automate the startup of IRIS during a reboot of the Linux server, via systemd :

1. Create an iris.service file in /etc/systemd/system/iris.service containing the following information

[Unit]
Description=InterSystems IRIS Data Platform
After=network.target

[Service]
Type=forking
User=irisusr
ExecStart=/usr/bin/iris start iris
ExecStop=/usr/bin/iris stop iris quietly
Restart=on-failure
RemainAfterExit=yes

[Install]
17
5 1005
Article Hiroshi Sato · Aug 22, 2024 1m read

InterSystems FAQ rubric

The following code downloads https://www.intersystems.com/assets/intersystems-logo.png and saves the file as c:\temp\test.png.

You need to define an SSL configuration called SSLTEST before executing this code

ClassMethod download() As%Status
{
    Set sc = $$$OKSet httprequest=##class(%Net.HttpRequest).%New()
    set httprequest.Port = 443set httprequest.Https = 1set httprequest.SSLConfiguration = "SSLTEST"Set httprequest.Server="www.intersystems.com"Do httprequest.Get("/assets/intersystems-logo.png")
    Set httpresponse=httprequest.Htt
0
3 217
InterSystems Official Carmen Logue · Aug 21, 2024

InterSystems IRIS Adaptive Analytics version 2024.1.3 is now available from the InterSystems Software Distribution  page.  This release includes AtScale 2024.1.3, and an updated User Defined Aggregate Function (UDAF) file.  This release includes and the following new modeling and BI capabilities:

  • Formatting of calculation output based on on the field input rather than just the format defined on the calculation.  This is particularly useful for calculations that can't have a standard output format, such as year-over-year growth in dollars, euros, or time.
  • Support for the following MDX
0
0 159
Question Bertrand Cayzac · Aug 21, 2024

Hello, 
A customer whose Ensemble code contains lots of hardwired API URL calls is running into issues because of the IRIS instance name insertion in the URL path since IRIS v 2024.1.

What are the best solutions to revert to the previous URL path or automatically and dynamically rewrite this path (Apache mod_rewrite ? Proxies ?). Any examples ? 
Thanks for your help, 
Bertrand Cayzac

0
0 118
Question Daniel Goerke · Aug 19, 2024

Hello everyone,

I'm currently working on getting familiar with OAuth2, following this article. Since Part 2 involves using PKI, I decided to implement it as outlined in the article. However, I've run into an issue that I can't seem to resolve, and my searches on Google haven't yielded any useful results.

Here's a brief overview of what I've done so far:

Configuring the PKI Server:

  • Navigated to: System Administration > Security > Public Key Infrastructure > Configure Local Certificate Authority Server.
  • Filled in all the required fields and saved the configuration.

As far as I can tell, this

1
0 170
Question Norman W. Freeman · Aug 14, 2024

I use the following code to loop trough all globals : 

set name=""for
{
   set name=$order(^$GLOBAL(name))
   quit:name=""
   write name,!
}

However this is really slow : about 1second per node. 

I ran debugger, and it seems most of the time is spend in "%SYS.GD Visible" function. There is a comment that says : 
"Sees if globals in dataset are visible to our namespace"
This function loop on a global named ^mtemp which contains lot of records (10K or more).
I have cleared global, hoping it has been filled by another process but it's not (it seems to be filled by %SYS.GD)

Why is it so slow,

5
0 304
Question Bradley Collins · Aug 18, 2024

Dear All,

I am currently part of a team that is developing an application using Microsoft PowerApps as the front end and IRIS as the backend.  Effectively that frontend screens, which are house and an Azure serve, call a series of REST interfaces exposed by IRIS from a physical Microsoft server.  During the development stage we have not had any security in place but now we need to secure the application using a single sign on.  PowerApps relies on Microsoft Entra for its security both LDAP and OAuth.  Has anyone in the community connected IRIS to Microsoft Entra? 

I have managed to register

2
0 345
Article Keren Skubach · Aug 19, 2024 4m read

Accessing an Azure cloud storage to upload/download blobs is quite easy using the designated %Net.Cloud.Storage.Client class API methods, or using the EnsLib.CloudStorage.* inbound/outbound adaptors.

Note that you'll need to have the %JavaServer External Language Server up and running to use the cloud storage API or adaptors, since they both use the PEX framework using the Java Server.

Here is a quick summary:

Azure Blob Storage is accessed using a connection string that looks similar to this:

DefaultEndpointsProtocol=https;AccountName=abcdefscleanisr;AccountKey=n3mWskdjgfhklsghdfjaskhgkjdfizqMWJ5
0
3 592
Announcement Andreas Schneider · Sep 8, 2021

Dear ladies and gentlemen, in the last month I've improved my Tool Caché Monitor... but first: the name

The name Caché Monitor was chosen to reflect the close integration of the tool with the Caché database. The established name Intersystems Caché will likely be completely replaced by InterSystems IRIS Data Platform in the foreseeable future I think. So a rebranding step became necessary. In order to be less closely tied to a product name in the future, a new name has been chosen to be more neutral: SQL Data Lens

4
1 671
Article Timothy Leavitt · Feb 21, 2024 9m read

Suppose you have an application that allows users to write posts and comment on them. (Wait... that sounds familiar...)

For a given user, you want to be able to list all of the published posts with which that user has interacted - that is, either authored or commented on. How do you make this as fast as possible?

Here's what our %Persistent class definitions might look like as a starting point (storage definitions are important, but omitted for brevity):

Class DC.Demo.Post Extends%Persistent
{

Property Title As%String(MAXLEN = 255) [ Required ];Property Body As%String(MAXLEN = "") [
3
5 558
Question Jack Liu · Aug 15, 2024

iris | [ERROR] Command "iris start IRIS quietly" exited with status 256
iris |
iris |
iris |
iris | *** Recovery started at Thu Aug 15 05:47:48 2024
iris | Current default directory: /usr/irissys/mgr
iris | Log file directory: /usr/irissys/mgr/
iris | WIJ file spec: /usr/irissys/mgr/IRIS.WIJ
iris | Recovering local (/usr/irissys/mgr/IRIS.WIJ) image journal file...
iris | Starting WIJ recovery for '/usr/irissys/mgr/IRIS.WIJ'.
iris | 0 blocks pending in this WIJ.
iris | Exiting with status 3 (Success)
iris | 08/15/24-05:47:48:778 (828) 3 [Utility.Event] Error while moving data directories ERROR #5001:

2
0 241
Article Megumi Kakechi · Aug 15, 2024 3m read

InterSystems FAQ rubric

Temporary globals stored in the IRISTEMP/CACHETEMP databases are used when a process does not need to store data indefinitely, but requires the powerful performance of globals. The IRISTEMP/CACHETEMP databases are not journaled, so using temporary globals does not create journal files.

The system uses the IRISTEMP/CACHETEMP databases for temporary storage and are available to users for the same.

For more information about temporary globals and the IRISTEMP database, see the following document:
Temporary Globals and the IRISTEMP Database

The globals used as temporary are:

1.

0
6 437
InterSystems Official Bob Kuszewski · Aug 15, 2024

Alert: Database Corruption with Multi-Volume Databases after Truncation

InterSystems has corrected a defect that can cause database corruption or <DISKHARD> errors with multi-volume databases under extremely rare circumstances. Only databases that have been truncated are at risk.

The defect exists in the following products and any InterSystems offerings based on them:

No HealthShare Solutions products are affected by this

0
1 189
InterSystems Official Bob Kuszewski · Aug 14, 2024

The first developer preview of InterSystems IRIS 2024.3 and InterSystems IRIS for Health 2024.3 has been posted to the WRC developer preview site.  Containers can be found on our container registry and are tagged latest-preview.

This is a very early build in the release cycle and there aren’t any “highlight” worthy features that are complete.  They’ll start to arrive in future preview releases.

Initial documentation can be found at these links below.

Availability and Package Information

This release comes with classic installation packages for

0
0 341
Question Hannah Sullivan · Aug 14, 2024

If anyone has experience debugging Embedded Python or has insight into why an ObjectScript method when called from a Python method would not work but would work when called directly via ObjectScript or in a Python shell, your help would be appreciated! 

We have an ObjectScript ClassMethod called GetTemplateString() which takes in a templateName of String type and uses the template name to get the template object, access the Code, and read the code into a templateString. The string version of the Code is returned.

ClassMethod GetTemplateString(templateName As%String) As%String
{
    set templ
2
0 182