#Caché

30 Followers · 4.6K Posts

  

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

Documentation.

Question Alexey Maslov · Aug 21, 2017

Hello everybody,

We have a piece of Caché software which calls an external utility using $zf(-1,command). It works fine under Linux, but under Windows an external process occasionally hangs (due to some internal problems out of the scope here) and need to be killed programmatically. Having PID, it's easy to kill a process. If a Caché process is called with JOB command, the caller can easily get its PID from $zchild, but alas $zf(-1) does not seem to return the similar info. Is it possible to get it somehow?

4
0 843
Article Fabian Haupt · Jan 20, 2017 8m read

This is the first article of a series diving into visualization tools and analysis of time series data. Obviously we are most interested in looking at performance related data we can gather from the Caché family of products. However, as we'll see down the road, we are absolutely not limited to that. For now we are exploring python and the libraries/tools available within that ecosystem.

The series is closely tying into Murray's excellent series about Caché performance and monitoring (see here) and more specifically this article.

4
1 1852
Question Coty Embry · Aug 19, 2017

I was wondering if there was a way to if the user is using Studio and changes a file to get the users name and have a function run when the file is changed. 

Ive got this working for .int files but not for .csp or .js or .css or any other kinds of files. 

When we edit code we are logged in to the Cache backend’s server through Studio by using an iPaddress (which is on our network).

5
0 488
InterSystems Official Andreas Dieckow · Aug 21, 2017
Project related quality assurance efforts have revealed a number of concerns for the current release of 2017.1.0 and 2017.1.1 on all OpenVMS platforms. In certain situations, the impact can be severe. InterSystems will address these issues with the upcoming 2017.1.2 release, and in the meantime, will remove all 2017.1.x kits for OpenVMS from our Download Servers.
If you have immediate needs correcting existing deployments of this version, please contact the InterSystems WRC (support@intersystems.com).
0
0 768
Question Laura Cavanaugh · Aug 17, 2017

Hello all,

In my ZEN login page, I found a way  to bypass the submit button and force a user to click on the Sign In button, thus forcing the code to call my OnSubmit(), like this:

<!--ondefault="return true;"--><!-- this removes the 

loginForm =

=

= javascript ]

In effect, this allows us to disable logins for all users, with the stroke of one global setting.

This works, and we're able to set a flag (which the LoginsDisabled property reads) to disable logins.

4
0 755
Question Nancy Grimes · Aug 8, 2017

After Microsoft updates my Cache Cube has stopped working.  I checked my cconsole.log and corrected my journaling errors.  However, I still receive Native Code 450 errors but now I am receiving Network Errors.  However, now there do not appear to be any errors logged in my cconsole.log.

I have reinstalled Cache Cube multiple times without success.  Can anyone please provide some assistance?

Thank you,

Nancy Grimes

903-786-2590

Nancy.Grimes2@va.gov

4
0 431
Question Token Ibragimov · Aug 16, 2017

Hi!

When trying to receive xml response 

set sc = ##class(%XML.TextReader).ParseString(str,.reader)

I'm getting error bellow: 

Invalid character (Unicode: 0x1A) while processing Anonymous Stream at line 2 offset 281

How I can ignore this error? Thank you.

2
0 464
Article Rob Tweed · Aug 17, 2017 1m read

Quite a few enhancements have appeared over recent months in QEWD for easing and simplifying the creation of REST-based services.  It's now even more slick and powerful,  allowing you to very quickly create very high-performance, highly-scalable REST (and Web) services that make use of Cache.

I've therefore updated the training presentation deck (Part 31 on developing REST Services with QEWD).  It describes all the new features with worked examples.  See:

https://www.slideshare.net/robtweed/ewd-3-training-course-part-31-ewdxp…

1
0 594
Article John Murray · Aug 17, 2017 1m read

Here's one way to determine if a class is mapped (i.e. it is in a package whose definitions come from a database other than the default code database for the current namespace):

SAMPLES>w ##class(%Library.RoutineMgr).IsMapped("Cinema.Film.cls")
0
SAMPLES>w ##class(%Library.RoutineMgr).IsMapped("%iKnow.Objects.Source.cls")
1
SAMPLES>

If you pass a by-ref second argument to IsMapped you can also discover what database the class definition is stored in:

SAMPLES>w ##class(%Library.RoutineMgr).IsMapped("%iKnow.Objects.Source.cls",.db)
1
SAMPLES>w db
^^c:\intersystems\ens171\mgr\cachelib\
SAMPLES>
0
0 751
Article Murray Oldfield · Nov 25, 2016 23m read

Hyper-Converged Infrastructure (HCI) solutions have been gaining traction for the last few years with the number of deployments now increasing rapidly. IT decision makers are considering HCI when scoping new deployments or hardware refreshes especially for applications already virtualised on VMware. Reasons for choosing HCI include; dealing with a single vendor, validated interoperability between all hardware and software components, high performance especially IO, simple scalability by addition of hosts, simplified deployment and simplified management.

7
1 3888
Question Stephen Wilson · Nov 22, 2016

TablePane1 is populated when a %ZEN.Component.button on a form is clicked from a JavaScript onclick method.

 onselectrow=zenPage.onSelectRow()

This JavaScript method gets the RowID and feeds it into ClassMethod GetAuditLogs(ByRef pRowId) [ ZenMethod ] to get the audit events for that record.

