For debugging purposes I sometimes need to display stack information to the current device or save it (to a global for example).

There is this snippet offered in documentation:

ClassMethod StackToDisplay()
    For loop = 0:1:$Stack(-1) {
        Write !, "Context level:", loop, ?25, "Context type: ", $Stack(loop)
        Write !, ?5, "Current place: ", $Stack(loop, "PLACE")
        Write !, ?5, "Current source: ", $Stack(loop, "MCODE")
        Write !

And to save stack to a global there's always an exception method:

0 11
0 1,237
· Feb 19, 2016 2m read
Simple $system.Event examples

The attached file contains two $system.Event examples that processes work asynchronously using persistent queues:


This is a very basic example that creates some worker processes and then enqueue messages to them using $system.Event.

3 6
0 1,038
· Jan 25, 2016 1m read
2016.2 Field Test

I am pleased to announce the field test of Caché and Ensemble 2016.2 - an exciting new release with improvements on many different fronts.

The entire product team at InterSystems looks forward to your participation in the field test and feedback over the coming months.

Some of the more profound changes in 2016.2 include:

6 6
0 1,062


We use iKnow's GetSimilar for decision making. Right now we have a domain with both good and bad documents and using GetSimilar we want to see if a document is more similar to the good ones or the bad ones. To do this we simply compare the weighted average of the score from the good ones and the bad ones that GetSimilar returns.

The problem is that GetSimilar doesn't always return the score to all other documents. Assuming we have 50 documents I would expect the following result:

0 1
0 306

If you are waiting for the Kindle Edition of Caché and MUMPS – Part II, I must apologize. I believed what others told me that once I have a book manuscript, the Kindle manuscript will be easy. Being a programmer I should have remembered: "never assume anything." The conversion to Kindle is proving a much bigger task than I thought. But don't lose heart, I am working full time on it. I have as my goal before May 1st. But, then again, you know what they say about goals. ;) - - Paul Mike Kadow

1 0
0 290
· Mar 22, 2016
How does Zlogin work

Hi Community: I have a legacy Caché based app that has Zlogin or %Zlogin routine. I understand that such routine will be invoked as soon as the user logs in. Can someone tell me where to find such routine? The namespace where the user connects to? Or in CACHESYS? Thanks, HT

0 3
0 326
InterSystems Official
· Jan 27, 2016 1m read
OpenSSL 1.0.2

At the end of this year support for OpenSSL 1.0.1 will end. InterSystems has started the process to move to OpenSSL 1.0.2 and use the 1/28/2016 release (1.0.2f) for verification and product inclusion. I will update this post once InterSystems decided which versions will receive support for OpenSSL 1.0.2.

0 1
0 425

Please consider these two concepts:

Concept 1 - Web Service or Web Application or Server Side

Concept 2 - Client Service or Client Application or Client Side

Maybe I am just a Web/Zen newbie, if I am and you all understand this, I apologize. (no nasty remarks please)

The questions are numbered, if you wish to respond to an individual question please precede it by the question number.

  1. Is there consistency in naming these concepts?
0 2
0 388
InterSystems Official
· Mar 17, 2016
Caché and Ensemble 2016.1

I am happy to announce the immediate availability of Caché and Ensemble 2016.1.

The highlights of 2016.1 are

  • Significant improvements in JSON support
  • Continued advances in SQL performance
  • Database scalability improvements
  • New REST services for DeepSee

These and other new features are summarized in this video introduction to 2016.1

For complete technical details of what’s changed in 2016.1, review the Caché release notes and the Ensemble release notes.

7 2
0 910


posted some weeks ago in the "old" ZEN Google Group, maybe someone here can help to understand how to properly setting up a csp applications and contributing from the build-in caché security mechanism.

I´ve created a webapplication and wan´t to add further security to it using the smp. But... first things first.

I have two Databases let´s say DB1-LOGIN and DB2-Application. Each of this DBs has a resource assigned. DB1-LOGIN has a resource %DB1-LOGIN which has a public permission of 'read'. DB2 has a resource as well %DB2-Application with no public access.

1 7
0 532
· Mar 15, 2016 1m read
Code metrics over time

Among the outputs of our Yuzinji tool are two code metrics that it can be interesting to track over time as a development project proceeds. These are Size and XS. The first is fairly straightforward. As you write more code the size of your codebase increases. The XS metric (pronounced "excess") aims to quantify excessive structural complexity.

1 3
0 288



>/tmp/compilew.log &>/tmp/compilew.log ; tail /tmp/compilew.log

to redirect the output to the stdout. Somehow the javac has wierd behavior with the output on errors and verbose information.


i want the JAVA-Projections and wrappers to compile after Caché created the files. The creation of the files works 100%.

My addition to createProjection in our Projectionclass is following:

0 2
0 279

If I have defined a class query in one of my classes and I want to use that query from a method of another class, what are the pros and cons of using the %SQL.Statement interface versus the %Library.ResultSet interface?

I believe %SQL.Statement is the newer interface.

So if the old way is:

USER>s rs=##class(%Library.ResultSet).%New("%Library.File:FileSet")
USER>s sc=rs.Execute("c:\s\","*.txt")
USER>w sc
USER>while rs.%Next() {w !,rs.Data("Name")}


then the new way is:

2 12
0 1,436

In the documenations at this location http://docs.intersystems.com/enscomm20152/csp/documatic/%25CSP.Documatic..., the normalize method applies normalizaion for text using the defined manguage and dictionary.

I want to normalize my iFind queries. How can I use the normalize method ? any code sample ?

I want also to delete properly the iFind index. Deleting all the rows in the table is sufficient ?

0 1
0 271

I have a tablepane in my Zen page that is tied to a class query. When the page first loads, the table is empty. A button onclick event causes the tablepane query to execute and load query results into the table. I want an onchange event from a datalistbox to clear the tablepane so that it looks empty as it was when the page first loaded. I have had no luck fiddling with javascript in the datalistbox's onchange.

0 1
0 313
· Nov 9, 2015 1m read
iFind Search Portal

A simple and rather automated search portal leveraging iFind capabilities for rich text search in 2016.1. It has simple faceting, result ranking, highlighting of search results etc and just works off any table you point it to that has an iFind index by appending ?t=MyPackage.TableName to the URL.

See also https://github.com/bdeboe/isc-iknow-ifindportal for more details and the latest version.

0 3
0 350

I would like to know how to get the key value from a dropdownmenuitem placed on a navbar.

I have tried to get from onselect and onchange events of the template class, but it didn´t work.

According to the snapshot attached I am trying to retrieve the values from 'action-1' and 'action-2'.

I have attached a ZIP file with a snapshot which value I am trying to retrieve and example classes.


1 8
0 293


Can a Cache Mirror be used in the cloud ? (ie stand up a Primary and Backup member instances in a High Availability Cache Mirroring configuration)

I'm investigating the validity of this configuration, because I was of the understanding that this may not possible due to these cloud servers not (typically) having fixed ip addresses, which interferes with the Virtual IP settings for the mirror set.

Is this correct, and if there are workarounds (like Load Balancing ?) can I have details on how this should be configured ?

1 8
0 795