#Caché

30 Followers · 4.6K Posts

  

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

Documentation.

Question Eduardo Raupp · Nov 13, 2020

Hello there,

Someone know which impact would have my database changing the locale and its collationTable? I understand it should works fine, without any drawback.

Could someone else confirm my assumption or tell me what could happen? Has anyone changed something like that? (Not to russian, japanese, chinese, etc..) 

 About queries.. is there any side effect? 

Regards

1
0 309
Question Florian Hansmann · Nov 10, 2020

Hey Intersystems Community,

I have a Problem with the Session Handling in .csp.

I wrote all my Web Services in .csp-Pages and do the work for example in the OnPreHttp Method for to get some data.

After that the Web Service response is in JSON.

I call These Web Services via fetch in my react Single Page application, also Many request parallel. The react App is Rolled out as index.html.
Everything Works Fine with the session Handling via Cookie.

3
0 612
Question Mark O'Reilly · Nov 10, 2020

Hi:

I have noticed a problem in some new code I did on one of our productions. I think it is leading to 2 problems. 

I have a file, lets call it 1111111111_2300.pdf. 

We make the file UNIQUE to avoid an issue. This filename in the working directory gets a session ID Added to it before the .pdf. So lets say it was session ID 9 it would be 1111111111_2300#SID9.pdf in a working directory . 

There are further operations to be done on this document before it is sent. For various errors an email is sent back to service users.

3
0 254
Discussion Andre Larsen Barbosa · Nov 10, 2020

I have already asked a question about migrating an Oracle database to Caché, and I was promptly answered. Now, I have one more question, however it is more conceptual. In general, any tool defends its benefits, and looking at Caché's, among many, there is a lot of talk about speed. The question is, if I already have a database, and at the moment, its performance is not a problem, I would like to know what else could influence the change of this database? Remembering that it is functional and without any apparent problem.

2
1 335
Question Daniel Aguilar · Nov 4, 2020

Good Morning,

I have this question for a long time. When I make an insert by SQL from an external application in the fields of type %String, if they are empty, it writes the character $c(0) in the global.

Is there a way so that if an Insert is received in a field of type% String with null value instead of the $ c (0) it leaves it empty?:

I have the class defined like this:

Class User.MiClase Extends (% Persistent,% XML.Adaptor)

and the property like this:

Property myProperty As% String;

I have tried creating a trigger or setting default values but it doesn't work.

7
0 1302
Discussion Dmitry Maslennikov · Nov 9, 2020

Let's imagine you have to implement a method with a definition

/// Set value to %session.Data
ClassMethod setValue(params...) As %Status
{
}

How it should work

do ..setValue("key1", "val")

is equal to

set %session.Data("key1") = "val"

and 

do ..setValue("key1", "key2", "key3", "key4", "val")

is equal to 

so, quite simple, any amount of arguments, while the latest one is a value, and any previous is an index, should accept at least 2 arguments.

How would you implement this method?

15
0 394
Question Kranthi kiran · Nov 6, 2020

Hi Cache team, I am in the need of listing all the user defined schemas that are present my Cache db and also the user defined tables and views and Columns of those tables and views through Queries. So that I can write some JDBC code to run the queries and fetch the above metadata. Any help is appreciated.

Thanks in Advance,

Kranthi kiran.

2
0 3011
Question Nael Nasereldeen · Apr 16, 2018

Hi,

I need to read a UTF8 encoded text file and translate the content to 8-bit.

Using %File class and $ZCVT(TXT,"I","UTF8") works , but I see that if the content is larger than max string  (32000) and we cut the content

To max string chunks, we can get a <translate> error if we cut it in the "wrong" point..

Is there a better way to do this task?

My code looks like this:

    S file=##class(%File).%New(..LocalFileName)
    D file.Open("R")
    While 'file.AtEnd {    
        S Line=$ZCVT(Line,"I","UTF8")
    }
    D file.Close()
10
0 2327
Question John Lisa · Oct 30, 2020

I'm looking for the best strategy for extracting data from a Cache table that houses 86 Million lines of data and around 190 columns. I'm currently using DBeaver and the Invoice Service dates go back to 1996. Optimistically I'm looking to pull to a pipe delimited flat file, but even a year's worth of data takes many hours to get query results.

Any suggestions for the best practice/strategy?

Thanks,

John

2
0 488
Article Eduard Lebedyuk · Feb 5, 2016 11m read

Class Queries in InterSystems IRIS (and Cache, Ensemble, HealthShare) is a useful tool that separates SQL queries from Object Script code. Basically, it works like this: suppose that you want to use the same SQL query with different arguments in several different places.In this case you can avoid code duplication by declaring the query body as a class query and then calling this query by name. This approach is also convenient for custom queries, in which the task of obtaining the next row is defined by a developer. Sounds interesting? Then read on!

17
7 7818
Question Jude Mukkadayil · Oct 29, 2020

Hi,

         Can anyone please recommend an editor for cache database. I am looking for free version.

I am using winsql free version but data is missing while extracting or copying data from winsql.

Thanks

Jude

3
0 575
Question Phuc Nguyen · Oct 27, 2020

Hello,

I have a csp that occasionally will show Timeout error.

 


I am looking at the SQL Statements tab of the SQL Explorer:

The Average time is around 1.4, what would cause the CSP page to timeout if the query average time is 1.4 while the CSPGateway Server Response Timeout and Queued Request Timeout are default to 60 seconds? Does sql query from CSP that causes web pages to timeout get logged into SQL Statements ?

Thanks

9
0 473
Question Arun Kumar · Oct 29, 2020

Hi All,

