Syndicate content 0  

When using standard SQL or the object layer in InterSystems IRIS, metadata consistency is usually maintained through built-in validation and type enforcement. However, legacy systems that bypass these layers—directly accessing globals—can introduce subtle and serious inconsistencies.

1 2
0 137

Some languages ​​have the concept of a garbage collector for automatic memory management. I'd like to know if something like this exists in InterSystems Caché in the context of routines, %CSP.REST, or %CSP.Page.

The question arises from the %Close() method of the %RegisteredObject class. This indicates that I need to manually clear the object from memory if it's no longer in use, or in the web context, if the request has completed. Is this correct? Or am I completely wrong?

Thank you!

2 8
0 168

Hey folks! Having recently onboarded to InterSystems, I realized that despite having a totally free and awesome Community Edition, it's not super clear how to get it. I decided to write up a guide highlighting all the different ways you can access the Community Edition of InterSystems IRIS:

Get InterSystems IRIS Community Edition as a Container

Working with a containerized instance of the Community Edition is the recommended approach for folks who are new to developing on InterSystems IRIS, and in my opinion it's the most straightforward. InterSystems IRIS Community Edition can be found on DockerHub; if you have an InterSystems SSO account, you can also find it in the InterSystems Container Registry.

In either case, you'll want to pull the image you want using the docker CLI:

docker pull intersystems/iris-community:latest-em
// or
docker pull containers.intersystems.com/intersystems/iris-community:latest-em

Next, you'll need to start the container: In order to interact with IRIS from outside the container (for example, to use the management portal) you'll need to publish some ports. The following command will run the IRIS Community Edition container with the superserver and web server ports published; note that you can't have anything else running that depends on ports 1972 or 52773!

docker run --name iris -d --publish 1972:1972 --publish 52773:52773 intersystems/iris-community:latest-em

5 0
1 176

Intersystems provides External language server connections for various languages which,
from a development perspective, is great as I can keep my application code separate but still interact with the IRIS kernel.

It becomes more complex though if you are using Interoperability etc where you might end up with some code in IRIS and some code in another language.

What would be great is having an IRIS to IRIS language server where the application code and stay IRIS based but separate from the database?

0 5
0 171

Hi fellow developers!

Curious if you guys use CreatedAt and LastUpdated properties in your classes?

Created to stamp when the record was created and LastUpdated when it was last updated. Where it can be useful - almost everywhere )) I find it convenient in records sorting (e.g. by creation or last update), in sync (with other systems), and so on, for better analytics.

Do you use it all the time for all the classes?

If don't, why not? What do you use instead?

What property type do you use - %TimeStamp? %DateTime?

What is the best practice to have CreatedAt filled automatically during creation and LastUpdated on every successful save (guess it could be in %OnSave)?

Please share your experience /thoughts?

0 16
0 159

Hi Community,

We're excited to invite you to the webinar Configuring a Web Server for use with InterSystems IRIS.

Join this webinar for an engaging and insightful tech talk on the configuration of a web server to use with InterSystems IRIS.

Date & Time: Thursday, February 27, 10:30 AM GMT

👨‍🏫 Speaker: @Steve Mallam, HealthShare Team Lead, InterSystems UK&I

2025 Tech Talk Social Tile 27 Feb

3 0
2 175

I have an operation using $ZF this operation ran and did not error but the job has been active and it can not be stopped I have tried stopping it from the front end and through the terminal using ##class(ENSLIB.Job).%New() Stop method. Now my production will not update even if I add a new item to the production I cannot update the item is there a way to force stop this job.

0 4
0 170
Question
· Dec 17, 2024
UDP Adapter not working

Hello

I am trying to work with UDP Connection/Adapter and I get this error.

ERREUR #5002: Erreur Cache: <WRITE>zSend+5^EnsLib.UDP.Common.1

Here is the method

