#Caché

30 Followers · 4.5K Posts

  

InterSystems Caché is a multi-model DBMS and application server. See more details here.

Documentation.

Question Glenn van Bavel · Apr 11, 2017

Hi,

Terminal says "Unable to open Registry key 'SOFTWARE\Microsoft\Windows\CurrentVersion\CommonFilesDir.1" when I execute $$Register^SNMP().

For monitoring purposes I want to use SNMP in Ensemble. One of the steps I have to do is to use the method $$Register^SNMP() in the terminal "%SYS" namespace. This is mentioned in a Intersystems Docs page.

Monitoring Caché Using SNMP

  • Caché expects the SNMP service to be installed before you install Caché, so it can add iscsnmp.dll to the proper Registry keys. Once Caché is installed, the SNMP service must be restarted so that it properly loads iscsnmp.

5
0 1677
Question Raul Munoz · Apr 4, 2017

Hello,

I have been involved with using terminal scripts lately (I use GE Centricity Business), that usually do not go beyond 'send:' and 'wait for:' commands.  Notwithstanding, I have been stuck with the message boxes since the script recorder does not record over this whenever I need to click 'Yes' in a given message box prompt which aggressively stops my scripts/macros from continuing.  I know that this commands are labeled 'Extended Escape Sequences', but I have been looking all over at the Intersystems document repository with no luck in finding anything of the sort.  I have, however, fou

7
0 653
Question Sebastian Thiele · Apr 7, 2017

Hi,

is there a way to implement the behaviour for a zen dataCombo? Let´s assume the dataCombo retrieves it´s data via sql query, lets say 50 records. Now the user type into the input of the datacombo 'a', which shall auto select the first entry beginning with character 'a'. If the type 'a' again, the next item from the list is selected. What I am looking for is an approach to implement such an behaviour. See a simple <select> component which support the desired functionality out-of the box.

