#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 Adam Raszkiewicz · Jul 26, 2024

I was watching this video about IRIS and GitHub and all is clear to me how it works and how code from each branch is getting deployed to each IRIS environment but the process to deploy is manual. My question is how can I, if possible, to utilize gti-source-control from GitLab CICD pipeline to deploy code automaticaly after PR approval instead going to the Git UI?

Thanks

2
0 576
Article Tomoko Furuzono · Jul 25, 2024 1m read

InterSystems FAQ rubric

To compile class routines including the mapped modifier, specify the compiler modifier "/mapped=1" or "/mapped". For example, do the following:

[Example 1] Get the class list and compile 

do$System.OBJ.GetClassList(.list,"/mapped")
 // build your classes starting from .listdo$System.OBJ.Compile(.list) 

[Example 2] Compile all classes 

do$system.OBJ.CompileAll("/mapped") 
1
0 230
Question Anya Mittal · Jul 19, 2024

Hi all,

I have some .vm (Velocity Templating Language) files that I'd like to be able to load into IRIS with the $System.OBJ.Load(filename) command, but it seems that only accepts XML files.

I've tried adding import/export logic in my custom studio document that will wrap the velocity content inside an XML document and vice versa, I've changed the existing Velocity files to have the extension .xml and be wrapped in XML, and I've included a .dtd file for them to reference. However, this doesn't seem to work.

Does anyone have suggestions for how can I make my custom studio document work correctly

4
0 214
Question Dmitry Maslennikov · Jul 29, 2024

Started some work using WorkMgr, but then I noticed, that it stuck and does not get any responses from workers anymore

And I found that messages log contains logs about dead processes, why WorkMgr daemon did not restart died processes?

How to restart them without restarting IRIS

07/29/24-15:10:59:589 (856) 2 [Generic.Event] Process terminated abnormally (pid 949, jobid 0x0002001d)
07/29/24-15:10:59:603 (856) 0 [Generic.Event] cleaned dead job, pid: 949, jobid 0x0002001d
07/29/24-15:10:59:603 (856) 2 [Generic.Event] Process terminated abnormally (pid 951, jobid 0x0001001f)
0
0 174
Article Theo Stolker · Feb 16, 2024 5m read

Since my initial question on ordering json properties a few things have happened.

Let me recap the issue at hand:

  • In the FHIR specification, properties are listed in a certain order, for example, see https://www.hl7.org/fhir/patient.html#resource
  • When you serialize resources to XML, the resulting document elements are ordered as defined in the specification.
  • On the other hand, json objects returned from the IRIS for Health FHIR Repository will for example normally have the "id" as the last property, given that new properties are appended.

For me as a developer, this is annoying, even though I

1
1 475
Article Dmitry Maslennikov · Dec 3, 2021 1m read

Not so while ago GitHub introduced, ability to very quickly run VSCode in the browser for any repository hosted there. Press the . key on any repository or pull request, or swap .com with .dev in the URL, to go directly to a VS Code environment in your browser.

github dev

This VSCode is a light version of the Desktop version but works entirely in Browser. And due to this, it has a limitation for extensions which was allowed to work this way. And let me introduce the new version 1.2.1 of VSCode-ObjectScript extension which now supports running in Browser mode.

6
3 1340
Question Ali Chaib · Nov 2, 2023

Hello Intersystems Community,

I'm currently facing an issue with message purging in my Healthcare environment, and I'm seeking your valuable insights and guidance to resolve it.

I've configured a purge task to delete messages older than 30 days, and when I run this task immediately, it doesn't delete anything,

I changed the 'Run task as this user:...', I thought it could be an access issue.. But nothing happened, I even changed the priority, same thing.. 

however when I uncheck the "Keep Integrity" option, it cleared all messages, regardless of the retention period!!..

4
0 556
Article Laurel James (GJS) · Jul 25, 2024 4m read

An effective source control solution allows organizations to manage complex codebases, facilitate seamless collaboration within development teams, and streamline deployment processes.

Sonic Healthcare, a leading provider of pathology, radiology, general practice, and corporate medical services, has significantly enhanced visibility and control over its complex environment by implementing Deltanji source control. The tight integration Deltanji provides with InterSystems IRIS and IRIS for Health has been central in achieving these improvements.
 

Sonic Healthcare's Set Up 

