#Caché

30 Followers · 4.5K Posts

  

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

Documentation.

Question GUILHERME CRUZ DA CUNHA · Aug 10, 2016

I'm with a problem in a property, where she has two parameters that conflict, DISPLAYLIST and VALUELIST.

In screen when I'll go to set value in the field, the CACHE transform internally the property of LOGICAL to DISPLAY with propertynameLogicalToDisplay(propertyname), far so good.

My problem is in the property, why, by default she send the value as DISPLAYLIST, in hour of transformation as the value is DISPLAY MODE the error occurs.

How I do to that default value be VALUELIST and not DISPLAYLIST?

7
0 896
Question Brian Palmund · Aug 9, 2016

I cant find any description on how to read custom http request headers in a REST service.

On some occations i want to read http headers passed along when customers uses our REST API or headers added by the CND provider. Does anyone know how to read these http headers?

For example:
cloudflair.com sends a vistors country information along to the server using a customer http header called "CF-IPCountry". We would like to read this information and use it for statistics.

3
0 2117
Article Mike Kadow · Aug 9, 2016 4m read

NewBie's Corner Session 15 Executing Routines and Labels

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

Routines and Labels

Routines are computer programs with a number of executable code lines.

Labels (also called tags) are points in a routine that can be called (executed). They subdivide routines into manageable modules (or subroutines).

Routines, Subroutines/Modules and Functions

0
0 364
Question Marc Alcala · Aug 4, 2016

Using the method ##class(%SYSTEM.Process).GlobalReferences() I'm able to know how many global references has been done in the process. But I'd like to know how many of those references has been done by my code and how many has been done by Cache itself.

When from a class I execute a method of another class, Cache is internally accessing globals (I suppose to get the code of the called method). I would like to not count those accesses done by Cache.

For example:

6
0 908
Question Scott Beeson · Aug 4, 2016

Using Node.js with Caché - Introduction says the following:

