Article Evgeny Shvarov · Feb 19, 2022 2m read

Hey developers!

Sometimes we need to insert or refer to the data of classes directly in globals.

And maybe a lot of you expect that data structure of global with records is:

^Sample.Person(Id)=$listbuild("",col1,col2,...,coln).

And this article is a heads up, that this is not always true, don't expect it as granted!

1
0 483
Question Renato Araujo · Feb 20, 2022

Hi all,

I am trying to use a %Status property on some of my Response classes. If the execution of a service goes wrong, I set the %Status property on Response with the value $$$ERROR($$$GeneralError, "pre-defined error message"). 

When I check the visual trace for this message and look for the %Status (property "status_code" on the image), it is displayed like this:

If I select to display the Body of the Response, I get the 'readable' form of %Status:


According to the documentation, this is expected as %Status properties are encoded in base64 during Projection to XML.

1
0 406
InterSystems Official Bob Kuszewski · Feb 9, 2022

UPDATE:  Developer Preview 7 has been released.

Update 7 includes a number of stability improvements over previous updates and support for support for all of the planned 2022.1 features.  If you notice any problems at all, now's the time to let us know.  The docker pull commands below have been updated with the latest build numbers.  Enjoy!

Developer Preview releases are now available for the 2022.1 version of InterSystems IRIS, IRIS for Health, and HealthShare Health Connect.

As this is InterSystems' first developer preview release, let's take a moment to describe what these are.  The developer preview program enhances the previous IRIS preview program with approximately bi-weekly releases that add features as they are ready.  This allows us to get feedback on capabilities and enhancements as they're available.  You'll see below a list of enhancements that are targeted for 2022.1, which are not included in the first developer preview.  Look for those over the coming weeks. 

We are eager to learn from your experiences with this new release ahead of its General Availability release. Please share your feedback through the Developer Community so we can build a better product together. 

InterSystems IRIS Data Platform 2022.1 is an extended maintenance (EM) release. 2022.1 includes the many important new capabilities and enhancements have been added in 2021.2, the continuous delivery (CD) release, since 2021.1, the previous EM release. Please refer to the release notes for 2021.2 for an overview of these enhancements.

9
0 1548
Question Token Ibragimov · Feb 18, 2022

i have create rest api service. Trying to get value from post request:

{   "UserName": "Tom",  "UserID": 123 }

here is my class

