#Caché

30 Followers · 4.5K Posts

  

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

Documentation.

Question Mike Kadow · Feb 3, 2017

Back in my COBOL days, there was a utility that would analyze running COBOL code and expose bottle necks and those modules that were inefficient or were executed multiple times. This was to help the programmer know where to concentrate streamlining efforts.

Is there any such utility for Caché Routines?

4
0 463
Question Mack Altman · Jan 25, 2017

I am in the planning stages of making things more uniform in our routines and I would like to know what the easiest way would be to include an .inc at the beginning of each .mac routine. Has anyone written something that would open all routines and place something into the first row while leaving the rest of the routine unchanged? Thanks for any guidance you all may provide.

3
0 446
Article Steve Wilson · Feb 3, 2017 3m read

Points to remember before you start: 

  1. It is not possible in a COS (Caché Object Script) job/process context to have multiple Named Pipes. It is a one Named Pipe per job/process limited line of communication. 
  1. Named Pipes, in Caché, like most pipes on most operating systems are Unidirectional. That means you open them for either Read or Write, but not both. 
0
0 881
Question Le chuck gp · Feb 2, 2017

Well I want to set the type of a piece in a global as a String, because when I use float numbers , the system parse them to numbers instead of use like strings and thats a little bit tricky with the sorts

Here is a code example:

ACB>s ^a("1.0012")=""// that is going to be stored as a number

ACB>s ^a("1.0011")="" // that is going to be stored as a number

ACB>s ^a("1.0010")="" // that is going to be stored as string

ACB>zw ^a

^a(1.0011)=""

^a(1.0012)=""

^a("1.0010")=""

I want to predefine the behaviour setting the type of this piece  as String to solve this "behaviour"

thanks in advance

2
0 356
Article John Murray · Feb 1, 2017 1m read

