Very simple, how to debug? The settings recommended in the docs don't work. I need a convenient way to keep track of what a function returns, like in other languages, by displaying it in the console.
It's well-known that Studio and probably VS Code have options to expand ObjectScript commands and functions to their full names (Ctrl-E and Ctrl-Shift-E in Studio), therefore some methods to accomplish this should exist. The question is: how to do it programmatically?
Hi Developers!
Here is the score of technical bonuses for participants' applications in the InterSystems Developer Tools Contest 2023!
| Project |
Idea Implementation |
Python |
Docker |
ZPM |
Online Demo |
Code Quality |
First Article on DC |
Second Article on DC |
Video on YouTube |
First Time Contribution |
Total Bonus |
| Nominal | 3 | 3 | 2 | 2 | 2 | 1 | 2 | 1 | 3 | 3 | 22 |
| gateway-sql | 3 | 2 | 2 | 2 | 1 | 10 | |||||
| xml-to-udl | 2 | 1 | 2 | 3 | 3 | 11 | |||||
| iris-persistent-class-audit | 2 | 2 | 1 | 2 | 3 | 3 | 13 | ||||
| GlobalStreams |
Hi Developers,
This January, you posted a whopping 94 new questions on the Developer Community:
Questions

Hi! recently I have to apply api-key validation to a web app with a lot of endpoints and I'm going to tell you how I did it in a centralized way.
I'm going to explain you how we can apply in a generic way (or not) api-key validation to all the endpoints of our web app.
For this feature I take as a template the class Base.cls of this repository iris-rest-api-template
I modified a bit this class to be able to check api-key security. The idea is that in your features you copy this class in your projects and you extend it for your own implementations.
First I did was add a new
.png)
It's not too late to strap into the DX Jetpack for VS Code, take it for a test flight, and consider voting for it.
Online demo on Gitpod is HERE.
Ignore any initial notifications about ports being opened.
The ServerDiff extension will ask for permission to reinstall itself in order to use the `quickDiff` API proposal that it relies on. Click 'Yes'.
Open the README.md by double-clicking on it, thenshow as a preview (command is "Markdown: Open Preview", shortcut is Ctrl + Shift + V).
Enjoy your flight! Comments welcome below.
Hi Community,
It's voting time! Cast your votes for the best applications in our InterSystems Developer Tools Contest:
%20(2).jpg)
How to vote? Details below.
Hi Community,
In the first part, we describe all packages, used libraries and REST services.
Now, I would like to add some details about converter and validator services.
By default, OpenAPI-Suite sends an HTTP request to converter.swagger.io if the specification version is less than 3.0 and another HTTP request to validator.swagger.io to simplify the structure of the specification document.
Although the usage of online utilities is convenient, in some cases it could be better to have our own instance of the converter and validator. For example, if OpenAPI-Suite is provided on a server in an organisation for ObjectScript developers, it may be preferable to avoid requests to external services (privacy, avoid request rate limits).
Just run:
docker run -d -p 8085:8080 --name swagger-converter swaggerapi/swagger-converter:latest
docker run -d -p 8086:8080 --name swagger-validator-v2 swaggerapi/swagger-validator-v2:latestHi Community,
Please read this when you have the time and keep an open mind. Also, you are welcome to tell me it is a terrible idea.
The main reason for this post
If you look at NPM, it has 1.3 million packages. Now ask yourself, is this an achievement or a nightmare?
How many of those packages are no longer supported?
How many of those packages break compatibility on version changes?
How do you know which one to use?
My opinion on the purpose of Opensource
Opensource is there to enable software professionals with different skills sets, experience and background to contribute towards a comm
Hi Community,
This article is a continuation of my article about Getting to know Python Flask Web Framework
In this article, we will cover the basics of topics listed below:
1. Routing in Flask Framework
2. Folder structure for a Flask app (Static and Template)
3. Getting and displaying data in the Flask application from IRIS.
So, let's begin.
I just released an update of the gj :: codeSpex extension containing a new feature - Exclusions.
There's now a short video demonstrating how exclusions can help you focus on the packages you're less familiar with. The video also illustrates how with the ObjectScript Class View extension you can easily explore the inheritance of your classes.
Both extensions are members of the DX Jetpack, my entry in the 2023 Developer Tools contest. Voting closes very soon, so if you like what I've created please encourage me to do more by VOTING FOR ME here.
I've been trying for a while now to get OS authentication working on IRIS running on Ubuntu 20.04 and subsequently 22.04. I have the following authentication methods enabled for %Service_Terminal:
- Operating System
- Password
- Operating System Delegated Authorization
And i have these options selected in Authentication/Web Session Options:
.png)
But when logging in via iris session <instancename> I am always prompted for a username and password. I am logged into the operating system with a username that matches my IRIS username, and the same configuration and login method works fine on Red Hat
If you haven’t already please give @John Murray your vote in the Developer Tool contest >> http://bit.ly/3XcxyeS
🚀 DX Jetpack boosts your developer experience when using VS Code with InterSystems platforms. 🚀
This extension pack includes:
gj :: codeSpex - showing help using VS code's commenting feature.
ObjectScript class view - View and navigate all class members plus where they are inherited from.
ServerDiff - See the difference between the code you are editing in VS Code and the server copy.
You can vote here >> http://bit.ly/3XcxyeS
Hey community!
It's time to elevate your unit tests to the next level with iris-TripleSlash new solo feature!
We are bring to the game Setup and Tear down events!
Just add description on class, with special tags like:
- beforeAll
- beforeOne
- afterAll
- afterOne
The tripleSlash will turn it to:
- OnBeforeAllTests
- OnBeforeOneTest
- OnAfterAllTests
- OnAfterOneTest
And that's not all! The new double dot abbreviation feature allows you to effortlessly call methods and simplify your code, i.e.:
///<example>/// Write ..TheAnswerForEverything()/// 42///</example>TripleSlash will auto
I am unable to open studio. Management Portal is working fine. But facing issue in login into studio. Access Denied. Native Code : 417
Hi,
Can anyone please help me how to use regular expression/wild character on a sql query for a pattern like C00.0 to C00.9, C01.0 to C01.9 and so on until C77.0 to C77.9 .
Thanks for your help
Thanks
Jude
I'm not sure why on some message you cannot edit/resend and change the inforatmation in the message
i.e.
Property property1As Messages.MesaageType1;
Property property2 As Messages.MesaageType2;
Property property3 As list Of Messages.MesaageType3;
All extend Extends (Ens.Request, %XML.Adaptor)
is there anything we are missing?
Why can't I switch images when there are many queues
I would like to know how I can make a utility to retrieve all the names of properties of a class. Any idea?
Hello Community,
Some of you have passed the InterSystems Official Certification and would like to get a nifty green tick on your profile avatar
and all your certificates in your DC profile so that others know that you know... you know what we mean ![]()
So, to add certification to your DC profile, you need to take 3 easy steps:
1️⃣ Go to your DC profile
2️⃣ Go to the InterSystems Certification section
3️⃣ Click on the Load my certification(s) button
and that's it!
Overview
With the gradual improvement of hospital information construction, there are more and more business interfaces in hospitals. Due to the influence of various factors (network, consumer system, etc.), the data processing of business interface may cause excessive message accumulation and even the situation of interface card congestion, which affects the normal business development in the hospital. Therefore, the monitoring of the queue of business interface components becomes more and more important.
At present, the built-in queue monitoring interface of Intersystems IRIS platform on

