#Caché

1 Follower · 4.5K Posts

  

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

Documentation.

Question Laura Cavanaugh · Jun 16, 2016

Hello,

I have a question about how to set the value of a radioSet.  Yes, I know -- the documentation says that setValue can be used "client side", but gives no example.  Plus, I'm trying to set the value of a radioSet in %onAfterCreatePage, which is a Zen method? Server side method? I'm not sure.

In my Zen page I create a radioSet like this:

<radioSet id="appRadio" name="appRadio" 
displayList="App One,App Two,App Three" 
valueList="One,Two,Three"/>

I want to select a radio based on a sepcific value, that I get from code.

e.g.

Method %OnAfterCreatePage() as %Status

4
0 680
Article Erik Hemdal · Jun 17, 2016 5m read

Setting the TZ Environment Variable on Linux

The Update Checklist for v2015.1 recommends setting the TZ environment variable on Linux platforms and points to the manpage for tzset. This is recommended to improve the performance of Cache’s time-related functions. You can find out more about this here:

https://community.intersystems.com/post/linux-tz-environment-variable-not-being-set-and-impact-caché

The manpage on my CentOS 7 test system (RHEL 6 says the same) has this to say:

0
0 139831
Question Francis Galiegue · Apr 27, 2016

Hello,

I am still a beginner with COS and am struggling with these concepts. While digging through the official documentation will eventually tell you everything you need to know, getting started is nevertheless not an easy feat...

Is it possible to create a "lists/array/multidimensional 101" page for beginners? And, for instance, its interaction with $data, what it means to use "as list of something" or "as array of something", how to walk lists, how to add/remove elements, how to extract sublists etc?

12
0 654
Question Mike Kadow · May 1, 2016

I am hoping some of you network guys have ideas. InterSystems seems to be at a standstill. When I startup Studio and try to start Terminal I get License Limit Exceeded. Starting with Terminal and going to Studio, same thing. It started when I put down a 2016 version of Cache on top of a 2015. InterSystems told me to uninstall everything and start fresh. I did that but have the same problems. What can I look at? How do I start to debug this? Although I am the only one on my PC it is really impacting my performance.

-thank you

5
0 1270
Edit
Article Katherine Reid · Jun 15, 2016 1m read

Question

 What version of Caché supports TLS v1.2? 

Answer

Caché uses the openssl library for SSL/TLS support.  On Windows, Linux and Unix, a version of this library is included with the install kit.  Caché 2014.1.3 and 2015.1.0 ship with the openssl 1.0.1j library.  TLS v1.1 and v1.2 support is first available in openssl version 1.0.1, so Caché 2014.1.3 and 2015.1.0 are the first versions to allow the use of TLS v1.1 and v1.2.

0
0 4
Article Attila Toth · Jun 15, 2016 1m read

Hi All,

I've created a sample implementation of the MQTT protocol, which is now available on GitHub

The project demonstrates MQTT client capabilities and it's written in Caché Object Script.

Any comments, bug reports are welcome! Some more enhancements (like SSL / TLS support) are planned for the near future.

0
0 662
Article Stefan Wittmann · May 31, 2016 12m read

Introduction

The field test of Caché 2016.2 has been available for quite some time and I would like to focus on one of the substantial features that is new in this version: the document data model. This model is a natural addition to the multiple ways we support for handling data including Objects, Tables and Multidimensional arrays. It makes the platform more flexible and suitable for even more use cases.

12
0 2786
Question Simcha Gershon · Jun 9, 2016
 
Other recipients:

 
Hi I'm trying to inser a button into a grid cell with no sucssess. You can see what I get, I don't understand what I'm doing wrong, can any one help me Thanks This is my code : content = { children: [ {type:'$ContentPane',key:'layoutContainer-1',st

Hi
I'm trying to inser a button into a grid cell with no sucssess. You can see what I get, I don't understand what I'm doing wrong, can any one help me
Thanks
This is my code :
 
