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

Article Megumi Kakechi · Nov 14, 2024 1m read

InterSystems FAQ rubric

By default, the order of columns in a table is determined automatically by the system. To change the order, explicitly set the order for each property using the property keyword SqlColumnNumber when defining the class.

Example:

Property Name As %String [SqlColumnNumber = 2];

Please see the documentation below.

SqlColumnNumber

If you want to change the SQL table name, specify SqlTableName. If you want to change the column name (field name), specify SqlFieldName.

Both apply only to persistent classes.

0
0 224
Question Fred Gustafsson · Oct 22, 2024

I just restarted an AWS instance that have been dormant for 6 months (license still valid) only to find that the web application on there doesn't work and that I cannot connect to the management portal. I can however connect to the web gateway fine but it reports the "Server is currently unavailable". 

Grateful any for any advice.

Fred Gustafsson

2
0 474
Question omer · Oct 1, 2024

Hello everyone, 
so lets say i have the following:

Hello
Q
say(arg)
    w arg
 Q


and i am trying to execute it by its name such as:


s a = "say^hello"

*execute the name inside a*
 

now I know for a fact that if say were written without any argument then do @a would work!

but I can I pass an argument in this case?
I don't want to use Xecute because I am in need of really high performance code.
 

10
1 317
Question David Hockenbroch · Nov 8, 2024

I'm having an issue with sending SMTP requests from a specific Microsoft 365 account to Gmail accounts. We can use other Microsoft 365 accounts, but something about this one specific account sending to Gmail fails. The error we get is just telling us that sending to the user xxxxx@gmail.com failed. In order to troubleshoot that, I'm looking for more detail than that.

4
0 195
Question Jani Hurskainen · Oct 30, 2024

I assume IPM manifest tag UnitTest is tightly coupled with the standard unit test framework, right? However we have our own one that predates the standard one and we are not going to switch.

I think I need to import the unit test cases and then be able to run a single class method for the test run. Any ideas how this would be possible?

9
0 190
Article Daniel Aguilar · Nov 11, 2024 4m read

Hi Community,

I want to share with you the lastest app that I have uploaded to the Open Exchange "IrisGoogleChat". 

IrisGoogleChat is a utility for InterSystems IRIS that allows seamless message integration with Google Chat using Cache ObjectScript. This application provides a set of tools to configure Google Chat Channels, create messages powered by moods generated with AI and send them to a Google Chat Channel.

0
1 186
Article Rolano Rebelo · Nov 11, 2024 3m read

🌍 Inclusion & Innovation in Education 🌍
Our project reimagines learning for all students, with a focus on accessibility and interactive experiences. Built with the goal of making education engaging and inclusive, the tool is designed to support students of all abilities in learning complex material in an intuitive way.

💡 What It Does
This educational app transforms lesson presentations into interactive study sessions:

0
1 260
Article Iryna Mykhailova · Nov 10, 2024 2m read

If you like Java and have a thriving Java ecosystem at work into which you need to incorporate IRIS, it's not a problem. Java External Language Gateway will do it seamlessly, almost. This gateway serves as a bridge between Java and Object Script in IRIS. You can create objects of Java classes in IRIS and call their methods. You just need a jar file to do this.

Connection diagram: proxy object <-> Gateway object <-> TCP/IP <-> External server <-> target object

0
4 441
Question Nicky Zhu · Nov 8, 2024

Hi guys,

Is it possible to apply business rule on a XML without Schema?

Say, I'm trying to make some business rules on FHIR XML payload. I transferred the XML stream as an EnsLib.EDI.XML.Document in a BPL and passed it to a General Business Rule.

Set context.xmlDocument = ##Class(EnsLib.EDI.XML.Document).ImportFromLibraryStream(##class(HS.SDA3.QuickStream).%OpenId(request.QuickStreamId))

I'm handling following XML document 

With this rule

Then I got stuck at visiting the elements in the XML.

I.e How may I evaluate the profile value?

Thanks。

6
0 208
Question Gautam Rishi · Jun 21, 2023

Hi everyone, 
I am new to "git-source-control", what i am doing so far will explain you in few steps.
1. installed git-source-control into a namsapace TEST using ZPM "install git-source-control"
2. configure the git settings and created a new mapping for as such 

3. Now when I am trying to ADD a new file which is created for eg - NewFolder/impl.cls , getting an error like this

exporting new version of NewFolder.impl.cls to /Users/abc/workspace/NewFolder/impl.cls

No mapping with a matching path found for file NewFolder/impl.cls

5
2 640
Question Anthony Master · Nov 8, 2024

Throughout the forum, I find examples of using the method getSegmentByIndex to get the segment as I loop through the HL7 message segments.

Today I spent way too long trying to figure out why I could not modify the segment with this same method. I reached out to my more experienced team and I showed where I got the base code from what I was doing, but I myself could not find the documentation of the method.

After some time, we stumbled upon the GetMutableSegmentAt and GetSegmentAt methods and plugged the mutable method in its place and what do you know, it worked!

1
0 197
Question Jacopo Magliani · Nov 4, 2024

