Hi, Community!
Beginner tag unites articles and questions for those who are getting started with InterSystems Data Platform
Beginner tag unites articles and questions for those who are getting started with InterSystems Data Platform
Hi, Community!
The Good Old Days
The %Library.DynamicObject class has been in IRIS since before it became IRIS. If you have been using it since the Cache days, you may want to brush up on some of its changes.
In Cache 2018, the %Get method only had one argument. It was the key to retrieving from the JSON, meaning that if your JSON object called myObj, it would look like the following:
As we all know, InterSystems is a great company.
Their products can be just as useful as they are complex.
Yet, our pride sometimes prevents us from admitting that we might not understand some concepts or products that InterSystems offers for us.
Today we are beginning a series of articles explaining how some of the intricate InterSystems products work, obviously simply and clearly.
In this essay, I will clarify what Machine Learning is and how to take advantage of it.... because this time, you WILL KNOW for sure what I am talking about.
Is there a way to use a property of the type %Persistent class in a
Example:
// Data class
Class PersistentClass Extends %Persistent
{
Property Value As %String;
}// Page class
Class ClassName Extends %ZEN.Component.page
{
Property TestProperty As PersistentClass;
}
The problem is that when using it the described in the example.
The property can be set in a Method like this:
Method DoStuff() As %Status [ ZenMethod ]
{
Set result = ##class(HBS.EnsUtil.CompanyFunctions).GetData(.aVariable) // aVariable is of type PersistentClass
Set Hello All,
Is ther any way to convert RTF content into Text document/HTML docucment in Cache object scripts or by using %iKnow.Source.Converter.
Please advise.
Thanks,
Archunan K
How do you collect stack info when debugging non-interactive jobs?
I cobbled this together today from the docs, but maybe there's something pre-built? LOG^%ETN()?
set stack = ""
for loop=0:1:$STACK(-1) {
set stack = stack _ "Context level:" _ loop _ " Context type: " _ $STACK(loop) _ $c(10,13) _
" Current place: " _ $STACK(loop,"PLACE") _ $c(10,13) _
" Current source: " _$STACK(loop,"MCODE") _ $c(10,13)
}Log meth
For programmers new to ObjectScript, one question will inevitably arise: “What is the difference between methods and class methods?” A typical answer would be: “A class method applies to a class, but a method applies to an instance of that class.” While that answer is correct, it lacks important information on how these methods differ, and how they are used in ObjectScript. Many things could be written as either. For instance, suppose we had a class called “User.Person” with a property called “Name”.
Hi, Community!
🔎Find out how you can simplify your document storage and queries with InterSystems IRIS® Cloud Document!
I was thinking about how to create a new parameter in a method, similar to Output or ByRef...
What documentation can I read to learn more about this?
I want to create a parameter customized.
Hi, Community!
Are you working with clinical data in a research setting? See how InterSystems OMOP streamlines data integration and analysis.
Hi all!
In this article I would like to review those VS Code extensions which I use myself to work with InterSystems and which make my work much more convenient. I am sure this article will be useful for those who are just starting their journey to learn InterSystems technologies. However, I also hope that this article could be useful for experienced developers with many years of experience and open up new possibilities for them when using VS Code for development.
Hello All,
I'm new to InterSystems, just wanted to check if we can configure the Visual Studio code to use it as Studio for Intersystems development. I tried following the instructions in few posts but nothing worked. Please guide me to setup this
I am a volunteer at a nonprofit that is attempting to connect to a product that uses InterSystems Cache (Clinisys LIMS). I have not used this database before, but I have used many others (MS-SQL, Oracle, etc.). I am hoping IRIS is compatible enough with Cache for this project.
I downloaded IRIS. I learned about Terminal [IRIS]. Using it I was able to create a new table, insert data, and retrieve it. I also used the Management Portal to query the new table. It also returned the data.
Next I attempted to connect with Visual Studio (MS VS 2022 Profesional). I downloaded the InterSystems.Data.
Updated 12/10/25
Hi Community,
Looking for a way to onboard your team with InterSystems IRIS® for Health? Unlock the full potential of this platform by using these InterSystems learning resources. With a mix of online and in-person training, you can support various roles in your organization and equip your team for success.
With my basic knowledge of Docker container and REST API, I would like to have my first try on using InterSystems API manager to take control of APIs and microservices. I have completed this online course using my local IRIS instance as host (Windows OS) and IAM running on a Linux VM (guest).
Firstly, I will introduce InterSystems API Manager (IAM), then explain the steps for setting up my local environment and lastly walk through the course chapters.
Hi, Community!
Are you using InterSystems Cloud Services? Take a tour of the central hub for managing your services and deployments:
How to create an ODBC connection on your native Windows laptop to IRIS running on a Windows VM on the same computer, test the connection, and pull data from IRIS into Excel.
Recently I learned that Excel can connect to external databases via ODBC. This includes basically any ODBC data source. Since IRIS speaks ODBC via the ODBC API, we can take advantage of the InterSystems ODBC Driver to establish an ODBC connection to IRIS on Windows that Excel can utilize.
Does InterSystems IRIS has a MEDIAN (or percentile) calculation in SQL?
Many programming languages use the try-and-catch construct to handle runtime errors gracefully. If the code within the try block encounters an error, it will throw an exception to the catch block, where the error handling occurs. Today we will dive into the ObjectScript implementation of this construct and discuss some ways to clean things up.
Hi, Community!
Want to use your data to make better business decisions? Creating virtual models can help! See how:
Creating Virtual Models with InterSystems IRIS® Adaptive Analytics
Hi, Community!
Does your team need a graphical view of your data? See how to use the InterSystems Reports Designer to create helpful visualizations:
Hi,
Is there a way to set the SettingSchedule on a EnsLib.File.PassthroughService at 9:00 am to 9:30 am but only end of the month?
When developing productions there are many places that we input endpoint information (IP/port) especially when there are dozens of operations going to the same environment. What later happens is that the IP changes and we have to then go into each operation and update the IP.
Is there a way to create a "global variable" for an endpoint, something like `$ehr_IP` and then use that and update it in a single place?
I'm aware of defaults, but I don't want a default as this is not a "default" but is the value to use in place of the variable.
Journaling is a critical IRIS feature and a part of what makes IRIS a reliable database. While journaling is fundamental to IRIS, there are nuances, so I wrote this article to summarize (more briefly than our documentation which has all the details) what you need to know. I realize the irony of saying the 27 minute read is brief.
Every modification to a journaled database (sets and kills) is recorded with its timestamp in a journal file. This runs in parallel with writes to the databases and the write image journal (WIJ) for redundancy.
Hi Developers!
Recently we launched InterSystems Package Manager - ZPM. And one of the intentions of the ZPM is to let you package your solution and submit into the ZPM registry to make its deployment as simple as "install your-package" command.
To do that you need to introduce module.xml file into your repository which describes what is your InterSystems IRIS package consists of.
This article describes different parts of module.xml and will help you to craft your own.
I will start from samples-objectscript package, which installs into IRIS the Sample ObjectScript application and could be installed with:
zpm: USER>install samples-objectscript
It is probably the simplest package ever and here is the module.xml which describes the package:
<?xml version="1.0" encoding="UTF-8"?>
<Export generator="Cache" version="25">
<Document name="samples-objectscript.ZPM">
<Module>
<Name>samples-objectscript</Name>
<Version>1.0.0</Version>
<Packaging>module</Packaging>
<SourcesRoot>src</SourcesRoot>
<Resource Name="ObjectScript.PKG"/>
</Module>
</Document>
</Export>I need to know if given package exists or not.
Currently found two solution - one doesn't work, another works but I don't like it.
Solution 1.
I started, of course, with %Dictionary package - it has PackageDefinition class after all.
However, %ExistsId returned 0 on packages that clearly do exist, so I went to %LoadData, it uses this macro to determine if the package exist:
#define PACKAGE(%package) ^oddPKG($zcvt(%package,"u"))And zw ^oddPKG showed the root cause - ^oddPKG global only contains data for packages with tables (or something along these lines).
Solution 2.
Recently I got into a situation where a user had some roles, which granted additional roles, and so on.
As I did not understand where a particular permission came from, I wrote this code which gets an initial set of roles and unwraps them recursively, accounting for any repeats.
Hi, Community!
We're happy to introduce a new learning path created by the Online Learning team:
There are two great WRC best practice articles Ensemble Orphaned Messages | InterSystems Developer Community | Best
and the delete helper post DeleteHelper - A Class to Help with Deleting Referenced Persistent Classes (intersystems.com)
that go into orphaned records and how to deal with orphans.
Hi Community,
What are the advantages of using multiple namespaces for your code? Learn some of the benefits in this discussion with @Derek Robinson, Senior Online Course Developer, and @Scott Clark, Implementation Specialist: