Syndicate content 137 

Hello there community, 

I am pleased to say that i have started building a product and I have chosen InterSystems technology to be used in it. 

But I have a confusion with regard to it. 

I actually have to come to a conclusion to whether to use CACHE or IRIS. 

I will be using a lot of data and also integrating it along with Python for DEEP and Machine Learning. 

Also I do not have an idea of how to get the licensed version of either of that. 

1 3 143
Evgeny Shvarov · Sep 28, 2020
%Status usage in ObjectScript

Hi developers!

Want to discuss with you the case of %Status.

If you familiar with ObjectScript you know what is it. I'd love to hear the history of the case why it had appeared in ObjectScript but it turned out that almost every system/library classmethods return %Status and there is a whole set of tools to deal with it.

What is does it gives you the responsibility to check the value or %Status of every system method you call.

E.g. if you save the data of the persistent class,  you should never call like this:

do obj.%Save()

you need to call:

set sc=obj.%Save()

if $$$ISERR(sc) do // something or quit.

0 19 231

Whenever the Windows SNMP Service restarts, the snmpdbg log says the following.  

16:58:25 :Debug tracing enabled for SNMP agent
16:58:25 :SnmpExtensionInit called, pid=4432, tid=12276
16:58:25 :CreateEvent for CacheSNMPTrap suceeded
16:58:25 :register Cache OID
16:58:25 :Get all Cache configs ... 16:58:25 :found 1 configs
16:58:25 :Add ENSEMBLE config to list ... 

0 4 58

I've run into an issue where job IDs are being retained through multiple calls. My team is doing a rewrite of our system that allows VB6 apps and web apps to directly interact with our Cache databases.

The new process has those applications calling into a WebAPI which then calls into the routines.

0 2 94
Evgeny Shvarov · Sep 21, 2020
Unit Testing Naming Convention

Hi Developers!

Recently we discussed the naming convention on packages we deploy and even made some choices.

Here I want to have a conversation on the naming convention for unit tests.

Of course, we wish every good library has unit tests. Here is the documentation and some good articles(one, two, three) regarding it on the Developer Community.

Let's decide on the naming of UnitTests packages?

The suggestion is that unit test classes will all start with the UnitTest package name.

E.g. if your library's class name is:


The related unit test class will be:


What about folders?

The suggestion is that unit test classes will live separately from source classes, e.g. in /tests directory.

Here is the example of a repository with unit tests that are named and placed according to the proposal.

What do you think?

0 6 100


I have the following method in a buisness operation that works on localhost but not on our server . I think it's how the firewall is set up but i was wondering if there is a known way around this. It can't correlate XML as it returns a "The browser did not send any authentication information" error. I tried adding in username and password to http request to no avail. We could do a c# proxy on a server but i'm wondering if there is a known way to fix this error within intersystems. As a developer we don't have too much control over our Intersystems TIE server. 

0 1 67


       Can anyone please advise me how to release API licenses from trakcare. This causes trakcare license issues .

Is there any script to kill the unused licenses from trak ? Is there any way to solve the issue?




0 1 198
Igor Titarenko · Sep 10, 2020 3m read
How To Create "Write-Only" Code

One of the leading benefits of ObjectScript is the speed and efficiency it allows for an experienced developer. Let's look at an example of how you can benefit from ObjectScript today.

Suppose you have a class that stores the names of your users. We'll call the class Data.User, and give it a string property Name. Next, we will need a method to create a new user or update an existing one. A naive, simplistic approach might look like this example:


0 8 267

We use ExecureProcedure() to execute a stored procedure which returns a result set. But we see lot of "Invalid cursor state" errors when the result set is empty.  The connection to SQL server database is made through ODBC. 

ERROR #6022: Gateway failed: Fetch. + ERROR <Ens>ErrGeneral: SQLState: (24000) NativeError: [0] Message: [Microsoft][ODBC Driver 11 for SQL Server]Invalid cursor state 

Here is the code snippet from the business operation class which uses EnsLib.SQL.OutboundAdapter  

0 0 94

I am trying to create a Procedure in Caché, but this message is showing:

<UNDEFINED>frmit+118^%qaqpsq *mt("v",1)

This is the procedure:

CREATE PROCEDURE testebi.sp_cargainicial()
    INSERT INTO testebi.Fato_Atendimentos (
    PK_OsProcedimento )
     from dado.TblOsProcedimento    ;    

0 2 87
OMAR ATEEN · Sep 2, 2020
hijri date

Hello all

How can I convert cache date to hijri date format in object secript.

please help.

0 8 111

Hi guys!!

In the system that I work, I came across an iterator pattern that uses the %Resultset library without performing the close after executing the query. Does anyone know how to say what are the impacts of not performing such a procedure?

If you have any model of iterator pattern made in caché to recommend as a good example, I will be grateful hehe  :D

0 5 123
Anna Golitsyna · Sep 11, 2020
Automatic Watch variables

I come from Visual Studio and now I use mostly Cache 2017 Studio. One debugging functionality I miss dearly is current local variables automatically appearing in the Watch Variables window together with their values. Yes, I can hover or type them myself but both actions take extra time which is especially noticeable when debugging unfamiliar code across many routines. Any Cache settings or plugins to that effect? If not then why not? And if nothing else is there in Cache, what are the alternatives or hacks in this respect?


0 12 143

While the integrity of Caché and InterSystems IRIS databases is completely protected from the consequences of system failure, physical storage devices do fail in ways that corrupt the data they store.  For that reason, many sites choose to run regular database integrity checks, particularly in coordination with backups to validate that a given backup could be relied upon in a disaster.

6 7 325
Marcio Coelho · Sep 9, 2020
Build Python bind

I'm testing with an application I'm writing in python.
But I noticed that the pythonbind3 library will only work on the same machine where the cache is running. Is there really such a dependency?

I'm trying to run the examples that are in the / dev / python / samples3 folder, but they only work if I set "LD_LIBRARY_PATH" with the path to the cache installation folder.

But... I have this error when LD_LIBRARY_PATH is empty:

0 1 75