Class User.REST Extends %CSP.REST
{XData UrlMap [ XMLNamespace = "http://www.intersystems.com/urlmap]
{
<Routes>
<Map Prefix="/restforms" Forward="Form.REST.Main"/><Route Url="/test" Method="GET" Call="test"/>
<Route Url="/CreatePost" Method="POST" Call="post" Cors="true"/>
</Routes>
}

ClassMethod post() As %Status
{
    set sc = $$$OK
    set req = %request.content
    set userName = req.

3
0 823
Question José Ademar de Oliveira Junior · Feb 4, 2022

Hello Programmers,
I'm trying to use Intersystems IRIS Database with
Quarkus, but I'm getting problems making it work
does anyone knows how to set up the Intersystems IRIS Database
on Quarkus ?

I did that on my pom.xml  and also I added the jar
hibernate-iris-1.0.0.jar and intersystems-jdbc-3.2.0.jar but it's not working 

<dependency>
            <groupId>com.intersystems</groupId>
            <artifactId>intersystems-jdbc</artifactId>
            <version>3.2.0</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/src/main/resources/intersystems-jdbc-3.2.0.

17
0 780
Question Arturo Masero · Feb 17, 2022

Hello fellows, I need you wisdom.

In my organization we code in ObjectScript and .int everyday. When I joined nobody knew barely nothing about classes and their use was almost only for storage definition purpose. During my self-learning in caché I discovered the object oriented programming and class developing was possible in caché and started to code in .cls . Being something self-taught, I may have some basic doubts I'd have missed in my documentation readings.

9
0 791
Question Joost Platenburg · Feb 17, 2022

LS,

Is there a samples on how to create the OAuth2 server from code? Now trying:
 

set oauth2server = ##class(OAuth2.Server.Configuration).%New()
set oauth2server.Key = "singleton"
set oauth2server.IssuerEndpoint = "https://localhost:52773/oauth2"
set oauth2server.Description = "MedMij Authorization Server"
set oauth2server.AccessTokenInterval = 900
set oauth2server.AuthorizationCodeInterval = 900
set oauth2server.RefreshTokenInterval = 3600
set oauth2server.SessionInterval = 3600
set oauth2server.ClientSecretInterval = 0
set oauth2server.SupportedScopes = "ikp-scope"
set oauth2server.
2
0 457
Question Gabriel Vellasques Tureck · Feb 1, 2022

I am using a Gradle Project for testing APIs, but I need to connect to the database.

I already put this on the dependencies:

And I'm trying to use this way:

But I'm keep getting this error: java.lang.ClassNotFoundException: com.intersys.jdbc.CacheDriver  

Is there any place that I can put a JAR file? Because the project has no lib folder (I already tried to add it, but it doesn't work).

6
0 771
Discussion Vikram Rajput · Feb 15, 2022

I am surprised with the performance (poor) of Native API for .NET

       Following code (where ^testGlobal,node1 has 50 records) takes 5 seconds to run.  Anyone else think there is room for the improvement? 

    string global = "^testGlobal";
            object[] Subs = new object[1];
            Subs[0] = "node1";

            try
            {
                IRISIterator iter = iris.GetIRISIterator(global, Subs); 
               foreach (var item in iter)
                {        
                    Console.WriteLine((string)(iter.
7
0 548
Article Eduard Lebedyuk · Feb 17, 2022 2m read

If your embedded python code calls tkinter library (which is used by a lot of graphic producing libraries, including matplotlib), you might get this error:

<THROW> *%Exception.PythonException <CLASS DOES NOT EXIST> 230 ^^0^DO ##CLASS(User.Test).Test() 
<class '_tkinter.TclError'>: Can't find a usable init.tcl in the following directories:

c:/intersystems/irispy/lib/python/lib/tcl8.6
c:/intersystems/irispy/lib/tcl8.6
c:/intersystems/lib/tcl8.6
c:/intersystems/irispy/library
c:/intersystems/library
c:/intersystems/tcl8.6.9/library
c:/tcl8.6.
0
1 3047
Question Kurro Lopez · Feb 17, 2022

Hi all,

I have a rule to throw a message when there is an error. I want to prevent send the email if the origin of the error is the API to send the email

This is my rule

Now, If there is any error in any process, it works, but if there is an error in MyProduct.BO.SendEmail it is trying to send the error again, and it is a infinite loop.

Is there any way to check what is the origin and don't process if the origin is MyProduct.BO.SendEmail?

I've tried to set a condition in when node but it doesn't catch any property of Ens.AlertRequest

It doesn't work.

2
0 398
Discussion Dmitry Maslennikov · Dec 15, 2021

Hi, I’m recently decided to stay for some months in Dubai. And looking for new opportunities here, as well as even would like to meet in person with local people who works with InterSystems. I can share my knowledge and experience. What do you think? Do we have somebody from Dubai, or other from other parts of UAE?

1
0 378
Article Toshihiko Minamoto · Feb 17, 2022 16m read

Hello, developers!

In this series, I will not show you how to use IRIS for Health, but rather how to use SUSHI, a tool for creating FHIR profiles, as an associated technology.

With the right tools, the profile information (specifications, limitations, extensions, etc.) of a FHIR project can be well organized and published.

Before we begin, what is SUSHI? I will briefly explain it.

What is FHIR?

FHIR is an acronym for Fast Healthcare Interoperability Resources and is defined as a standard for healthcare information exchange that can be implemented in a short period.

0
0 3243
Question Scott Roth · Feb 16, 2022

I am not sure if this is the correct place for this question, but I am struggling to setup TLS security for our IRIS Management Portal and etc. through Apache and the Web Gateway. I have a couple of questions when it comes to the setup.  

  • if I build a private key and certificate within Red Hat, does that certificate have to be on everyone's pc to connect to the Management Portal?
  • Can I use a self signed Certificate?
  • Can I use the existing CA on the server, or do I need to work with my Data Security team to get a Certificate?

Any help would be appreciated

Thanks

Scott Roth

1
0 603
Question Token Ibragimov · Feb 16, 2022

Hello.

I'm trying add header to soap request.

header:

<soapenv:Header>
    <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-sece…">
        <wsse:UsernameToken>
            <wsse:Username>TEST</wsse:Username>
            <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-…">Test!123</wsse:Password>
        </wsse:UsernameToken>
    </wsse:Security>
</soapenv:Header>

I create class

Class WebService.Header Extends %SOAP.

4
0 735
Question Paul Cranston · Jun 16, 2020

Hi ,

Can anyone share some good sample custom CCR Utility classes that would be called by ImplementCCR routines / CCR event hooks to help bootstrap a HealthShare (2020.1) environment or specific change?

Thanks,
Paul

5
0 640
Question Nezla · Feb 15, 2022

Hi Guys,

I've the below query that selects the existing processes with dates & times and it working fine, but in case of records with the same processedDate I would like to only get the latest based on processedTime field?

2
0 446
Question Michael Jobe · Jan 26, 2021

The current version of SAM creates Prometheus metric endpoints which appear to be handled correctly by the current prometheus scraper, however the metrics do not confirm to the current prometheus standard.  The standard states: 

  • Prometheus' text-based format is line oriented. Lines are separated by a line feed character (\n). The last line must end with a line feed character. Empty lines are ignored.

Link is here: Prometheus format

In the current output on the

<hostname>:8080/api/monitor/metrics

endpoint the last metric does not contain a newline causing parsers to fail.

9
0 500
Question Michel Liberado · Feb 11, 2022

Hi, the class %Library.Storage has several methods such as  %BuildIndices(pIndexList As %RawString = "" ...), %ValidateIndices(idxList As %List = ""...), ... which take as a parameter (amongst others) a list of indices (in the example, the signature of the list is not the same but I guess it does not matter).

My question is: can get this list in code ?

7
0 661
Question A.R.N. H Hafeel · Feb 9, 2022

Hello community, 

It's been quite some time since I came on this platform. 

I have been down with the global pandemic and is currently recovering. Thank you all for your valuable prayers. 

I am in the streak to learn something new and want to learn CACHE development. 

Is there a possible site or Link that I can follow please. 

From BASIC to ADVANCE is my requirement. 

Help me out on this community. 

God Bless and stay safe. 

3
0 832
Question Razvan Prepelita · Sep 8, 2017

Hello everyone, I'm trying to run a cache terminal script from cmd/ batch.
I run it like this C:\MyCache\bin#cterm.exe C:\Users\Me\Desktop\cache_scrip.scr
The command opens a terminal, but nothing happens, no title present, no log file written, no output, it's just stucked.
Here is my script:

case match: off
title MyTitle
; wait for the terminal to initialize and ask for our identification
echo: on
wait for:Username
send: MeUser<CR>
wait for:Password
send: mepass<CR>
logfile: C:\Users\Me\Desktop\cache_script.
8
0 2804
Question Nezla · Jun 30, 2021

Hi Guys,

The lines in my dynamicGrid are getting chopped  off and not wrapping to the next lines, how can I make rows wrapping to the next line pls?

Thanks

1
0 305
Article Robert Cemper · Feb 8, 2022 1m read

I have created a package to export a Global into JSON object file and to re-create it by reloading from this file   
embeddedPython refers to the new available technologies. It should be understood as a learning exercise of 
how to handle the language interfaces. Only Global nodes containing data are presented in the generated JSON file.
Differently from the previous example, this one is using embedded Python only, no ObjectScript. Therefore PURE

2
0 663