John Murray · Jul 3, 2017 go to post

If you are working directly with globals (as your example seems to imply) you will have to iterate appropriately through your global, test the relevant value, and kill any node that matches.

Be sure that you also understand that a KILL will delete any subtree of the node you kill.

To efficiently maintain the sort of uniqueness you seem to be describing (i.e. for any Y there must be no more than one X for which $list(^myglobal(X))=Y) you will probably need to maintain a cross-reference (a.k.a. index) such as ^myglobalX("index1",Y)=X and check for the existence of a record here before saving a new record.

John Murray · Jul 3, 2017 go to post

Here's a way of discovering if your license includes the iKnow feature:

USER>w $system.License.GetFeature(11)
1
USER>

A return value of 1 indicates that you are licensed for iKnow. If the result is 0 then your license does not include iKnow.

See here for documentation about this method, which tells you that 11 is the feature number for iKnow.

Regarding namespaces, these are created in Portal, not in Studio. See this documentation.

John Murray · Jun 27, 2017 go to post

Gigi, you tagged your question "Developer Community", but I think that's primarily intended for posts about DC itself. Using one or more of the Ensemble-related subtags, e.g "HL7", might help your post.

John Murray · Jun 21, 2017 go to post

In Cache ObjectScript p_Branch isn't a valid identifier, because the underscore character is used as the concatenation operator.

Does your attempt work if you change p_Branch to pBranch ?

If not, please show us your SQL in its complete context.

John Murray · Jun 19, 2017 go to post

Coty, judging by the update you made here (where you originally raised this question as a comment one another post), for you the term "whole project" means "everything in a namespace". You have discovered that SET sc= $SYSTEM.OBJ.ExportAllClasses(filename) does what you want.

For many of us the word "project" refers to a Studio feature that allows us to group a subset of a namespace's code.

Studio projects can be manipulated programmatically using the %Studio.Project class.

John Murray · Jun 16, 2017 go to post

Then it definitely sounds like you need to rebuild indices. After doing that, please test again without %IGNOREINDICES and let us know if the results are correct. Then test again after your application has updated records for a while. If the difference appears again, either there's a bug that InterSystems needs to know about, or perhaps your app is updating globals directly using COS commands (i.e. not via Objects or SQL).

What is your $ZVERSION value? Perhaps you are running a version with a known problem in the area of index maintenance.

John Murray · Jun 16, 2017 go to post

That's good to hear Ranjith. So now please set the checkmark against Vitaliy's original answer. Only you are able to do this. It will mark the question as "answered".

John Murray · Jun 15, 2017 go to post

Caché telnet service exists only on Windows. On other platforms would you rely on OS-level telnet service? Nowadays on UNIX/Linux it's uncommon to find telnet, and ssh is typical instead.

If there's a concern about passwords travelling in plaintext, remember Caché telnet service can be configured to accept telnet over SSL/TLS.

John Murray · Jun 15, 2017 go to post

Vitaliy's answer pointed you to a classmethod that does the job. Sounds like maybe you're not sure how to invoke classmethods in Caché ObjectScript, so here's a transcript from a quick test run I did in Terminal:

USER>set bSame=##class(%Library.File).Compare("c:\s\junk.txt","c:\s\junk2.txt")
 
USER>write bSame
0
USER>set bSame=##class(%Library.File).Compare("c:\s\junk.txt","c:\s\junk.txt")
 
USER>write bSame
1
USER>w $zv
Cache for Windows (x86-64) 2017.1.1 (Build 111U) Wed May 17 2017 15:34:56 EDT
USER>

If Vitaliy's answer meets your needs please set the checkmark alonngside its title line.

John Murray · Jun 14, 2017 go to post

Gevorg, you can give Vitaliy credit for the answer by clicking the checkmark alongside the answer header:

This will also mark your question as "answered".

John Murray · Jun 14, 2017 go to post

If you can access WRC Direct at https://wrc.intersystems.com then it looks like there's a link to a page that might do what you want:

The footer on the page this leads to implies that any changes you make here will affect Developer Community:

Yes, it refers to Developer Connection not Developer Community, but I think that was a sort of predecessor.

John Murray · Jun 13, 2017 go to post

If you have Serenji you can combine the Serenji Shell with the CSP Shell and avoid having to remember how to use BREAK and ZBREAK commands:

Serenji can also debug pages initiated from the web browser.

John Murray · May 31, 2017 go to post

Do you mean Apache JMeter ?

I have no personal experience with it, but when reading the homepage info (see link above) I didn't see anything that made me think it couldn't be pointed at Ensemble and do something.

What part(s) of Ensemble are you hoping to test?

John Murray · May 30, 2017 go to post

Passing parameters to a routine requires the line label in the routine to have a formal parameter list. The SECURITY routine in the %SYS namespace doesn't accept parameters in this way.

John Murray · May 19, 2017 go to post

My guess is that the OP is working on a Caché system that supports the U2 language mode. Seeing the $ZVERSION string should tell us.

John Murray · May 18, 2017 go to post

Ponnumani, have you yet discovered the Search facility in Developer Community?

Granted, DC's search powers aren't brilliant yet. But I reckon that if you had searched for 'angular' (no quotes) before you posted you'd have found the first of @Chris Stewart's series of articles as entry #3 in the search results.

John Murray · May 18, 2017 go to post

In my opinion your method for ensuring the root node gets counted is already elegant, though perhaps worthy of a comment if you're writing it in a routine/method rather than issuing in at the command prompt.

John Murray · May 17, 2017 go to post

It can be done, but since all the SAMPLES code targets Caché and none of it uses the Ensemble features, why would you?

The Ensemble equivalent of SAMPLES is ENSDEMO.

John Murray · May 16, 2017 go to post

Shobha, presumably it wasn't deliberate that you seem to have posted this same question five times. Did you know that as the OP you can use the "Edit" tab, which contains an "Unpublish" button? That would let you remove the duplicates.

John Murray · May 15, 2017 go to post

As I understand it, the SU variant of the software is what's installed when you download from this page:

http://www.intersystems.com/library/software-downloads/

And as your error message states, this variant is barred from using a cache.key file to unlock further features.

I think you'll need a different software kit. AFAIK you'll be able to "upgrade" your current SU installation in situ without losing anything (provided you've followed the rules about how to name any of your own code that you store in %SYS).

Those of us with support accounts can download software kits via WRC Direct. But assuming you don't have such an account yet, the InterSystems folk who provided you with the evaluation key are probably the best ones to ask about how to get hold of the software kit you need.

John Murray · May 15, 2017 go to post

Ponnumani, if my reply above is sufficient for you please click the checkmark alongside its header. This marks the answer as accepted. Not sure which checkmark I mean? Below is an annotated screenshot:

John Murray · May 12, 2017 go to post

Can you show us the code of your while loop, in case DC members can suggest performance improvements?