InterSystems Caché is a multi-model DBMS and application server. See more details here.
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
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.
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?
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 .
TEst test
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.
Hi,
I try to programmatically create a parameter for a dataCombo ZEN Component (which is in turn created on the server side at runtime).
Set tParm = ##class(%ZEN.Auxiliary.parameter).%New()
Set tParm.id = "pRegion#"_pExamContainerCount, tParm.name = "pRegion#"_pExamContainerCount
Set tExam = ##class(%ZEN.Component.dataCombo).%New()
Set tExam.id = "Exam#"_pExamContainerCount, tExam.label = "Untersuchung", tExam.queryClass = "Inventory.ServiceCatalog", tExam.queryName = "QGetExaminations", tExam.showEmpty = "false", tExam.size = "52", tExam.onchange =
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.
In this article I will show you how to build Universal JavaScript applications using Caché (sharing your code across front- and back-end). But before we start writing code, I'll first give you some reasons and background why you should consider building your applications using this technology.
As I described in an earlier article on my CODE development blog, applications need to run these days on all kinds of devices and operating systems with different form factors and application development requires a new strategy.One can't keep using platform specific development tools anymore.
What is this talk? • Provocative • Conflicting • Irritating • For those who want to be professional • Driver
What is this talk not? • Silver bullet • Only for devs Java • Only for devs • To be forgotten
Debt technical or "how to prevent the conductor knock on your door" - Alexandre Freire https://www.infoq.com/br/presentations/divida-tecnica- need-credit
Developers do not know fundamentals!
bitly.com/resultadopesquisafusca bitly.com/pesquisafusca
Developers do not know how to make simple software!
Overengineering
Developers do
Hi,
Thanks a million for taking the time to read this.
I'm calling the functions $ZF(-`1, <path to EXE>) and $ZF(-2, <path to EXE>) from Cache code. The exact code I'm using in Cache Studio is given below.
/// Test the functionality of ZF(-1) and $ZF(-2),
Class %SourceControl.UnitTest
{
Parameter PATH As %String = "E:\VCS\CommandExecutor\bin\
ClassMethod Test()
{
Do $ZF(-2, ##Class(%SourceControl.
}
Now when I run the command in the Cache Terminal, as given below,
>do $ZF(-2, "E:\VCS\CommandExecutor\bin\
t
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.
Hi,
I would like to list out unchecked mapped items ( classes in management portal ) classes of a particular namespace. Is there any code or terminal command which i can use ?
I am able to list out classes of namespace . But I need to list out unchecked mapped items classes
do ##class(%SYSTEM.OBJ).GetClassList(.result)
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.
Hi All,
How to export the cache user account in cache 5.02?
How to import the cache user account in cache 12?
Thanks,
Sansa.
Disclaimer: This is not a how to guide and I personally do not do any of the following unless its for penetration testing. It's important to think like a hacker in order to beat them at their own game.
To start off click on this google search link (its safe)...
https://www.google.co.uk/search?q=cache+error+page&oq=cache+error+page&…
Click on any of the search results and you will see that there are plenty of poorly managed Cache servers out there that are probably open to
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.
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 we can do the following.
&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.
Overview
Current Caché system monitoring functionality provides real-time information about a Caché environment. This allows for preventative measures to be taken before system failure by highlighting specific metrics when they are at unusual or dangerous values. Additionally, diagnosis of past or current erronious events is aided by informative logs that are created by the system monitoring process.
The System Monitor Dashboard project is a successor to the current system monitoring functionality.
Hi, I don't know if there is a bug in the function $zdate.
if i do:
w $zd("43433",4) the result is 01/12/59
but if i do:
w $zd("64448",4) the result is 14/06/2017
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:
Hi ,
The below code is working in cache 5.02 but it'snot working cache 16.
while we calling this method in another csp page it's show some different character.
ClassMethod OnHTTPHeader(ByRef OutputBody As %Library.Boolean) As %Status [ ServerOnly = 1 ]
{
set user = $ZUTIL(67,15,$JOB)
set status = %session.Login(username, "Test" ,1)
set log = $Get(%session.Data("Log"))
set logtype = $Get(%session.Data("logtype"))
if (log = "")
{
W !, "<div style='color:#000000; background:white; ; font-size=10pt;'><B>Your session has expired.
Hi all,
In Cache 5.02 while creating user the password was encrypted.
how to decrypt the password in cache 5.02?
We upgrade the cache 5.02 to cache 2016 ,But the user accuonut are not updated in cache 16.
We have created user acconut in login global in "%SYS" namespace .But the password are encrypt.
Thanks,
sansa.
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). ECP provides a host of possibilities for horizontal scaling of an application, 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…
This article is about how to gain as much transparency in controlling processes in ECP environment as in traditional (non ECP) one.
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.
A quick announcement about the upcoming Global Summit 2016 - April 10-13, 2016.
InterSystems Global Summit 2016 is an unparalleled opportunity to meet with your peers and with InterSystems’ executives and experts, discussing the technologies, strategies, and methodologies that lead to success.
All InterSystems Global Summit 2016 sessions will be held at the Arizona Biltmore in Phoenix, Arizona on April 10-13, 2016
Learn more about Global Summit 2016 and register today!
(Early bird discounts end soon!)