Class TEMPLATE.BO.UDPSend Extends Ens.BusinessOperation
{

Parameter ADAPTER = "EnsLib.UDP.OutboundAdapter";

Property Adapter As EnsLib.UDP.OutboundAdapter;

5 2
0 172

Hi ,

I am creating a report on Trakcare with the help of Jreport. But the date parameter from trakcare is not reading on Jreport and the report is blank.

If I hardcode the date on Jreport,it is displaying on Trakcare but not taking report from Trakcare.

Parameter used on report manager on Trakcare is $g(%request.Data("DateFrom",1)).

Can anyone please tell me any change of settings on Trakcare or Jreport will help to work ?

Thanks for the help

Jude

0 8
0 165

What We’re Looking For:
3+ years of experience with InterSystems IRIS, Caché, or Ensemble
Strong skills in ObjectScript, SQL, and scripting languages (Python/Java a plus)
Experience with healthcare interoperability (HL7, FHIR, X12)
Cloud knowledge is a bonus (Azure, AWS, or GCP)
Curious mind + collaborative spirit + bias for action

2 2
0 132
Article
· May 2 3m read
Minify XML in IRIS

In a project I'm working on we need to store some arbitrary XML in the database. This XML does not have any corresponding class in IRIS, we just need to store it as a string (it's relatively small and can fit in a string).
Since there are MANY (millions!) of records in the database I decided to reduce as much as possible the size without compressing. I know that some XML to be stored is indented, some not, it varies.

3 3
1 112

InterSystems has corrected a defect that causes invalid database and journal records to be introduced when using a specific $LIST syntax. The likelihood of encountering this defect is very low but the operational impacts can be significant.

3 0
0 172

Hi Community,

Enjoy the new video on InterSystems Developers YouTube:

Boost Your Productivity with Command History & Shell Aliases in InterSystems IRIS

https://www.youtube.com/embed/R1W9f0w8n7s
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

0 2
1 132

Hi Community,

Enjoy the new video on InterSystems Developers YouTube:

Security In the Cloud - Assuring a Secure InterSystems IRIS Cloud Overlay @ Global Summit 2024

https://www.youtube.com/embed/BGQG7gwBxZc
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

0 0
0 171

At the moment we're creating multiple BPLs are using a router (or another BPL) to direct to these based on a unique key modulo the amount of BPLs available, e.g. if we have 3 BPLs created.

Message key = 1 mod 3 + 1 -> BPL02
Message key = 2 mod 3 + 1 -> BPL03
Message key = 3 mod 3 + 1 -> BPL01

FIFO only matters in that each messages for each key is processed in order.

1 7
0 163

I would like to know which are the best practices of using Streams in Interoperability messages.

I have always use %Stream.GlobalCharacter properties to hold a JSON, or a base64 document, when creating messages. This is fine and I can see the content in Visual Trace without doing anything, so I can check what is happening and resolve issues if I have, or reprocess messages if something went wrong, because I have the content.

3 8
0 161

I am developing locally on my IRIS instance using VSCode and client-side editing approach. How can I automatically export a single .cls file/a whole package to a remote TEST/PREPROD server using a script or command line and recompile the unit remotely? Are there any more simple and straightforward ways than CI/CD explained in the series of articles by Eduard?

0 3
0 166

Hey Community,

We’re excited to announce a new upgrade to Developer Community AI!

Now, in addition to Community posts and comments, Developer Community AI also pulls information from official InterSystems IRIS documentation to answer your questions. This new feature lets you customise your search sources so you get the most relevant answers tailored to your needs.

Just choose the sources and ask the question:

  • Community posts
  • InterSystems IRIS Documentation
  • or both!

4 0
0 169

While starting with Intersystems IRIS or Cache, developers often encounter three core concepts: Dynamic Objects, Globals & Relational Table. Each has its role in building scalable and maintainable solutions. In this article, we'll walk through practical code examples, highlight best practices, and show how these concepts tie together.

1. Working with Dynamic Objects:

2 2
4 128

Faced with the enormous and evergrowing amounts of data being generated in the world today, software architects need to pay special attention to the scalability of their solutions. They must also design systems that can, when needed, handle many thousands of concurrent users. It’s not easy, but designing for massive scalability is an absolute necessity.

A workload averaging 1000 1-kilobyte queries per second is compared with another involving 10 1-terabyte queries per hour

Software architects have several options for designing scalable systems. They can scale vertically by using bigger machines with dozens of cores. They can use data distribution (replication) techniques to scale horizontally for increasing numbers of users. And they can scale data volume horizontally through the use of a data partitioning strategy. In practice, software architects will employ several of these techniques, trading off hardware costs, code complexity, and ease of deployment to suit their particular needs.

This article will discuss how InterSystems IRIS Data Platform supports vertical scalability and horizontal scalability of both user and data volumes. It will outline several options for distributing and partitioning data and/or user volume, giving scenarios in which each option would be particularly useful. Finally, this paper will talk about how InterSystems IRIS helps simplify the configuration and provisioning of distributed systems.

9 0
3 168