#Caché

30 Followers · 4.5K Posts

  

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

Documentation.

Edit
Article Mike Kadow · Jul 22, 2016 2m read

NewBie's Corner Session 14 Inline Do & Nested Do with Implied Quit and For Loop

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.

The following concepts of Inline Do, Nested Do, Implied Quit and For Loop is difficult to explain in a manner that everyone understands.However, these concepts work well with each other.

0
0 2
Edit
Question Ferran Olle · Nov 23, 2016

Hello,

Our Intersystems Cache database is running in a Windows 2008 R2, and is installed and configured as "UNICODE" .

We are using Apache+PHP with  ODBC to get data but we have some problems with character encoding.

We also have two configurations:

  • Ubuntu 16.04 LTS + Apache2 + PHP 5.6 + UnixODBC
    • using isql command everything works fine, data returned is OK   (all special characters  in Spanish displayed ok).
    • using PHP with  PDO function to connect the database and libcacheodbcu35.so driver
      • with  default_charset=""  in  php.ini
      • Special characters in spanish not displaying   (  like   ü , é , ó , à , .
2
0 63
Edit
Article GUILHERME CRUZ DA CUNHA · Jun 18, 2018 2m read

For those who are interested, or want to do something different with the cache language, I leave here two codes of animations.

They serve to run on the terminal while executing a routine, or a method.

To escape the monotony of seeing that static code in the terminal.

Examples:

1 - 

S S="",S1="",O="" F L=1:1:40{ S M0=$C(13,10),M1=$C(32,111,13,10,32,124,32,32,O,13,10,32,124),M2=$C(32,32,111,13,10,32,47,32,32,O,13,10,47,124),M3=$C(32,32,111,13,10,32,47,45,124,O,13,10,47,62),S=$S(L<=21:$S(L#4=3:S_" ",1: S),1:S),S1=$S(L<=21:$REPLACE($S(O'="":$S(S1="":"O",1:" "_S1),1:""),"    ",$C(79)_"   "),1:$E("

2
0 25
Edit
Article Alexey Maslov · Nov 12, 2016 14m read

This article is about how to gain as much transparency in controlling processes in ECP environment as in traditional (non ECP) one.

The technology of load balancing between several servers with relatively low capacity has been a standard feature of Caché for quite a while. It is based on the distributed cache technology called ECP (Enterprise Cache Protocol); note that we are referring to “cache”, not “Caché”, here. ECP provides a host of possibilities for horizontal scaling of an application, ensuring high performance and fault-tolerance, and yet keeping the project budget fairly low. Another apparent advantage of ECP network is the possibility to conceal its architecture in the depths of Caché configuration so that applications developed for the traditional (vertical) architecture can be fairly easily migrated to a horizontal ECP environment. The ease of this process is so mesmerizing, that you start wishing it was always this way. For instance, everybody is used to having a possibility to control Caché processes: the $Job system variable and associated classes/functions work magic in skilful hands. Stop, but now processes can end up being on different Caché servers… The text below is about how I managed to cope with this problem.

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

Hi all,

    i need one help regrading telnet.In cache 5.02 while we take telnet it open some program(By using ^login Global in %Sys nameSpace).But i could not create same process in cache 2016.

example:

telnet 127.0.0.1 it open some routine in "TRAIN" namespace.

Thanks,

Sansa.

2
0 24
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 sansa stark · Dec 8, 2016

Hi All, I am taking a namespace and routines from one table for particular user.if the user have name space and routine means it execute well but after executed the routine it is automatically quit and close the session.I need to keep the same namespace after executing the routine. Please help to proceed further anyone.

2
0 16
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 sansa stark · Dec 1, 2016

Hi All, I configured the crystal report SAP 2011 with IIS 10 in windows server 2012 r2 standard,when I tried to open it shows failed to open the connection error .database is Cache.how to recover that problem.

0
0 15
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.reportPage
{
Parameter APPLICATION = "Ideal";
Parameter DEFAULTMODE As STRING [ Constraint = ",html,pdf,xml", Flags = ENUM ] = "pdf";
Parameter REPORTXMLNAMESPACE;
Parameter XSLTMODE = "server";
XData Style
{
<style type="text/css">
/* style for title bar */
#title {
    colorgreen    ;
    font-familyVerd

0
0 0
Edit
Article Thomas Carroll · Sep 17, 2016 2m read

Embedded SQL is a tool that allows us to execute SQL statements in Caché Object Script. For example, to select the name of a person with a particular SSN from the Sample.Person class

&SQL(

SelectNameinto:tName

FromSample.Person

WhereSSN = :tSSN

)

The colon syntax is used to identify local variables, in this case tName and tSSN. &SQL indicates to our compiler that this is SQL syntax. At compile time, this statement will be optimized to executable Object Script code. More about this syntax can be found here.

http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=GSQL_esql

SQLCODE

0
0 0
Edit
Question Peter Kopp · Oct 11, 2016

Good morning, I am using a <Image/> tag, in a <Tab/> tag, of a <TabGroup/> to render a tif image. I would like the tif file to be rendered full size. However, I have not been able to achieve this using the height="100%"  and width="100%" parameters available. All I get is an envelope with scroll bars, with perhaps a quarter of the image visible at any one time. Thank you in advance for any and all feedback.

2
0 18
Edit
Question Chris Thompson · Dec 20, 2016

Currently we have a setup where we have an external IIS webserver that our CSP Gateway sits on that routes requests to our ensemble server. When working with soap everything was routed to the CSPms module since the site's handler mappings have *.cls going to this module. However, now that we are working with rest services that don't have a file extension we will have to have all traffic on the IIS box be routed through the CSPms module. 

I was curious if anyone has encountered this type of issue, and if so, what steps did they take to resolve it?

0
0 4
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.

On these versions, if the "TLS v1" checkbox is checked in an SSL/TLS configuration, the system will use any of TLS v1.0, v1.1 and v1.2 .

0
0 4
Edit
Article Carter Tiernan · Sep 21, 2016 1m read

Overview

The The System Monitor Dashboard project is, most generally, an open source extension to the Cache System Monitor.

More specifically, it allows users to customize the monitoring of a Cache environment as well as how the collected data is visualized.

Goals

  • Displays important system state and historical information in an accessible and useful way.
  • To provide an intuitive and complete API for users to tailor the Cache System monitoring to their specific needs.
1
0 0
Edit
Article Mike Kadow · Jul 4, 2016 2m read

NewBie's Corner Session 10, Subject: 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.

A Routine is the name that Caché calls computer programs.A Routine consists of a number of lines of instructions to the computer; these instructions are called code.

0
0 2
Edit
Article Cameron LaHart · Nov 22, 2016 2m read

Configuring Java with InterSystems Technology

Regardless of what InterSystems technology you use to design your applications, it is likely that some of our product functionality will require that Java be installed on the operating system, and subsequently be configured properly with your InterSystems based application.There are many ways that this can be accomplished depending on your operating system, as well as the specific InterSystems technology you are integrating with.

0
0 0