#Caché

1 Follower · 4.5K Posts

  

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

Documentation.

Question CM Wang · Aug 18, 2017

I want to manipulate all the objects whose type is%Dictionary.StorageSQLMapDefinition by %OpenId

However, I don't know the exact id to feed into %OpenId, is there a way to query all the existing ids of %Dictionary.StorageSQLMapDefinition in a namespace?

Thanks.

3
0 438
Question Ruslan K · Aug 22, 2017

The dataCombo property columnHeaders is a comma-delimited list of column headers displayed in the dropdown list.

Comma is a delimiter.

But, if I want add comma to columh header, for instance "House number, apartment" - this is value for header of one column.

How can I escape comma in this case?

"House number\, apartment" - is not working. 

26
0 616
Question Uri Shmueli · Aug 22, 2017

Hi

Does anybody know what happend to %SYS.GSET routine in Cache 2016 ?

In Cache 2013 it still existed, I didn't find anything about it in Cache realese notes 2014 and 2015.

Uri

10
0 461
Article Sean Connelly · Aug 21, 2017 2m read

tl;dr I have discovered that using $THIS in a very specific way will make persistent objects go stale.

I found that it only happens when using $get on an array that contains the OID reference of $THIS. I assume that this is an unwanted feature and have raised a WRC. The problem can be recreated following the steps below, I have also posted the workaround that I am currently testing and looks to be working fine.

1. Create a persistent class...

7
0 438
Question Kurro Lopez · Aug 23, 2017

Hi all,

I need to create a routine to modifiy some values in a global.

My first attempt was:

    // Search the first position of Messages
    set pos=$Order(^Ens.MessageBodyD(""))
    while(pos > 0){
        // Get the class name
        set clase = $Order(^Ens.MessageBodyD(pos,1))
        if (clase="MensajesRestResponse")
        {
            // Do the convertion
        }
        set pos = $Next(^Ens.MessageBodyD(pos))
    }

but if I use a *.bas file (cache basic script), I'm not able to use these commands ($Order and $Next) and I don't know how to translate theses words.

3
0 544
Article Robert Cemper · Aug 23, 2017 2m read

I worked through the Community for proposals to provide end users
in an easy way with data formatted as EXCEL sheet.

There is a great article Tips & Tricks - SQL to Excel

there's an important message embedded: "EXCEL can interpret HTML tables and display them as usual"

Where's the light weight export to EXCEL ?
Good old CSP is well equipped to produce HTML tables accepted from EXCEL as input.
With modern Browsers you don't even need <head>and  <body> tags.
So the required code around your SQL result set is really slim.
And you are free to add any formatting you need either by HTML or in SQL.

1
1 1669
Article Murray Oldfield · Apr 8, 2016 17m read

This post will guide you through the process of sizing shared memory requirements for database applications running on InterSystems data platforms. It will cover key aspects such as global and routine buffers, gmheap, and locksize, providing you with a comprehensive understanding. Additionally, it will offer performance tips for configuring servers and virtualizing IRIS applications. Please note that when I refer to IRIS, I include all the data platforms (Ensemble, HealthShare, iKnow, Caché, and IRIS).

3
9 11083
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 731
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 1760
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). 

I know now there are concepts of file locks and logs for when certain tasks are ran or when a user maybe edits a file

5
0 439
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 716
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 ability to use "return" to login forces button click to login -->

<loginForm id="loginForm"   ondefault="return true;">

4
0 716
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 378
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 422
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 553
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:

0
0 693
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 3753
Question Stephen Wilson · Nov 22, 2016

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

<button caption="Search" onclick="zenPage.onSubmit();"

TablePane1 also has a JavaScript onselectrow method zenPage.onSelectRow() that gets the currently selected RowID.

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.

3
0 569
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 4368
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 778