ClientMethod onSelectRow() [ Language zenPage.getComponentById(

The audit events are stored in a global and sorted by $H date/time value.

3
0 620
Question Tom Philippi · Aug 16, 2017

I'd like to access and view the soap log. Apparently there is a global for that (^ISCSOAP) (http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY…), but insofar I have been unsuccessful finding the exact cache command for viewing the soap log or changing it so that it logs both incoming and outgoing traffic. Can anyone enlighten me?

I.e. I am trying stuff like:

set ^ISCSOAP("Log") = io   

write ^ISCSOAP("Log)

but those don't work.

5
1 4606
Question Joao Palma · Jul 5, 2017

Hi

I've got a Service that get ACK Messages originated by another system. 

I want to get the details of a Message when the ACK is CE (Failed Message).

I don't know whether this is the best approach but, at the moment, I have a DTL and I would like to search the Cache Database for a Message with the Control ID on the ACK in the MSA segment.

Any help with this would be great.

Tks.

11
0 851
Question Mack Altman · Aug 11, 2017

Please excuse my ignorance. I am trying to identify what areas would be best to review in the System Dashboard (for Cache 2010.2) for performance issues with the database. It seems to be running slower than usual, but I am trying to find out the best way to go about identifying what the issue is.

The following are captures from the System Dashboard.

As always, thanks a lot for your help.

System Dashboard

3
0 661
Question George Hodder · Jul 17, 2017

Hi,

I am new to coding web services and trying to connect to an API that returns its format in xml or json.

I have a class as follows.. when I run I get back a 6059 in my status - Unable to open TCP/IP socket to server

Can someone help me identify what I am missing?  Thanks

Class Common.WebDownload Extends (
12
0 3472
Job Erika Stegagnini · Aug 15, 2017

Hello!

Intersystems is a fascinating yet niche marketed. We are using it, but we struggle to find good developers to join us to work on Caché or Ensemble products.

Who is interested into joining us? the job will be in Geneva, Switzerland!

For more information, please drop me an email to: erika.stegagnini@ch.randstad.com or call me directly +41 58 2015408.

Thanks! Erika

0
0 937
Question Jeff Gnatek · Jul 24, 2017

Hi all, I'm running into an issue with the installation, it seems like almost everything is working alright but upon trying to actual access the Management Portal, the site cannot be reached. I've noticed that the terminal indicates that Sign-on is inhibited. 

To add some context, I've installed Cache following the Unix instructions for MacOS (El Capitan). I can share the log or any other info that may be helpful. Here is some of the terminal output from the installation if it would prove at all helpful.

10
0 3404
Article John Murray · Aug 15, 2017 1m read

DC readers running Caché etc on Windows, configuring the Telnet service to use SSL/TLS, and using the Caché Telnet client (CTerm.exe) to make the Telnet connections may like to know that there's a fault in 2017.1 and 2017.1.1 which prevents CTerm.exe from establishing the secure connection.

Workaround is to use a pre-2017.1 kit to install on your client machines (e.g. 2016.2.2), or to fetch the bin\cconnect.dll from an earlier version (I used 2016.2.2) and use it as a replacement for the 2017.1 / 2017.1.1 copy.

0
0 654
Question Pedro Borges · Aug 14, 2017

Hello -- Is there a way to load a JSON from a file.

I have a "JSON" file which has a sting 1035164 long with the following format: 

[
    {
        "id": "12345",
        "title": "John Smith",
        "image_uri": "https://<some URL>",
        "image_timestamp": "1496781334",
        "image_url":"https://<some URL>

There are ~ 4839 entries. 

Is it possible to parse a JSON string by loading a from a file?

I tried this.

15
0 2857
Question Marek Bernád · Aug 11, 2017

Good day, every process in my software is about to update 3 specific globals in row when the process is called to do some job. I need to guarantee that during updating of those globals with multiple processes there is only one process that is actually working with those globals. Moreover I need my globals unreadable if other process is in critical area.


Example:


(for example globals: ^data1, ^data2, ^data3 are critical area)

Should I use somehow function $LOCK() or there is another way how this can be done?

8
0 989
Article Pete Greskoff · Jul 11, 2017 1m read

An installation or upgrade of Caché, Ensemble, or HealthShare on Windows could fail with the titled error if a newer version of the Microsoft Visual C++ Redistributable 2013 (x86) or (x64) is installed instead of version 12.0.30501.

If you encounter this error during an installation, you can get around it by uninstalling those versions of the redistributables in the Control Panel, then manually installing both x86 and x64 older versions directly from this link This problem has been corrected in maintenance kits 2016.1.4 and 2016.2.2 and all released 2017 versions by devchange ALE2949.

2
1 8437
Question Ruslan K · Jul 23, 2017

There is method:

$System.OBJ.New( ClassName As  %String = "" )

If class with name ClassName exists - everything is OK.

But, when class does not exist, there is error - <CLASS DOES NOT EXIST>

How can I check before calling $System.OBJ.New() if class witn name ClassName exists?

19
2 4765
Question Brian Shingle · Aug 7, 2017

Greetings!

I'm new to Zen reports and I'm wondering if what I'm trying to do is possible.  I have a classmethod  that accepts three parameters to generate an xml file from a global.    I've set up my Report Definition to call the ClassMethod that generates the .xml file; however, I'm trying to figure out how to pass the parameters to that ClassMethod from the Report Definition.  The example in the documentation shows parameter passing using SQL (which I'm not using), so I'm curious if this will work.  

2
0 519