The class %Compiler.UDL.TextServices arrived in 2015.1, bringing us methods for exporting a class in UDL format (i.e. looking just like we're used to seeing it in Studio), and importing a UDL format definition back into a namespace. Some source control tools including our Deltanji are now able to use UDL format, resulting in diffs that are easier to understand.

1
0 387
Question John Murray · Jan 30, 2017

Per the information at http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY… I am trying to use a call to $ZF("GETFILE") to obtain information about an OpenVMS file. But I get an <ILLEGAL VALUE> error.

For example:

w $zf("GETFILE",filename,"UIC")

reports:

<ILLEGAL VALUE>

My filename variable contains the full path and name of a file that I own. I hold the %All role in Cache.

This is 2012.1.5 on OpenVMS/IA64  V8.4

Any ideas what's going wrong?

4
0 584
Question Jenna Makin · Jan 31, 2017

Hi-

Im curious if there is any specific configuration that has to be done on an IIS web server to serve up RESTful web services.

I have a server that has IIS installed, with the CSP gateway.  a second server that has Cache installed on it.

I have configured a web application using the Cache System Management Portal for the web services that has a dispatch class pointing to my dispatch class.

I have created an application mapping in my CSP Gateway Management Portal on the web server such that url's with /webservices prefix are routed to my cache server.

1
0 3829
Edit
Question Peter Kopp · Jan 31, 2017

Good morning, I would like to visualize the data summarized in a tablepane in a pieChart widget. Since my tablepane has already executed the query, I would like to use the tablepane snapshot as the data source for the pieChart widget. Is this possible? What would the syntax be for linking the widget to the snapshot look like? Thank you for all input.

0
0 14
Question Thomas Kotze · Jan 31, 2017

Hi,

Initially when setting up a cache instance one creates or imports the user/ resources roles etc .

After the Mirror has been activated you can add users, resources etc. But when trying to add new SQL Table privileges to a namespace where the databases are mirrored it seems that you are not able to , Getting error: 

ERROR #5002: Cache error: <DIRECTORY>SQLUserPrivsExecute+13^%SYS.SQLSEC

SOURCE ELEMENT: %CSP.UI.Component.SQLTables (SQLTables)
How do you maintain these privileges?

1
0 418
Question Jules Monoury · Jan 27, 2017

Hello community,
 

I'm triing to use perl with Caché on CentOS 7.

  • Caché is installed and working
  • Reading doc for perl module
  • Adding path of Caché/bin in PATH and LD_LIBRARY_PATH as suggested in doc
  • Creating mMakefile (perl Makefile.PL)
  • Success at compilation (make)
  • Fail at test (make test). And return the following message:

Can't load 'blib/arch/auto/Intersys/PERLBIND/PERLBIND.so' for module Intersys::PERLBIND: libcbind.so: cannot open shared object file: No such file or directory at /usr/lib64/perl5/DynaLoader.pm line 190.
 at test.pl line 10.

2
0 710
Question Natasa Klenovsek Arh · Jan 31, 2017

I'm having trouble creating a view in cache with query like:

SELECT column1, column2, column 3
    FROM  table
    WHERE
        (column1, columnn 2) IN (SELECT c1, c2 FROM table2 GROUP BY c1)
    ORDER BY column1

I think the problem is in where clause, because it cannot take two columns .

the exact error: [SQLCODE: <-1>:<Invalid SQL statement>] [%msg: < ) expected, , found^ (column1,>]

Any idea on how to solve this?

Thank you.

3
0 111210
Question Marc Alcala · Jan 24, 2017

Hi all!

I'm developing a mini-framework to implement annotations in Cache. I want to support two kind of annotations: metadata and method decorators. I've got stuck trying to implement the second one.

Metadata

With metadata annotations I can add metadata to any kind of target. A target can be a method/classmethod, parameter, property and class.

For example:

Class cache.TestClass Extends lib.Annotations{/// @Author(UserName = "me")ClassMethod Test(){Write "Test!",!}}
16
0 807
Article Maxim Yerokhin · Sep 21, 2016 7m read

Imagine that your .NET project uses the Caché DBMS and you need a fully-functional and reliable authorization system. Writing such a system from scratch would not make much sense, and you will clearly want to use something that already exists in .NET, e.g. ASP.NET Identity. By default, however, this framework supports only its native DBMS – MS SQL. Our task was to create an adaptor that would let us quickly and easily port Identity to the InterSystems Caché DBMS. This work resulted in creation of the ASP.NET Identity Caché Provider.

1
0 1451
Question Peter Kopp · Dec 16, 2016

Hello, I have a list of files on disk. Each record is the fully qualified UNC path and filename. I would like to send these files to the end users default printer as a document. I have attempted to build a html page using document.write statements and print using printWindow.print(); command.

I think there must be a better way to send a series of files to the windows print spooler. I would welcome any and all input.

5
0 496
Question Christopher Blair · Jan 23, 2017

Hello, I've checked past posts and don't see the answer. Hope someone can help.

I'm working with our commercial version of VistA.  Cache 2016.2.

I've connected to the instance and copied a few M routines to my local Atelier project.  I edited a comment in the file and attempted to save/compile the routine back to the server.  

I'm getting

Synchronization failed: Invalid header in /Encounter Interface/VFD.......

Is there something I'm missing? Thanks in advance.

4
0 719
Question Mack Altman · Jan 21, 2017

Can someone direct me to where in the documentation we can find how consumption may be calculated for global storage?

Caché Version 2010.1
Operating System HP OpenVMS 8.4

EDIT: After receiving some responses, it seems I was unclear in my initial inquiry. I am looking to determine our rate of consumption of storage; however, I am having some difficulty in doing that.

While utilizing ^%GSIZE, which is used by the %GlobalEdit class, the results appeared odd. I have provided my results below, which illustrate the global structure on the left and the usage indicated by ^%GSIZE on the right.

6
0 900
Article Mike Kadow · Jul 4, 2016 2m read

NewBie's Corner Session 10 Routines and Studio

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

InterSystems Caché provides a GUI (Graphical User Interface) based Integrated Development Environment (IDE) called Caché Studio. Developers can use Studio to create and maintain applications.

InterSystems has a new IDE called Atelier but that is for later.

3
0 495
InterSystems Official Steve Brunner · Jan 20, 2017

InterSystems is pleased to announce that Caché and Ensemble 2016.1.3 are now available as maintenance releases.

 

For a complete list of the corrections in 2016.1.3, please review the release notes.

 

Caché and Ensemble 2016.1.3 are available on the same platforms as 2016.1.2.  The complete set of supported platforms, including specific point releases and patches, is detailed in the Supported Platforms document.

 

The HealthShare team will announce availability of its products separately.

 

The build corresponding to this release is 2016.1.3.306.0

 

0
0 319
Question Bryan Cass · Jan 16, 2017

I realize that Cache Studio is the standard method to edit routines.  However, some clients make it difficult to access their server that supports Studio.  Is there an editor that can be run from the programmer prompt that allows simple WYSIWYG editing of routines?  I know there is a %Routine class that you can use to do command-line editing, but I am looking for a full screen editor.

What was the standard in OpenVMS Cache before there was Cache Studio?

Thanks!
Bryan

7
0 1658
Question Anzelem Sanyatwe · Jan 18, 2017

I’ve a server that is running Windows Server 2003 R2 Enterprise Edition SP2 x86.

I just noted that you cannot allocate shared memory beyond 1.6GB.

 

Is this a known problem between Cache and this OS architecture, and has anyone configured it beyond this?

 

Cache gives the below errors (Version: Cache for Windows (x86-32) 2012.2.5 (Build 962_1) Wed Jun 11 2014 13:58:32 EDT).

 

11/01/16-08:33:06:750 (0) 2 Failed to allocate 2560MB shared memory: 2045MB global buffers, 384MB routine buffers

11/01/16-08:33:08:843 (0) 2 Failed to allocate 1934MB shared memory using large pages.  Switching to small pages.

2
0 1590
Question Steffen Brumm · Jan 18, 2017

Short question: Why are (almost) all Java-Classes marked as deprecated? I never had any problems. And the docu for java-bindings are still (version 2016.2.1) not marked as deprecated. I ask, because in my case everything works and the writing of Unittests is easier than in Objectscript and i cannot find a note about the reason of the deprecation (at least in the classes i have checked).

2
0 797
Article Timur Safin · Jan 16, 2017 15m read

Have you ever thought what could be a reason why some development environment (database, language) would eventually become popular? What part of this popularity could be explain as language quality? What by new and idioms approaches introduced by early language adopters? What is due to healthy ecosystem collaboration? What is due to some marketing genius?

2
2 1478
Question Laura Cavanaugh · Jan 17, 2017

I have a user with %All, and a user with %Admin_Task.  The %All user can use SQL to view the %SYS_Task.HIstory table.  The user with %Admin_Task does not have the privileges to see the same table.

What priv (or privs) is (or are) needed to view the %SYS_Task.History table?  I just want to start with 'Select * from %SYS_Task.History'.

I've tried %Admin_Manage and %Admin_Operate.  I must be close.

Thanks,

Laura

3
0 694