I´ve found an old google group entry on this (https://groups.google.com/forum/#!searchin/intersystems-zen/

3
0 449
Question Gordon Hodgkinson · Apr 9, 2017

Hi All,

Am attempting to run sample unit tests as per

Caché %UnitTest Tutorial
Example: Executing a Test Using Set-Up and Tear Down Methods
 

 and getting an ERROR #5007:

The Terminal detail is as follows:

SAMPLES>Set ^UnitTestRoot="C:\UnitTests"                                        
SAMPLES>write ^UnitTestRoot
C:\UnitTests
SAMPLES>do ##class(%UnitTest.Manager).RunTest("MyTests")
 
ERROR #5007: Directory name '/usr/cachesys/mgr/samples/C:/UnitTests/MyTests/' is invalid
SAMPLES>

The '/usr/cachesys/mgr/samples/' part is the correct path for the namespace 'SAMPLES' and the 'C:/UnitTests

2
0 571
Question Ashok S · Apr 6, 2017

Based on user request in zenpage, i am running the method ConvertMDXtoJSON in background and loading the status in progressbar.

D ..%RunBackgroundMethod("ConvertMDXtoJSON",MDX)

From this background method ConvertMDXtoJSON() i want to return the value(sjson) and store it into session.

How can i do this?

Below is my code. 

ClassMethod ConvertMDXtoJSON(pMDX) As %String
{
  Try 
  {
      Do ..%SetBackgroundMethodStatus("Started",0)
      set Params = ""
      set pStatus = $$$OK
      set RS = ##class(MS.Deepsee.MDX2JSON.ResultSet).%New()    
      set pStatus = RS.%PrepareMDX(pM
4
0 2170
Question Stephen Wilson · Apr 5, 2017

I know there's a whole chapter on the subject but I would love a super simple video demo or sample configuration or training course. The myriad menu of options and unfamiliar prompts can make it a bit daunting. The challenge is simple. Send an email notification if the license usage exceeds n% LU consumption.  Why? A recent software change seemed to be responsible for causing the LU total consumption to reach 100%. That means users can't get logged in and support staff can't access the System Management Portal. A pretty daunting situation I am sure you all would agree.

I have managed to use the

3
0 540
Question Raghuram Devarakonda · Apr 4, 2017

Hi,

The command "##Class(Backup.General).ExternalFreeze()" switches journal files as can be seen in the following log message:

"Journaling switched to: /cache/mgr/journal/20170331.003

Backup.General.ExternalFreeze: Start a journal restore for this backup with journal file: /cache/mgr/journal/
20170331.003"

It is not clear to me whether the data files are updated with all the transactions from journals prior to this new journal file, before write daemon is suspended. Put another way, if I backup the data files after Freeze command and then bring all of them back (say on another machine), is it mand

8
0 709
Question John Murray · Apr 6, 2016

Here is a screenshot from my 2016.2 FT instance of Studio and Ensemble:

I don't recall having seen the highlighted "+" suffix on document names previously. Who can tell me what it denotes?

I originally posted this in the Field Tests group but it turned out to be a 2016.1 feature that I hadn't previously noticed. So I subsequently moved the post to the Cache group.

11
0 934
Question Raghuram Devarakonda · Mar 30, 2017

Hi,

After restoring all the Cache related files on a machine, I am performing journal recovery using the command "^JRNRESTO". It works as described in the document and the recovery succeeds. However, the command is interactive. Is there a way I can run it in a programmatic way? I don't want to just supply a text file containing answers to all the prompts. I am wondering if there is way I can pass all the information upfront to the command.

Thanks,

Raghu

6
0 490
Question Bapu Hirave · Mar 24, 2017

here is my $ZV string "Cache for Windows (x86-64) 2016.2.1 (Build 803) Wed Oct 26 2016 12:43:35 EDT"

 two questions

1. How do i convert any Persistent object to JSON String ?

2. How do i convert an y Register object to JSON string ?

3. Do i need to extend from any adaptor class for 1 & 2 ?

11
0 5400
Question Alexandr Ladoshkin · Apr 4, 2017

Hello everyone. I have some problem with selecting my own globals from namespace. My task is select only globals created by me.  Follow my code, I get all globals from given namespace. 

SET NAME="" F  SET NAME=$ORDER(^$GLOBAL(NAME)) QUIT:NAME=""  DO

Please help me with excluding system globals. I need work only with my own globals.

2
0 401
Question Tamer Rajab · Apr 3, 2017

how to exclude weekend(Friday) in sql statement i trade use select datediff(WK,date1,date2) but not working even i chose (Dialect mssQL)

Thank You

1
0 394
Question Stefan Cronje · Mar 18, 2017

We are planning to use Caché users on a SOAP web-service, so the WS-security tokens will be used.
It will be username and password only for now.
The passwords should expire on a regular basis and this will be configured in the system-wide security settings.
The consumer of the web-service should be able to change their password on-demand or when it has expired, via a web-service call.

For the on-demand change, I can create a service method which can be called by the consumer to change the password.

In the case of an expired password, I am unable to figure out how the password can be changed via a s

5
0 2346
Question Massimo Sebastiani · Mar 30, 2017

Hello, we have a few hundreds of triggers to port from Oracle to Cachè for a migration project, and many of them have to change (for example, normalize a value, null it, etc) the value which is being inserted.

The documentation says "You cannot set {fieldname*N} in trigger code." , so we're unlucky.

Is there a good workaround for this ?

SqlComputeOnChange doesn't seem the best way, but I'm not totally sure: for example normalization and validation could have a better place somewhere else than a trigger.

2
0 453
Question Jorge de la Garza · Mar 10, 2017

What are the differences between a process private global and a percent variable?  Basically I have some code running in an Ensemble operation that processes requests, and it needs access to pieces of data that are scattered throughout XData blocks in various classes.  Rather than opening the XData object and deserializing the XML on each request, I opted to cache this data in a percent variable, something like:

set %MyVar(sub1,sub2) = myValue

Which works out nicely: it's accessible from any code invoked by the operation, it persists for as long as the operation is running, and I can clear it ou

10
0 1997
Question Stephen Wilson · Mar 29, 2017

I was wondering if anyone has combined ZEN Web Development with frameworks such as W3Schools W3.CSS Framework or the popular Bootstrap Framework

We are currently using Caché 2013.1.6 so we do not have ZEN Mojo installed which ships in Caché 2014.2 or later.

What would be the recommended approach if looking to integrate one of these frameworks?

I look forward to hearing your suggestions!

7
0 760
Question Evgeny Shvarov · Apr 1, 2017

Hi, Community!

Is there an option to get an archived file of globals in one command. Say for:

Do $System.OBJ.Export("Class1*D.GBL,Class2*D.GBL","data_gbl.xml")

get something like:

Do $System.OBJ.Export("Data*D.GBL","data_gbl.gz","gzip")

And also to have the convenient one click way to  import it to the namespace via terminal or Control Panel?

If anyone already has this module, share please?

It would be very convenient for import/export/continuous integration purposes cause globals can be really heavy.

8
0 988
Question Alexey Maslov · Mar 28, 2017

Due to a new project I'm getting involved inside %Installer stuff deeper than ever I'd be happy to. Most of it was pretty easy to get, thanks to documentation, articles and SAMPLES example, while I can't dig good solution for one problem. I'm trying to import and compile some classes, willing to ignore two types of errors: 5202 (NothingToCompile) and 5373 (PredecessorClassDoesNotExist - a normal case when SNMP sampling class is compiled for the 1st time, before it was registered). 

I've tried the following: 

<If Condition='#{##class(%File).Exists("${AddonDir}/AddClasses.xml")}'><Import
11
0 601