Sonic Healthcare

0
0 274
Question Jason Jones · Jul 15, 2024

I am trying to log certain program data in my ObjectScript REST class, to track down a bug I have.I am comparing two values at runtime, and one result does one thing, and another a different thing.Since this is a REST API class, I have no way of seeing in real time what the value is to debug.I cannot simply run the method in debug in Studio as it will not run properly being a REST class method, nor have the correct incoming header data to correctly replicate what is happening in the API at runtime when being hit by client apps.

6
2 265
Article John Murray · Jul 24, 2024 2m read

I encountered this quirk when investigating an unrelated issue affecting how Studio projects are handled in VS Code.

When you add the top level of the webapp to a %Studio.Project this inserts a %Studio.ProjectItem with a .DIR suffix. For example, if Studio or VS Code is connected to the USER namespace and you add the /csp/user webapp to a project the new ProjectItem name is "csp/user.DIR".

When you export this project to XML from the project's context menu in Studio, or by calling the %Studio.Project.Export classmethod, the file contains the project definition plus all of the files in the

2
0 233
Question Eric Mariasis · Jul 23, 2024

When I try to run my app as a Docker Container locally it works fine, but I attempted to create a Hugging Face Space to try to deploy my app to and when I run with the Docker SDK selected I run into the following IRIS error report.
Has anyone seen something like this before?
 

Starting Control Process 
Global buffer setting requires attention. Auto-selected 25% of total memory. 
Allocated 105698MB shared memory 95166MB global buffers, 1020MB routine buffers 
This copy of InterSystems IRIS has been licensed for use exclusively by: 
Too many Cores (24) for InterSystems IRIS Community License.
6
0 305
Question Stefan Cronje · Jul 18, 2024

Hi folks,

We are in the process of migrating from Ensemble to IRIS.

After the migration I would like to find all usages of deprecated classes and methods in all of our code. This is to align with the changes in package like %SYSTEM.SQL for example.

Is there an easy way to do this, or maybe a tool that can assist?

Thanks.

7
1 374
Question Eric Mariasis · Jul 23, 2024

I'm trying to leverage the workflow from this repo so I can create an online demo for my project: https://github.com/intersystems-community/iris-google-run-deploy-templa….
I saw that we need to ask for the service account token because I mistakenly tried to obtain my own and obviously was getting permission errors.
So how should I go about getting the token? Thanks!

0
0 78
Article Iryna Mykhailova · Jul 22, 2024 12m read

One good thing about COVID-19 is that it taught people that online work and study are possible. I remember a week before the lockdown started, everyone said that working online was impossible, not secure, etc. And what do you know, it all became possible and "secure" in the blink of an eye. As with everything, it depends on whether a person is capable of organizing his or her day and their work or study attitude. Thus, I became a great believer in online education. As an associate professor who teaches databases, I find it beneficial to my schedule and students. One thing that studying online brings is flexibility. Another one is accepting third-party courses to grant credits to my students 😉 

Considering that I'm teaching the basics of IRIS, I thought a new course, Getting Started with InterSystems IRIS for Coders, could be a relevant addition to my course. Therefore, I decided to follow the new Learning Path and see how it corresponds to my Syllabus and how many ECTS credits I can give for finishing it.

2
2 545
Article Katherine Reid · Apr 24, 2019 5m read

The %Net.SSH.Session class lets you connect to servers using SSH. It's most commonly used with SFTP, especially in the FTP inbound and outbound adaptors.

In this article, I'm going to give a quick example of how to connect to an SSH server using the class, describe your options for authenticating, and how to debug when things go wrong.

Here's an example of making the connection:

Set SSH = ##class(%Net.SSH.Session).%New()
Set return=SSH.Connect("ftp.intersystems.com")​

This creates a new connection, and then connects to the ftp.intersystems.com SFTP server on the default port.

4
2 6774
Question Masayuki Tada · Aug 23, 2022

Hi,

I try SFTP connect by ObjectScript.
But occurred this error. Can't connect by SFTP key-pair authentication.

:ERROR #7510: SSH Error '-18': SSH Error [80101012]: Username/PublicKey combination invalid [80101012] at Session.cpp:458,0

Key pair was generate this way.
ssh-keygen -m pem -f ~/.ssh/id_rsa
"id_rsa" and "id_rsa.pub" is generated.
Passphrase is empty.

