Eduard Lebedyuk · Sep 29, 2020 go to post

I always use %Status and try to wrap calls in this macro:

#define qoe(%expr) $$$QuitOnError(%expr)

For example:

$$$qoe(..computeDigest(canonicalized))
Eduard Lebedyuk · Sep 28, 2020 go to post

You can use PythonGateway to call Python code from InterSystems IRIS directly.

Example:

set sc = ##class(isc.py.Main).SimpleString("x='HELLO'", "x", , .x)
write x
>HELLO
Eduard Lebedyuk · Sep 28, 2020 go to post

You can start with

set %gw = createJavaGateway()

Where createJavaGateway is

ClassMethod createJavaGateway()
{
  quit:$d(%gw) %gw
  /// init connection
}

And remove disconnect part. This way %gw variable would stay alive betwee the calls.

Eduard Lebedyuk · Sep 28, 2020 go to post

Is the response actually compressed?

I thought automatic decompression is happening a few layers down on the stack.

Eduard Lebedyuk · Sep 28, 2020 go to post

Use session id to track data between calls.

In general I would suggest moving to REST stateless architecture.

Eduard Lebedyuk · Sep 28, 2020 go to post

Try serving files from

<IRIS>\mgr\Temp\

directory.

By default InterSystems IRIS runs under system account which does not have access to your user account folders.

Eduard Lebedyuk · Sep 3, 2020 go to post

They are usually Stored in:

C:\Users\<USER>\Documents\Intersystems\CodeSnippets.txt

If they are not there open Studio -Instruments -  Parameters -  Environment - Code Fragments

The file path would be there:

Eduard Lebedyuk · Sep 1, 2020 go to post

If the user does not have W access on routines db he will not be able to edit it.

Also the  whole DB might be marked as RO.

Eduard Lebedyuk · Aug 31, 2020 go to post

Sure:

Set sc=##class(%REST.API).GetWebRESTApplication(namespace,webApplication,.swagger)
Eduard Lebedyuk · Aug 20, 2020 go to post

This is useful if you need to debug class methods where you can't use $$$TRACE

Add

Include Ensemble

to the start of your class and all Ensemble specific macros become available.