The cache.node module is the Node.js interface for the GlobalsDB kit, which can be obtained from the GlobalsDB download page (http://globalsdb.org/downloads/). The Node.js interface can be used with either Caché or the free GlobalsDB database.
The installation kit includes detailed documentation on how to install and configure the cache.node module.

However, http://globalsdb.org/downloads gives a 404 and http://globalsdb.org just redirects to intersystems.com

Where can I find the files I need?

3
0 999
Question Bapu Hirave · Aug 4, 2016

Hello Cache experts,

Has anyone tried using Cache object script to check windows service is running or windows service installed or not on same computer or remote computer ? basically i am trying to develop cache program which will check "windows service" running or installed on current computer or remote computer. Based on the status of this windows service, i want to write some business logic in our application. Any suggestions will be more welcome

1
0 569
Announcement Rustam Ibragimov · Aug 4, 2016

Hello, guys. 

We have recently created a syntax highlighting for COS for Atom text editor. You can find it on https://github.com/intersystems-ru/atom-language-cos

Installation: 

  1. Download or clone this repository
  2. Copy everything to ~/.atom/packages/
  3. If you have your Atom editor open, then you need to reload it (enter  Window: Reload in Command line)

It's been few days since the release, so please if you find a bug, let us know through creating an issue or forking and making a pull request. 

P.S. After it gets more or less usable, we will use this syntax as a basis for GitHub highlighting for COS.

0
0 617
Question Lucy Arnold · Aug 3, 2016

Hello,

I'm using studio for the first time.  I copied the Security.Users Class to my own UCDavis.Security.Users

I can't edit the copied file.  I totally get why I can't edit the Security.Users class - but why is it stopping me from editing the class I created??

Thanks in advance!

Lucy

4
0 836
Article Mark Bolinsky · Jan 25, 2016 1m read

The release of IBM POWER 8 processors with AIX 7.1 introduced up to 8 SMT threads per processor core (logical or physical).  Which SMT level (1, 2, 4, or 8) to use can be confusing and varies based on multiple factors.  This article is meant to help with a starting point for your specific application.

Firstly, if running on a version of 2014.x or older, it is advised to use SMT 4 or lower.  SMT 8 with those older versions of Cache' has shown a decline in performance and scaling in benchmarking applications.

3
0 3013
Question Joan Cruz · Aug 2, 2016

Hi all,

I'm using $ZUTIL(49) to get information of the databases I want to add to a mirror. This information is passed to ##class(SYS.Mirror).CatchupDB(plstPathDatabases)  in order to Catchup all databases addes to a Mirror.

I know that ZUTIL is deprecated and I'd like to know what function or functions I have to use in order to get all necessary information for CatchupDB.

Thanks a lot

11
0 840
Question Mike Kadow · Jul 18, 2016

I have a NewBie Question.

I have been playing around with "Basic CLass Queries."

I  have defined a very simple "Basic Class Query." (see below)

However, I cannot find in the I/S documentation how to execute this query.

Any help is appreciated.

Class LastName.BasicClassQuery Extends LastName.Person
{
Query Display() As %SQLQuery (ROWSPEC="ID:%Integer,Name:%String", CONTAINID = 1)
{
SELECT %ID, Name FROM LastName.Person
 ORDER BY DOB
}
Storage Default
{
<Type>%Library.CacheStorage</Type>
}
}
8
0 2700
Question Michael Gosselin · Jul 29, 2016

Hello,

I've been doing this for years.  Well, decades.  And, I pride myself in being able to break other people's code.

However, sometimes I don't apply the same dedication to breaking my code.  That needs to change. wink

So, I'd like to ask people, what are some of the things you like to test for when trying to stress-test your code?  I'll start with what I like to try testing to see what crashes, what works unexpectedly, and what I've handled.

I always test the following: 0; 1; -1; some 20-digit number; some 50-character string; 1/0; 2E12; " ", and an undefined variable.

6
0 640
Question Jean Millette · Jul 25, 2016

We are creating a package (written in Caché Object Script) that will provide access to an external DB (MySQL). Because applications that use our package will be run from machines with various, potentially unexpected, operating systems, we’d like to establish a connection to the external DB without using DSNs (we’ve heard that setting up DSNs on certain non-Windows machines can be cumbersome and problematic).

4
0 1288
Question Laura Cavanaugh · Jul 29, 2016

I'm getting the above error.  My zen page calls other javascript methods  and other server methods just fine.  But when I call my  method, I get the error.  Yes, I've tried making it look exactly like the methods that work.  But for some reason, it doesn't seem to know that DoLogout is a zen method. 

Anyone ever get this error?

THanks

L

for example

ClientMethod logout() [ Language = javascript ]  {   zenPage.DoLogout();  }

Method DoLogout() [ZenMethod]   {   //blah blah  }

3
0 1069
Question John Murray · Jul 28, 2016

Studio's "Package Information" dialog, accessed from the context menu of a package on the Namespace tab of the Workspace pane, includes a field titled "Routine Prefix"

Help says this is a "String that is used as a prefix for the routines generated from classes in this package".

But if it set a string here, then recompile a class in the package, it doesn't affect the name of the generated routine(s). Nor does it influence the routine names generated when I create new classes in the package and compile them. I have tested on 2016.1.

2
0 449
Question Wendy Griffiths · Jul 22, 2016

I want to override the Get and Set methods of a class property.  The class maps to a pre-existing global. The property is defined like so:

Property Invalid As %Library.Boolean;

with the property mapping to a node like ^GLOBAL(Code,"INVALID")=1
Code is a property in the same class.

The value can be 0 or 1 or the node might not exist. When it doesn't exist I want the value of the SQL field to come out as 0 (false).

12
0 1894
Question Kevin Furze · Jul 26, 2016

Cache 2015.2

I need to get a sort order stored in my database with mutiple decimal places, but I want the string stored and retrieved EXACTLY as I enter it. so if someone enters 700.3000 I don't want cache to treat it as a decimal and strip the trailing zeros storing it as 700.3

once it comes back, I want the sorting to sort AS STRINGS, again, none of that stripping training/leading zeros.

this ay, I can create local arrays in exactly the order they think? they created them

3
0 555
Question Laura Cavanaugh · Jul 26, 2016

i'm looking for a way to display a list of tables in an application.  I need a Table or Schema API, and I can't find one.  I found this:

http://docs.intersystems.com/latest/csp/docbook/%25CSP.Documatic.cls?PA…

with a google search, but I'm not sure if I can even use this (it says that SQL name is "TABLES"), or how to use it.

Is there a way to get at the table names available in a namespace?

Thanks,

Laura

10
0 1389
Article Mark Bolinsky · Nov 19, 2015 1m read

There are many storage technologies available today from various vendors.  The storage technology and configuration best for your application depends on the application access patterns and workloads.  

The attached document discusses the various design considerations and recommendations for various technologies.  This guide is to help you during discussions with your storage vendor to determine the appropriate storage technologies and products that will work best to meet the performance goals for your applications.

3
0 628
Question Rustam Ibragimov · Jul 26, 2016

Hello, guys.

I have a set of file names (e.g. file.cls, file2.mac and so on) and I need to check whether these files are mapped in %ALL or current namespace.

I found that if I open Globals in the current namespace I can see mapped packages. And If I open this global I see all files that are  to this namespace and %SYS. The problem is these files are enumerated in a json object(apparently)

ex. "{""class"":{""%Activate.Enum"":{},""%Activate.GenericObject"":{""CreateObject"":0,""GetObject"":0},""%Activate.HandleEvents"")

But, is there a way to determine whether this file is mapped using some method? 

1
0 419