This code snippet uses %ZEN.Auxiliary.jsonSQLProvider. The namespace and string of SQL can be edited for different situations. The class method "test" runs the code:

Class eduardlebedyuk.passQuestionParams
    classmethod test(pValue = 50) {
        s ns = $Namespace
        zn "samples"
        s tSQL = "SELECT ID, Name FROM Sample.Person WHERE Id > ?"
        s tPR = ##class(%ZEN.Auxiliary.jsonSQLProvider).%New()
        s tPR.sql = tSQL
        s tPR.%Format = "tw"
        s tPR.maxRows = 100
        s tParam = ##class(%ZEN.Auxiliary.parameter).%New()
        s tParam.value = pValue
        d tPR.parameters.SetAt(tParam,1)
        d tPR.%DrawJSON() 
        //d ##class(%ZEN.Auxiliary.jsonSQLProvider).%WriteJSONFromSQL(,,,,,tPR)  //same thing
        zn ns

(Originally posted to Intersystems CODE by @Eduard Lebedyuk, 5/13/15)

Here's a link to the code on GitHub

0 0
0 183

One of our apps uses a class query to support a ZEN Report and works just fine in that report, producing the expected results every time. We’ve since migrated to InterSystems Reports and noticed that, for a report using the same class query, 100s of extra rows with the same column values appear at its bottom.

2 0
0 182

As you can see in my profile I teach at a university and I wanted to share my take on teaching IRIS (or Caché before it).

It’s been some time but I remember seeing a series of articles by @Yuri Marx earlier this year about the course “Developing with InterSystems Objects and SQL”. He actually gave a brief description of what’s done on Day 1, Day 2, and Day 3 with comments from instructor @Joel Solon. And I thought to myself, it may be interesting to share my experience.

7 6
1 181

Fixing the terminology

A robot is not expected to be either huge or humanoid, or even material (in disagreement with Wikipedia, although the latter softens the initial definition in one paragraph and admits virtual form of a robot). A robot is an automate, from an algorithmic viewpoint, an automate for autonomous (algorithmic) execution of concrete tasks. A light detector that triggers street lights at night is a robot. An email software separating e-mails into “external” and “internal” is also a robot. Artificial intelligence (in an applied and narrow sense, Wikipedia interpreting it differently again) is algorithms for extracting dependencies from data. It will not execute any tasks on its own, for that one would need to implement it as concrete analytic processes (input data, plus models, plus output data, plus process control). The analytic process acting as an “artificial intelligence carrier” can be launched by a human or by a robot. It can be stopped by either of the two as well. And managed by any of them too.

6 0
0 180

Presenter: Tony Pepper
Task: Host an application based on InterSystems’ technology in a public cloud environment
Approach: Provide a checklist of things to think about before you deploy

Are you looking at hosting your applications in the public cloud? This talk will highlight what you need to think about when deploying InterSystems technology in any public cloud environment.


Content related to this session, including slides, video and additional learning content can be found here.

1 0
0 179

Continuing the description of work on the use of the openhl python module in productive mode.

Since the version of iris with Embedded Python, does not yet have a final release, it is already necessary to use it in production now. We decided to back up the service for exporting requests to a xlsx file on a separate server, and save the query result in a global in a separate database.

8 0
1 179
Robert Cemper · May 14, 2020 2m read

During the development of a container-based demo I found the need to access a fresh docker
instance of IRIS image (e.g intersystems/iris-community:2020. over and over.
To bypass setting passwords and loading my code repeatedly I developed this workaround.

10 0
1 178
Simon Bijl · Jan 12, 2016 10m read
Is there someone that has developped a program in order to create a 
"decisiontree"? Depending The answer to a question leads to another question, and so on, 
and so on, and there is an option to return to another point in the decisiontree.

Best regards,


p.s. I've already got something, but it's not workable. But to get an idea:

2 4
0 178

Adding VSCode into your IRIS container

One of the easiest ways to setup repeatable development environments is to spin up containers for them. I find that when iterating quickly, it was very convenient to host a vscode instance within my development container. Thus, I have created a quick container script to add a browser-based vscode into an IRIS container. This should work for most 2021.1+ containers. My code repository can be found here

5 3
0 178

Hi Developers!

Create Database, Namespace, REST Applications using Portal Management is an easy task. You just need a few clicks or maybe more clicks than you expect.

But, what if you traded all those clicks for a simple command-line ?!

IRISAPP>do ##class(diashenrique.Utils.GenerateDB).CreateNew

You just need to answer a few questions: 

2 0
0 178
Henrique Dias · Oct 6, 2020 2m read
An overview of npm-iris

What is npm-iris? 

N.P.M stands for "No Project Mess."

N.P.M. is a Project & Task Management app that uses InterSystems IRIS and Bootstrap 4.

No Project Mess is created to help developers and small business companies to reduce complexity in their daily problems, with a simple and intuitive projects and tasks management software. 

It offers different views for your tasks, from a spreadsheet, kanban, calendar, or even Gantt!

3 0
0 177

If you're deploying to more than one environment/region/cloud/customer, you will inevitably encounter the issue of configuration management.

While all (or just several) of your deployments can share the same source code, some parts, such as configuration (settings, passwords) differ from deployment to deployment and must be managed somehow.

In this article, I will try to offer several tips on that topic. This article talks mainly about container deployments.

3 4
0 177

The OKR methodology (Objectives and Key Results or Objectives and Key Results) is used by the largest companies in the world (such as Google, Netflix, Spotify, BMW, Linkedin, etc.) for agile performance management. It was created in the 1970s by Andrew Grove, president of Intel, and introduced to the general public in his famous book “High Output Management”.

Around 1998 John Doerr, one of the world's top venture capitalists, after coming into contact with Intel's OKR, introduced the model to Larry Page and Sergey Brin, who started a small company called Google.

6 0
1 176

QEWD is assumed by most people to only integrate with IRIS (or Cache) via a connection through IRIS's high-performance C interface.  This requires QEWD (and its Node.js environment) to be installed and configured on the same machine as IRIS.

I'm frequently asked if QEWD can run on a separate server (or servers), and access IRIS (or Cache) over a network connection.  The answer is yes it can, but the information on how to set it up in this way has been admittedly a bit tricky to discover.

0 0
0 176

Requirement: Transform source XML message to target JSON.

step1: First create json equivalent xml from any online tool.

step2: use add in  studio utility create persistent classes from json equivalent xml and compile it , now target persistent classes are ready

step3: Do the above step for source xml or xsd and generate persistent classes for source and compile it

step4: complete the DTL by selecting root node from source, target persistent classes and complete the mappings and compile it

5 0
0 175

Presenter: Harry Tong
Task: Load terabytes of data into a distributed environment
Approach: Leverage parallelism and open-source tools

In this session, we’ll discuss how to load TBs of data into a distributed environment, leveraging parallelism and open source to reach exceptional load rates.


Content related to this session, including slides, video and additional learning content can be found here.

0 0
0 174