I am developing a business operation that receives a request, creates a message with the data contained in it and sends it to an outlook email. For testing purposes both the sender and the destination are the same email account
This is the code:
ClassBO.AlertEmailSenderExtendsEns.BusinessOperation{

ParameterADAPTER = "EnsLib.EMail.OutboundAdapter";
PropertyAdapterAsEnsLib.EMail.OutboundAdapter;
ParameterINVOCATION = "Queue";
MethodOnMessage(pRequestAsMessages.AlertMsgToEmail, OutputpResponseAsMessages.AlertResponse) As%Status
7
0 297
Question Andreas Schneider · Sep 15, 2024

Has anyone successfully tested the new THROUGH command in IRIS 2024.2 with a FOREIGN SERVER?https://docs.intersystems.com/iris20242/csp/docbook/Doc.View.cls?KEY=RS…

I have connected from a Docker instance to a VM. I was able to successfully set up the JDBC connection through the UI.

I then configured a foreign server with this connection:

But I am unable to send a SQL 'THROUGH' to the DB. I always get a:

I've get the same message if i try it via Management Portal.
I've also tried this:

and this

11
0 401
Question Nicki Vallentgoed · Nov 7, 2024

Using the Basic template for InterSystems IRIS development environment with Docker: github

If I use the Dockerfile_mini file and COPY a backup, the file shows up.

COPY ./20241104_1448.cbk /home/irisowner/dev 

ARG IMAGE=intersystemsdc/iris-community
FROM $IMAGE

WORKDIR /home/irisowner/dev
COPY ./20241104_1448.cbk /home/irisowner/dev
...

However if I use the Dockerfile with the additional features, the file is copied (via logs) but not on the container filesystem.

Is this a bug?

2
0 139
Question Ashok Kumar T · Nov 6, 2024

Hello Community,

I have a stream property which uses %Stream.GlobalCharacter and I set some dummy texts like "a1a2a3a4a5a6a7...."(more than 1024 characters)   in to that stream and the stream values are not compressed. However, The streams are compressed If I use the Lorem ipsum is a dummy or placeholder text or other text "This is part four of a long memo." which length is greater than 1024 

I opened the stream object and confirmed the compress property is 0 for first entry and  1 for 2nd object

3
0 153
Question Paul Hula · Nov 6, 2024

So being forced to use VSCode out of the box for a new Community install I've hit a small problem, documentation hasn't helped and its a simple problem.

How do I enable auto complete and the property viewer in creating a new .MAC?

So I've created "test.mac" and 'assume' can't remember the method name to open a file (for example), typing

"s f=##class(%Library.File).   " in Studio would bring up the methods of %Library.File so I could click the appropriate one, VSCode does not do this (and also didn't show the classes under %Library).

5
0 313
Question Dmitry Maslennikov · Aug 11, 2023

Well, now we got noPWS container with IRIS, and how to connect to it, simply, without any durable sys or files, using normal peoples way like Environment variables?

version: "3"
services:
  iris:
    image: containers.intersystems.com/intersystems/iris:2023.2.0.227.0
    ports:
      - 1972:1972
    volumes:
      - ~/iris.key:/usr/irissys/mgr/iris.key
  web:
    image: containers.intersystems.com/intersystems/webgateway:2023.2.0.227.0
    ports:
      - 52773:80
8
0 422
Article Timothy Leavitt · Nov 4, 2024 2m read

Summary: if you concatenate filenames into /STDOUT and /STDERR in a $zf(-100) call, quote them.

I hit an <ILLEGAL VALUE> error from the following that initially stumped me. This was part of a unit test that worked perfectly fine on Windows, but when CI ran on Docker it failed:

Set outFile = ##class(%Library.File).TempFilename()
Set outDir = ##class(%Library.File).NormalizeDirectory(##class(%Library.File).TempFilename()_"dir-out")
Do##class(%Library.File).CreateDirectoryChain(outDir)
Do$$$AssertEquals($zf(-100,"/STDOUT="_outFile_"/STDERR="_outFile,"tar","-xvf",tempDir_".tgz","-C",outDir)
2
2 353
Question Jani Hurskainen · Nov 5, 2024

I have a custom IPM resource processor like:

<Resource Name="example.json" ProcessorClass="OSEX.ipm.demo.IpmResourceProcessor" Foo="from manifest Resource attribute"/>

What is the best practice to deploy the custom resource processors to the IRIS instance? It can't be part of the module that uses it for obvious (?) chicken-egg situation.

My best idea atm is to put all those custom processors into a (library) module and all modules using any of them just have a dependency to the custom processors module.

0
0 103
Article Lorenzo Scalese · Nov 15, 2020 8m read

Hi Community,   OpenAPI-Client Gen has just released, this is an application to create an IRIS Interoperability Production client from Swagger 2.0 specification.   Instead of the existing tool ^%REST that creates a server-side REST application, OpenAPI-Client Gen creates a complete REST Interoperability Production client template.

Install by ZPM:

zpm "install openapi-client-gen"

  How to generate production from Swagger document?   It's very simple.

Open a terminal and execute:

Set sc = ##class(dc.openapi.client.Spec).generateApp(<applicationName>, <Your Swagger 2.0 document>>)
12
0 1333
Question Robert Stephens · Nov 4, 2024

I'm running a query, joining nine tables together. When I run it with a SELECT COUNT(*) I get about 200,000 rows. When I run the SELECT with the columns I want, I get about 2,700 rows. Is there something inherent with the queries that limits the result set size, or anything I can do to make sure I'm getting back all the results? Rather, than trying to run it about 100 times limiting all previously gotten accounts.

2
0 251
Question Lyubomyr Hamalii · Oct 11, 2024

Hello,

Could not connect to DB using IRIS studio, and I don`t know why, maybe someone can help.

Checked already user - it have %All rights

Also, tried using _SYSTEM user, but the same error is occured.

Does anyone have suggestions, I will appreciate your help.

Providing some screenshots regarding this problem.

4
0 186