#Caché

30 Followers · 4.5K Posts

  

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

Documentation.

Announcement John Murray · Jan 21, 2016

Announcing Deltanji 6.0, the latest version of the well-respected George James Software source control product formerly known as VC/m.

Deltanji comes in four editions, including Solo which is quick to install on Caché or Ensemble (2009.1 or later), easy to get started with, and perpetually free.

Deltanji runs within the environment whose code it is managing, integrating closely with Studio and Portal, and storing code versions in a CACHE.DAT database.

Please visit http://georgejames.com/deltanji to learn more and download the software.

2
0 452
Question Steve Shaw · Jan 21, 2016

Hi,

I'm trying to create a Zen Report that, when rendered to PDF has a header on every page that includes some items from the group that I'm iterating over in the <body>.  I can't use <header> as that only displays once for each iteration, even if that spans more than one page, but <pageheader> seems to be independent of <body> so again doesn't work.

Cheers,

Steve.

4
0 421
Question Chris Stewart · Jan 20, 2016

Hi
I'm starting to play around with dynamically creating tabs and panes from query data, and was trying to do the following, with nested tabs.

Tab Group

High level tabs

Sub Tab Group

Sub tabs from the High level tabs.


So I have built up my page with a placeholder top level tab group, then creating and added child tabs to this, then from this level, I have created a new Tab Group programatically, and programmatically added tabs to this new group. However, all I am getting is the top level of tabs, with all of the leaf data concatenated under it.

2
0 505
Question Pravin Barton · Jan 20, 2016

I'd like to have an array as a parameter for a SQL 'WHERE... IN' statement. The array would be modified in javascript on the browser. Here's a simplified example:

<tablePane  width="25%" id="testTable" sql="SELECT Id from Tracking_Data.Person WHERE Id IN (?)" showQuery="true">
<parameter/>
</tablePane>
<button caption="Test" onclick="zenThis.composite.testTestTable();"/>

ClientMethod testTestTable() [ Language = javascript ]
{
  var table zenThis.composite.getChildById("testTable");
  table.setProperty('parameters', 1, [1,2]);
}

However, I've noticed that when Zen takes in the

2
0 515
Question Fabio Goncalves · Jan 14, 2016

Is it possible to override JQuery Mobile elements´styles (buttons, lists, font size, color, etc) or an existing  theme with a separate custom css file?

I am really interested in an official or elegant way to do it.

Thanks.

2
0 552
Question Scott Beeson · Jan 13, 2016

New to CSP and Zen.  I've been going through tutorials and have made some progress.  Using the "Contacts" tutorial as an example, I'm trying to create a "ViewContact" page.  I want this to be linkable so I'm using URI Parameters, which I understand.  However, what I'm not sure about is how to retrieve a specific record.  Should I use a SQL statement?  If so, how?

Let's say I just wanted to display the property "Name" for the contact with ID 12.  What would be the best way to do so?

5
0 391
Question Scott Beeson · Jan 13, 2016

I created a Zen page with a header. All is good. I then created a new Zen page and during the wizard specified that it was a "subclass of a template page". So now I have Class Custom.App.HomePage Extends Custom.App.TemplateMaster. If I visit HomePage.cls I see the header from the template. However, the HomePage class has no XData Contents section so I have no idea how to actually add content. I tried adding the section but once I do then I don't see the template content anymore.

So, how do I put content in a page that extends another page as a template?

The only documentation I found about

2
0 378
Article Simon Bijl · Jan 12, 2016 9m read
Is there someone that has developped a program in order to create a 
"decisiontree"? Depending The answer to a question leads to another question, and so on, 
and so on, and there is an option to return to another point in the decisiontree.

Best regards,

Simon.

p.s. I've already got something, but it's not workable. But to get an idea:

Global Data weergeven

 
 
1:  ^DECISIONTREE(0) = "Heeft betrekking op|vraag"
2:  ^DECISIONTREE(0,0) = "Schoonmaak|radio"
3:  ^DECISIONTREE(0,1) = "Lekkage|radio"
4:  ^DECISIONTREE(0,1,0) = "Betreft|vraag"
5:  ^DECIS
4
0 306
Article Mark Bolinsky · Jan 7, 2016 1m read

Often times support and sales engineers are asked about recent benchmark results on various platforms and large scale configurations.  These will be made available here in the Developer Community in the "Documentation" section, and as an example here's a link to a recent Intel E7 v2 series processor benchmark.

https://community.intersystems.com/documentation/data-scalability-intersystems-caché-and-intel-processors-0

There are several reports available and more will be made available on an on-going basis.

0
0 356
Article Stefan Wittmann · Jan 6, 2016 1m read

You may have missed the news that support for older version of Internet Explorer ends next week Tuesday, January 12th. The original blog post from Microsoft can be found here:

https://www.microsoft.com/en-us/WindowsForBusiness/End-of-IE-support

A patch will go live next week Tuesday, that will nag users of older IE versions to upgrade to a recent version. The patch is identified as KB3123303. You can find more information about this patch here:

https://support.microsoft.com/en-us/kb/3123303?sd=rss&spid=14019

0
0 215
Question Fabio Goncalves · Dec 17, 2015

I am trying to define the charset for a JQM Application and it is not working. I have tried the following options without success:

Method %OnDrawHTMLMeta() As %Status
{
              Write "<meta name=""viewport"" content=""width=device-width, initial-scale=1.0,maximum-scale=1, user-scalable=no""/>"
              Write "<meta http-equiv=Content-Type content=text/html; charset=utf-8 />"
              Quit $$$OK
}
Method %OnDrawHTMLMeta() As %Status
{
              Write "<meta name=""viewport"" content=""width=device-width, initial-scale=1.0,maximum-scale=1, user-scalable=no""/>"
              Write
1
0 450
Question Steven LeBlanc · Dec 17, 2015

Hi,

Is there any API equivalent (within Config.Databases class, or elsewhere) that has the same functionality as the 'Recreate a database' option in the ^DATABASE routine?

This option was added to ^DATABASE (according to internal Devlog CFL1263):

to recreate a database which is equivalent to deleting the .DAT file and recreating it.

I tested this, and the recreate option also appears to also preserve the original database parameters (e.g.max size, resource name).

2
0 450
Question Derek Day · Dec 15, 2015

Is there a way to select distinct keys from an field that has a collection index?I have a field defined as follows: Property data As %Library.String(COLLATION = "EXACT", MAXLEN = "", TRUNCATE = 0); Index data On data(KEYS) [ Type = bitmap ]; And I define a build value array method that parses my data outputs an array in the format array(KEYS)=VALUES.This is very useful because I can query my data using criteria such as  WHERE FOR SOME %ELEMENT(data) (%KEY='param') My question is whether there is some way to select distinct key values, e.g.SELECT DISTINCT KEYS____ FROM ____ .

1
0 595
Question Fabio Goncalves · Dec 14, 2015

Hi All,

I am trying to disable a button on a JQM application.

I started the button as disabled according to this code: {type:'$button',caption: Button',key:'button',disabled:true}

However, I would like to enable or disable the button via JavaScript code . I have tried the following, but it don´t have the same behavior and style as the code above.  

var view = zen('mainView');
              view.disableItem('button',true,0);

I expect to get the same component behavior of {type:'$button',caption:'Standard Button',key:'button',disabled:true} when enabling or disabling the button through JavaScript

2
0 406
Question Derek Day · Dec 8, 2015

There seems to be little point to journal audit db updates; why rollback an audit entry for an attempted update?

I’m working on some auditing code and I have a few questions (feel free to respond regarding 2016.1 or later).

  1. I’ve noticed that there is little point of journaling updates to an audit database, as the Audit log is essentially an additional journal. Is there any reason not to disable journaling for audit log updates?
  2. I’d like to audit even transactions that get rolled back, preferably with information that the rollback occurred (this could be a second audit entry).
5
0 543
Question Ben Spead · Nov 20, 2015

I am using &html<> to output some CSS to my page (which is a class-based and not a tag-based page), and the selectors contain the '>' character which the compiler chokes on.  How can I escape the '>' so it still displays as such in the web page source but doesn't trip up the compiler?

This is for 2012.2 btw.

8
0 562
Question Chip Gore · Nov 11, 2015

Hi -

If you have Cache installed on a Cent OS machine, and you want to switch the OS to Red Hat 7, and your Caché is installed on a non-OS drive, do you need to reinstall Caché?

I don't think so, but I wanted to check

2
0 404
Article Brendan Bannon · Nov 9, 2015 1m read

The attached zip file contains a bunch of examples of Cache SQL Storage mappings that I have done over the years.

If you have existing globals and want to expose them via Objects or SQL you need to setup Cache SQL Storage mapping.  If you do not see an example that helps with your case send me an example and I can help you out.

0
0 1190
Article Daniel Kutac · Nov 9, 2015 3m read

Tip dvacátý šestý: objekty a concurrency 2 - swizzling

Když tento seriál před několika lety začínal, byl jeho první díl věnován zajištění izolace instance objektů pro exkluzivní přístup a popisu příslušných API funkcí.Nedávno se mi ale stalo, že mě tento díl dostihl.Jeden ze zákazníků začal mít problémy v aplikaci, přestože důsledně používal exkluzivní zámky pro editování instancí svých objektů.

0
0 358
Article Developer Community Admin · Oct 21, 2015 1m read

Introduction

With the maturation and wide acceptance of Java, object-oriented programming has moved to the foreground of the application development landscape. Because of their rich data models and support for productivity-enhancing concepts such as encapsulation, inheritance, and polymorphism, object technologies like Java, C++, and COM, are favored by today's application developers.

However, much of the world's data still resides in relational databases.

0
0 292
Article Developer Community Admin · Oct 21, 2015 1m read

Introduction

Experts estimate that 85% of all data exists in unstructured formats – held in e-mails, documents (contracts, memos, clinical notes, legal briefs), social media feeds, etc. Where structured data typically accounts for quantitative facts, the more interesting and potentially more valuable expert opinions and conclusions are often hidden in these unstructured formats. And with massive volumes of text being generated at unprecedented speed, there’s very little chance this information can be made useful without some process of synthesis or automation.

Automating text analysis is not

0
0 324
Article Developer Community Admin · Oct 21, 2015 1m read

Introduction

To overcome the performance limitations of traditional relational databases, applications - ranging from those running on a single machine to large, interconnected grids - often use in-memory databases to accelerate data access. While in-memory databases and caching products increase throughput, they suffer from a number of limitations including lack of support for large data sets, excessive hardware requirements, and limits on scalability.

InterSystems Caché is a high-performance object database with a unique architecture that makes it suitable for applications that typically use

0
0 416
Article Developer Community Admin · Oct 21, 2015 2m read

Executive Overview

One way financial services firms can improve their operational efficiency is to revamp their data management infrastructure. Creating a central repository for data that is used by multiple applications can ensure data consistency and quality across the enterprise, ease integration bottlenecks, and lower the number of failed trades.However, different applications have different database usage patterns. To satisfy them all, any central data repository must:

  • Support a large number of transactions with high performance
  • Provide fast response to queries, using up-to-date information
  • P
0
0 371
Article Developer Community Admin · Oct 21, 2015 2m read

Introduction

By now, anybody working in the technology sector will have heard of Cloud computing. But the concept is increasingly being paid attention to outside of IT departments, with growing recognition among boardlevel executives of the potential of this range of innovations. Frequently, senior personnel are hearing stories about how the Cloud helps organizations reduce costs, boost efficiency and expand their operations, so they’ll be excited about what the Cloud can do for them.

As a result, Cloud is one of the fastest-growing parts of the IT industry.

0
0 238
Article Developer Community Admin · Oct 21, 2015 1m read

Abstract

In a recent benchmark test of an application based on InterSystems Caché, a sustainable rate of 8.9million database accesses/second, with peaks of 16.9 million database accesses/second, was achieved. These results were from a test performed on a connected system of eight applications servers, using Intel Xeon 5570 processors, and running Linux as the operating system. This benchmark shows that:

  1. Caché can achieve unheard of levels of performance for an object database. It provides full persistence of data at speeds that are normally only reached by in-memory databases.
  2. Caché demonstrates
0
0 251
Article Developer Community Admin · Oct 21, 2015 1m read

Introduction

With the growing popularity of smart phones and tablet computers, consumers are coming to expect that software solutions will be presented as "apps" on their mobile devices. The challenge for most application developers is to find ways to make their existing solutions run on modern mobile platforms without incurring the delay and cost of a complete rewrite.

This paper will describe the approach taken by HAPO Community Credit Union when they adapted their online banking application, developed on InterSystems' high performance object database system called Caché, for use with mobile

0
0 293
Article Developer Community Admin · Oct 21, 2015 1m read

Introduction

Because of increasing business and governmental pressures to integrate their operations, the financial services industry is developing a number of standards for data exchange and other common functions. Standards such as XBRL, FpML, MDDL, RIXML, and FIXML are all specialized dialects of XML (Extensible Markup Language). Any financial services application with good support for XML will be able to communicate effectively using one or more of the emerging industry standards.

Efficient data exchange increases the need for fast, scalable data persistence.

0
0 291
Article Developer Community Admin · Oct 21, 2015 2m read

Executive Summary

For twenty years or more, large financial institutions have been locked in a battle between the need for extremely high performance transaction processing and the demands of downstream applications that can deliver competitive advantage if they can get real time access to this transactional data.When individual database servers could no longer handle simultaneous transaction and query workloads, many firms turned to replication, offloading data access onto read-only copies of production databases.

0
0 346
Article Developer Community Admin · Oct 21, 2015 1m read

InterSystems has implemented a broad set of MultiValue extensions for its Caché multidimensional database. These extensions enable the migration of MultiValue applications to Caché and bring the full range of Caché object and SQL development technologies to MultiValue developers. The result: your existing MultiValue investments are preserved, you gain a broad spectrum of highly scalable deployment options, and your developers can combine the best of MultiValue, object, relational, and technologies to extend existing applications and build new ones.

0
0 344