sftp command is connect successful.
ex.
sftp -i .ssh/id_rsa sftpuser@localhost

And other SFTP client is connect successful too.
ex. Fillezilla.

And password authentication is successful too.

ObjectScript code is this.

ClassMethod SFTPDir() As %Status
11
0 2005
Question Kurro Lopez · Jul 7, 2024

Hi all,

Some days ago, I've seen a youtuber talking about how to create a neural network (sorry, is in spanish)

In short, it uses the neural network to learn how to convert degrees Celsius to degrees Fahrenheit.
Degrees Fahrenheit = (degrees Celsius × 9/5) +32
In this video, he uses Python to create the neural network, where he creates a table with the values ​​of degrees Celsius and degrees Fahrenheit.
Then he does 1000 trainings to the model that he has created, when he consults the prediction at a value that is not in the table that he has used to train, it gives a correct (or fairly close)

4
0 231
Article Murray Oldfield · Jun 19, 2024 14m read

I have created some example Ansible modules that add functionality above and beyond simply using the Ansible builtin Command or Shell modules to manage IRIS. You can use these as an inspiration for creating your own modules. My hope is that this will be the start of creating an IRIS community Ansible collection.

I expect some editing and changes during

1
2 692
Question Robert Driver · Jul 21, 2024

I installed this to 'try' to learn the Ensemble (Interoperability module). I selected the Developer install, which ran without issue. I have all of the tray options, and, they run without issue. However, when I try to simple 'create' a new BPL or DTL, I get the 5002 <PROTECT> error-

*
I have no idea if there was a problem with the install, or if there are more things I need to do, to get this application to work. Any suggestions would be welcome.

6
0 293
Question Eric Mariasis · Jul 21, 2024

I'll preface this by saying I'm not sure if I found a bug or because I'm somehow misusing IrisVectorStore.
Basically I have code from the regular llama-index module working in my Python project which has SimpleDirectoryReader objects similar in nature to the demo I mentioned (https://github.com/intersystems-community/iris-vector-search/blob/main/…). And I have other code working that can add new users to a SQL table in Iris.
I tried to use IRISVectorStore in a manner similar to the below excerpt from the demo code but I just changed the table name to the name of my user

2
0 176
Question Undefined Undefined · Jul 16, 2024

After performing Concurrent External Backup and restarting the instance, if I want to perform an incremental backup of Concurrent External Backup again.

Should I redo the following steps?

  1.  Do CLRINC^DBACK("QUIET")
  2.  Set x=$$BACKUP^DBACK("","E","Dirty external backup - incrementals must be applied.","","","")
  3. Set x=$$BACKUP^DBACK("","I","Nightly","test.bck","N","bck.log","QUIET","N","Y")
1
0 142
Question Eric Mariasis · Jul 18, 2024

I am a first time Python Contest participant and am interested in potentially implementing the community idea found in https://ideas.intersystems.com/ideas/DPI-I-542 if it is something relevant to Python.
Would anyone be able to shed a bit of light on what the desired outcome of that idea being implemented is? There were a lot of upvotes on that idea but there wasn't very much information in it. Thanks!

2
0 138
Article Maxim Gorshkov · Feb 14, 2024 4m read

The invention and popularization of Large Language Models (such as OpenAI's GPT-4) has launched a wave of innovative solutions that can leverage large volumes of unstructured data that was impractical or even impossible to process manually until recently. Such applications may include data retrieval (see Don Woodlock's ML301 course for a great intro to Retrieval Augmented Generation), sentiment analysis, and even fully-autonomous AI agents, just to name a few!

In this article, I want to demonstrate how the Embedded Python feature of IRIS can be used to directly interface with the Python OpenAI

4
6 854
Article Jeffrey Drumm · Jul 17, 2024 2m read

I found myself in the not-so-comfortable situation of working with a Linux system on which someone had accidentally disabled user access to the Linux shell. HealthConnect was running, servicing hundreds of interfaces. To resolve the access issue, though, we needed to bring the host down for the application of a fix.

Without the shell, the iris command is not available to control the instance, so we were faced with the potential of shutting down the server ungracefully. We wanted to avoid that if possible ...

The ^SHUTDOWN routine was historically an option for shutting down Cache, but you need

7
3 708