Can you please guide me on how to restore the .cbk file from the 2015 Cache version into the 2017 version or any other versions of Cache or IRIS software? I have a new instance on my server. It's an entirely new server. I have a .cbk backup file.  I want to restore the backup file into a new namespace which one I will create on my new server.  When I am trying on ^DBREST utility, I am getting "This is not a Cache Backup File" this error. 

Please advise on this. It's a bit urgent.

Thanks,

Arun Kumar. 

6
0 625
Article Steven Hobbs · Oct 8, 2019 7m read

$LIST string format and %DynamicArray and %DynamicObject classes

IRIS, and previously Cache, contain several different ways to create a sequence containing a mixture of data values.  A data sequence that has been available for many years is the $LIST string.  Another more recent data sequence is the %DynamicArray class, which along with the %DynamicObject class, is part of the IRIS support for JSON string representation.  These two sequences involve very different tradeoffs.

4
10 3445
Question Daniel Buxton · Oct 20, 2020

Hey, 

I have a value in epoch time in which I need convert in order to be able to lookup a table that has dates in YYYY-MM-DD HH:MM:SS format

I thought the below would work but it is not.

select COUNT ('Arrival Time') FROM dbo.table where 'Arrival Time' < DATEADD(ms, CONVERT(int,LEFT(1603173432000, 20)), '1970-01-01 00:00:00')

8
0 485
Article Anton Umnikov · Apr 7, 2016 1m read

Presenter: Anton Umnikov
Task: Identify your slowest SQL queries and tune them for better performance
Approach: Use InterSystems’ query profiling and analysis tools. Discuss how system configuration can affect performance
 

This session will show you how you identify the weakest link in your application SQL and introduce you to the fine art of tuning those queries. To do this we will take a look at InterSystems query profiling and analysis tools, as well as how system configuration can impact SQL performance.

Problem: Obscurity on how our SQL engine works

Content related to this session, including slides, video and additional learning content can be found here.

2
0 457
Article Mikhail Khomenko · May 15, 2017 12m read

Prometheus is one of the monitoring systems adapted for collecting time series data.

Its installation and initial configuration are relatively easy. The system has a built-in graphic subsystem called PromDashfor visualizing data, but developers recommend using a free third-party product called Grafana. Prometheus can monitor a lot of things (hardware, containers, various DBMS's), but in this article, I would like to take a look at the monitoring of a Caché instance (to be exact, it will be an Ensemble instance, but the metrics will be from Caché). If you are interested – read along.

9
5 4618
InterSystems Official Jeff Fried · May 18, 2020

Caché  2018.1.4 and Ensemble 2018.1.4 maintenance releases are now available.   

Full product installation kits can be downloaded from the WRC Software Distribution site.

This is a maintenance release with many updates across a wide variety of areas.

For information about the corrections in this release, refer to the Release Changes list and the  Release Notes and Upgrade Checklist.  The documentation for Caché and Ensemble includes these as well as the Supported Platforms document, the Class Reference, and a full set of guides, references, tutorials, and articles.

2
0 747
Question Virat Sharma · Oct 18, 2020

Hi,

I am stuck with simple logic. I have a below string 

set a="<Name>ABC</Name><RollNo>45</RollNo><Name>XYZ</Name><RollNo>66</RollNo><Name>xyz</Name><RollNo>89</RollNo>"

I need logic to replace the values of roll no with "***". Is there any single command which can help in this scanerio.

I need to store this value in database after replace.

Thanks

6
0 647
Question Mikhail Khomenko · Oct 30, 2016

Good day! Is there an opportunity to debug the ISCAgent behaviour (in Linux)? ISCAgent uses /etc/iscagent/iscagent.conf as configuration file, but in docs I've found a description only for two parameters (port number and interface - http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=GHA_mirror#GHA_mirror_set_agent). Other parameters I can see by running /usr/local/etc/cachesys/ISCAgentCtrl status:

application_server.interface_address=*
application_server.port=2188
daemonized=yes
mirroring=on
pid=41850
running=yes
version=2015.2.0.664.3
8
0 3150
Question Mohamed Haneeq · Sep 10, 2020

Hello there community, 

I am pleased to say that i have started building a product and I have chosen InterSystems technology to be used in it. 

But I have a confusion with regard to it. 

I actually have to come to a conclusion to whether to use CACHE or IRIS. 

I will be using a lot of data and also integrating it along with Python for DEEP and Machine Learning. 

Also I do not have an idea of how to get the licensed version of either of that. 

I would like to get hold of this and also would like to try out the free version of either Data Bases before moving on to large scale production.

3
1 355
Question Pavithra Rajamohan · Oct 2, 2020

Hi all,

I need some advice about JSON conversions and the outputs. I am being sent a JSON response from an API call and I am struggling to produce an output that I can use from it.

I have used the %FromJSON() method call to take the JSON stream source (pData) and convert it to a Dynamic object (object) but I am a little unsure as to how I can read the dynamic object and use it to extract the values from this and set the values as a property in another class.

The current coding I have for the conversion:

set object = ##class(%DynamicAbstractObject).

21
1 1261
Question Fanny Van · May 16, 2018

Hey everyone, 

Here's my issue, I would like to develop a web application which use and send datas to TrakCare app, but I really don't know how to communicate with TrakCare's datas. 

With a little research, I think I could use "RESTForms" or "EnsembleWorkFlow" but I don't really get how...
Can somebody help me and tell me the way forward ?

3
0 774
Article Michael Smart · Oct 7, 2016 4m read

One useful feature of our REST framework is the ability for a dispatch class to identify request prefixes and forward them to another dispatch class. This approach of modularizing your URL map will improve code readability, enable you to easily maintain separate versions of an interface, and provide a means to protect API calls that only certain users will be allowed to access.

Overview

To set up a REST Service on your Caché instance, you need to define a dedicated CSP application and create the associated dispatch class that handles incoming requests. The dispatch class extends %CSP.

1
0 4038