Hi folks!
I'm playing with IRIS interoperability at the moment and it turned out that Data Transformation cannot be the element of production by itself.
It can be called either from data rule or from business process.
But why?
What if I just want to change the message with the transformation and transfer the message somewhere else? Why the overhead with Rule or Business process?
Hi Developers!
Suppose you have a persistent class with data and you want to have a simple Angular UI for it to view the data and make CRUD operations.
Recently @Alberto Fuentes described how to build Angular UI for your InterSystems IRIS application using RESTForms2.
In this article, I want to tell you how you can get a simple Angular UI to CRUD and view your InterSystems IRIS class data automatically in less than 5 minutes.
Let's go!
From where I can download the latest version of IRIS.
Schematron is a rule-based validation language for making assertions about the presence or absence of certain patterns in XML documents. A schematron refers to a collection of one or more rules containing tests. Schematrons are written in a form of XML, making them relatively easy for everyone, even non-programmers, to inspect, understand, and write
Sessions and specifically %session are paramount to our application to login users to the application (the Web Gateway user logs into the server and then users login to the application).
When using /api/mgmnt/v2 to implement a spec first approach to REST API development, I am unclear how I can utilize sessions (i.e. %session) to work with our existing model (and I'm sure there are indeed better ways to do this, but we are just baby stepping right now). Much of the documentation say to make sure UseSession=1 in the dispatch class is set, which I've accomplished. This seemed hopeful because
Hey Developers,
Thank you so much for staying with InterSystems Developer Community for yet another year!
Day in and day out our team is trying to make it better and more useful for each and every one of our 12K+ members!
We'd like to know how useful the Developer Community is for you at this point. Please take a few moments to let us know what you think and what could be improved:
👉🏼 InterSystems Developer Community Annual Survey 2022 👈🏼
Note: The survey will take less than 5 minutes to complete.
I use the following code (which is a simplified version of what happen on a server) :
tstartfor I=1:1:N {
set test = ##class(Test.Test).%New()
set test.ID = I
do test.%Save() //create a "Exclusive_e->Delock" lock on ^Test.TestD(..)
}
hang 5tcommit//locks are removed hereTest.Test is a persistent class that inherit from %Persistent :
Class Test.Test Extends %Persistent
{
Property ID As%Integer [ Required ];
Index IDKEY On ID [ IdKey ];//...
}
I think delocks are needed because of the transaction, to maintain data consistency, but why exactly are they
Hi Community,
In this article I will demonstrate below steps to add Interactive map and visualize geographic data to web application:
- Step1 : Install Application
- Step2 : Create CSP Page
- Step3 : Extend dc.IrisGeoMap.Folium class
- Step4 : Invoke DrawGeoDetails() Method
So Let us start.
Step1 : Install Application
First of all we need to install iris-geo-map application by using ZPM
zpm "install iris-geo-map".png)