content = {children:

1
0 367
Question Nikita Savchenko · Jun 1, 2016

Hello!
Are there any short ways of serializing COS entity to the string? I am searching for something like .$toJSON() , but I need Caché 2013.* support.

The one way I supposed to work is to use $listbuild:

set str = $LISTTOSTRING($LB(1,2,3,",",5))
set list = $LISTFROMSTRING(str,",")
zw list
list=$lb("1","2","3","","","5")

 

But the problem is that $listbuild does not escape delimiters, and it is not possible to deserialize serialized string. The structure I need to serialize may contain any characters.

Are there any short ways to do this in Caché to avoid writing custom parser?

15
0 3319
Article Evgeny Shvarov · Mar 9, 2016 2m read

Hi!

Here is small "How to" again.

Suppose you need to share something with source code. How can we manage it on DC?

Sharing code snippets

1. Add normal post (not Code Package).

2. Paste your code in the post and format it with highlighting as it is described here.

3. If you see that your COS code is highlighted wrong it means that autodetect missed with language. Open the post's HTML ("disable rich-text" button below the Editor) and put class=COS parameter into the code tag.

Example:

2
0 546
Article Mike Kadow · Jun 11, 2016 2m read
NewBie's Corner Session 7 True and FalseWelcome to NewBie's Corner, a weekly or biweekly post covering basic Caché Material.Click on the Caché Cube in your system tray and select Terminal to try out these commands.In COS, a 0 is false and any other number (positive or negative) is true.Set X=1If X Write "True"          ;  1 is true and 0 is falseTrue Set X=0If X Write "True"          ;  0 is false<>  Set X=10If X Write "True"          ; Any number other than 0 is trueTrue Set X=-10If X Write "True"          ; Any number other than 0 is true, even negative onesTrue Set X="1"If X Write "True"
0
0 389
Article Alexander Koblov · May 20, 2016 12m read

Order is a necessity for everyone, but not everyone understands it in the same way (Fausto Cercignani)

Disclaimer: This article uses Russian language and Cyrillic alphabet as examples, but is relevant for anyone who uses Caché in a non-English locale.Please note that this article refers mostly to NLS collations, which are different than SQL collations. SQL collations (such as SQLUPPER, SQLSTRING, EXACT which means no collation, TRUNCATE, etc.) are actual functions that are explicitly applied to some values, and whose results are sometimes explicitly stored in the global subscripts. When stored in subscripts, these values would naturally follow the NLS collation in effect (“SQL and NLS Collations”).

7
1 3115
Question Danny Spell · Jun 9, 2016

I've been in IT since 1986.

I started with Pr1me INFORMATION and Primos on Pr1me hardware.

In the 90s and 00s, I used D3.

I'm giving Caché a try, but I'm kinda having some difficulty getting started.

I've installed Caché on a 64-bit Windows 7 workstation. It was installed under an administrator's account. From a standard users account, I'm trying to access the Management Portal at:

http://localhost:57772/csp/sys/UtilHome.csp

It is prompting me for credentials. Which ones do I use? I've tried several, but nothing is working.

5
0 429
Question Nikita Savchenko · Jun 6, 2016

Hello!

I have a WebSocket application which spawns new process using JOB command.

Sometimes WebSocket connection can be terminated, and in the meantime I need to hold spawned process alive until it can be associated with the new WebSocket connection. (Do not suggest serializing process state here instead please)

Technically, in Caché WebSocket connection is represented by the class, which executes in its own process. This process is terminated when the connection is lost. In this case the JOBbed process does not terminates (thanks Edward), but it rely on $ZPARENT variable.

11
0 449
Article Steve Brunner · May 19, 2016 1m read

I am pleased to announce the field test of Caché and Ensemble 2016.3 -  with many new improvements.

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

Some of the more signification changes in 2016.3 are new RESTful APIs for iKnow and broader APIs for programmatic control of multiple servers (enterprise manager).  As always, there are a host of scalability and performance improvements, including improvements to the core database and SQL.  And hundreds of smaller improvements and corrections.

8
0 1041
Question Isaac Aaron · Jun 3, 2016

Hello

During some consultant activity I did at a client's I have discovered something very interesting. It seems like the current processing cycle as written in ObjectScript has trouble utilizing an SSD-based storage machine with five-digit IOPS.

6
0 2723
Question Harry Tong · May 31, 2016

Recently I was asked by a customer with this question. In MS SQL Server, there is a function called host_name() that will return the work station name.

Here is how I would do it in Caché :

With default SQL schema name, in my case SQLUser in SQL (which is equivalent as User in Caché class definition), I have a class called User.dummy, I added a classmethod called hostname and expose it as SQL function host_name:

4
0 1538
Question Peter Kopp · Jun 2, 2016

I have a ZEN page with buttons, text boxes and a tab group. The tab group contains a single tab which I use to display an image(src). When the user, uses the browser zoom capabilities to reduce or enlarge the image, the other controls are reduced or enlarged as well. How can I reduce or enlarge the tab src alone? Thank you for any and all input.

1
0 422
Article Mike Kadow · Jun 2, 2016 3m read

NewBie's Corner Session 6 If and Kill commands

Welcome to NewBie's Corner, a weekly or biweekly post covering basic Caché Material.

Click on the Caché Cube in your system tray and select Terminal to try out the commands.

As in other computer programming languages, the If command is the primary decision makes.

If command with numeric operands

Set X=12
If X=12 Set X=13
Write X
13

If command with alphanumeric operands

Set X="ABC"
If X="ABC" Set X="XYZ"
Write X
XYZ

Whenever alphanumeric data is being referenced, quotation marks are required.

Kill command

0
0 485
Question Alexandre Marques · May 16, 2016

I have a homeTemplate and ExamesTemplate page. When I'm in ExamesTemplate and make a resfresh (F5 browser), the page back to the HomeTemplate. I need the page ExamesTemplate not return HomeTemplate.

I'm using ZenMojo with Bootstrap

Can someone help me?

Thanks.

4
0 497
Question Marco Blom · Apr 2, 2016

Hi,

I am working on a DataGrid based upon ZenTest.Datagrid.cls

I want to save data after changes on a row.

The existing samples do not explain how to save changes on data in a grid.

I have tried something like zen(‘json’).save

Does anybody has some sample code?

4
0 1016
Question Andy Richards · Jun 1, 2016

I have a production system that has a large dataset of about 2 million rows. I need to create an index on a property but don't want it available to queries until the index is fully populated. Is there a way I can create the indexed, fire off the build, then "activate" the index so queries can use it.

3
0 519
Question Steve Pisani · May 25, 2016

Hi,

Assume an architecture where an ECP Database Server is connected to by one or more ECP Application Servers inside a firewall.The application server hosts the web application that web users connect to.

The Web servers are outside the firewall, and, (using the CSP gateway/server mechanism) issue requests over the SuperServer port and into the application server.

I know that the traffic between the Web Server and the ECP application server can be encrypted using HTTPS, and access to the CSPServer on the Application server is username/password secured.

2
0 4782