#Caché

30 Followers · 4.5K Posts

  

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

Documentation.

Edit
Article Gevorg Arutiunian · Jul 13, 2018 1m read

This code snippet uses GZIP to compress and decompress a file in the file system. Change default file paths to customize code to compress/decompress your files:

Class objectscript.GZIP Extends %RegisteredObject
{
	classmethod test() {
		//Export Global(s) uncompressed
		set filename="C:\Temp\myglobal.xml"
		do $System.OBJ.Export("^oddEXTR.gbl",filename)
		//Open exported Globals
		set uncompressed = ##class(%FileBinaryStream).%New()
		set uncompressed.Filename=filename
		Set compressed = "C:\temp\mycomglobal.xml"
		//Open File Device over Gzip and Copy Uncompressed information to it
		Open compressed:("WUNK":::/GZIP=1:/NOXY=1:/OBUFSIZE=32768):0
		Use compressed
		do uncompressed.OutputToDevice()
		close compressed
		//Create New File  
		set out = ##class(%FileBinaryStream).%New()
		set out.Filename= "C:\Temp\decomp.xml"
		//Open compressed File and save information uncompressed over gzip
		Set file=##class(%File).%New(compressed)
		Do file.Open("RUK:::/GZIP=1:/NOXY=1")
		while ' file.AtEnd
		{
		    set line = file.ReadLine()
		    do out.Write(line)
		}
		do out.%Save()
	}
}

GitHub: https://github.com/intersystems-community/code-snippets/blob/master/src/cls/objectscript/GZIP.cls

0
0 0
Edit
Question prabakaran a · Feb 14, 2017

Hi All,

          while i configure the shadowing.i got following error.         

ERROR #1043: Shadowing is unavailable for current license

Thanks,

Prabakaran A. 

3
0 37
Edit
Article GUILHERME CRUZ DA CUNHA · Jun 15, 2018 2m read
  1. What is this talk? • Provocative • Conflicting • Irritating • For those who want to be professional • Driver

  2. What is this talk not? • Silver bullet • Only for devs Java • Only for devs • To be forgotten

  3. Debt technical or "how to prevent the conductor knock on your door" - Alexandre Freire https://www.infoq.com/br/presentations/divida-tecnica- need-credit

  4. Developers do not know fundamentals!

  5. http://s3.amazonaws.com/magoo/ABAAAfWwoAD-5.jpg

  6. bitly.com/resultadopesquisafusca bitly.com/pesquisafusca

  7. Developers do not know how to make simple software!

0
0 17
Edit
Article Chris Stewart · May 6, 2017 2m read

In our last lesson, we added a form to Edit our existing Widgets, and save them back to the server.  However, our Form was not well strcutured and our Save button had no intelligence, and was not fully visible.  So today, we will apply some Material components and Angular style to make the form more useful

Let's open EditWidget.csp, and make some changes.  First, we want to change the component from an md-card to an md-dialog.

0
0 0
Edit
Question Nicole Kristen · Oct 13, 2017

AI can be categorized in any number of ways, but here are two examples.

The first classifies AI systems as either weak AI or strong AI. Weak AI, also known as narrow AI, is an AI system that is designed and trained for a particular task. Virtual personal assistants, such as Apple's Siri, are a form of weak AI.

Strong AI, also known as artificial general intelligence, is an AI system with generalized human cognitive abilities so that when presented with an unfamiliar task, it has enough intelligence to find a solution.

0
0 16
Edit
Article Andrey Rechitskiy · Nov 22, 2018 13m read

As you know, Caché can be used as a relational DBMS working with JDBC/ODBC drivers and supporting the execution of arbitrary SQL queries and SQL procedure calls. 

We also know that Caché stores all the data in multi-dimensional sparse arrays called globals. It allows the developer not to use the standard CachéSQL engine in case a particular SQL procedure is underperforming, but instead rewrite its execution code in the Caché ObjectScript (COS) language intended for server-side business logic. This approach may help implement the optimal SQL procedure execution algorithm by using better-optimized NoSQL data structures (globals).

However, the standard class library in Caché has one limitation: for SQL procedures where data selection is controlled by custom COS code, you need to define the set of returned fields at the compilation stage - i.e. it is impossible to dynamically define metadata for an SQL procedure working with NoSQL structures. This article is about how to get around that limitation.

0
0 0
Edit
Question Stuart Byrne · Jul 11, 2018

Hello,

I'm just re-going through the Caché foundations course exercises using a copy of Try-Caché on my home pc.

I'm trying to create a web application to receive REST calls however, when I use the Restlet client I get no response.

My web application config is:

0
0 0
Edit
Question sansa stark · Nov 28, 2016

hi all,

        how to configure the crystal report in iis?

        how to generate the crystal report via intersystem cache ?

info :

  sap crystal report 2011

  iis 6 and windows 3 server

cache 5.02

Thanks,

sansa.

0
0 22
Edit
Article Tao Sun · Apr 20, 2016 6m read

Recently I have been working on a performance issue reporting about that Sets or Kills in the same global performed by multiple processes in a very focused time period can sometimes take a long time (several seconds) to complete. I feel this is an interesting case study to understand about some performance tunings of Caché.

Case background:

A testing routine creates multiple processes to do set (or kill) random nodes of a global in tight loop and records the timing how long a set (or kill ) operation takes.  For a global with a large number of nodes (e.g.

0
0 0
Edit
Question Theunis Pretorius · Nov 5, 2016

How do I call an excel report class from another class and name the report from the call class in cache?

This is the Report Class:

/// ProjekCin.Cinema.report.report
Class ProjekCin.Cinema.report.OLSQL16REP Extends %ZEN.Report.reportPage
{

/// Class name of application this report belongs to.
Parameter APPLICATION = "ProjekCin.report.Browse";

/// Specifies the default display mode used for this report if
/// the URL parameter, <var>$MODE</var>, is not present.
3
0 31
Edit
Article Jose Ruperez · Dec 16, 2016 1m read

The first step when dealing with performance is the ability to measure it. In this article, we will show you a way to measure the performance of your CSP and/or ZEN applications. You will be able to answer questions such as: Which pages of my application are hit the most? or Which pages in my application are the slowest?

1
0 21
Edit
Article Danny Wijnschenk · Oct 29, 2017 1m read

Advent of Code is a series of 25 small programming challenges, created by Eric Wastl, see https://adventofcode.com/.

There are small and bigger puzzles, which you can solve typically in half an hour to a few hours. (Looking at the leaderboard, the top aces can do them in less than 10 minutes.) 

It's an ideal way for beginners to start learning a computer language, and for advanced people to sharpen their programming skills.

To help you get trained for this year's challenges which start at December 1st, I will try to solve and comment the puzzles from 2016.

0
0 0
Edit
Question Davidson Espindola · Mar 3, 2017

Hello everyone,

I have the following problem in generating a PDF report in ZEN, which has many items, a general total of approximately 30,000 items, but gives an error, I can generate a report with a maximum of 8,000 items, which may be wrong.

==========

Class Ideal.ListaEstoquePDF Extends %ZEN.Report.

0
0 0