#Caché

30 Followers · 4.5K Posts

  

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

Documentation.

Article Hiroshi Sato · Jun 20, 2024 2m read

InterSystems FAQ rubric

The procedure for uploading/downloading from an FTP server is as follows.

1. Upload the image file to the FTP server

 set tmpfile="c:\temp\test.jpg"
 set ftp=##class(%Net.FtpSession).%New() 
 // connect to FTP server
 do ftp.Connect("","<username>","<password>")
 // set transfer mode to BINARY
 do ftp.Binary()
 // Move to the directory to upload
 do ftp.SetDirectory("/temp/upload")
 // Prepare a stream of files to upload  
 set file=##class(%File).%New(tmpfile)
 do file.
0
1 336
Article Hiroshi Sato · Jun 6, 2024 1m read

InterSystems FAQ rubric

If you want to run an OS executable file, command, or a program created within an InterSystems product when the InterSystems product starts, write the processing in the SYSTEM^%ZSTART routine. (The %ZSTART routine is created in the %SYS namespace).

Before you write any code in SYSTEM^%ZSTART, make sure that it works properly under all conditions.

If the ^%ZSTART routine is written incorrectly, or if it is written correctly but the command does not return a response or an error occurs during processing, InterSystems products may not be able to start.

1
0 186
Question Matheus Augusto · Jun 13, 2024

Is there any way to include a CSP page within a CLS?
Example: #Include file.csp 

Context: I work with a legacy that most screens are built using only CLS. I'm trying to change this by separating the frontend layers to be built only with CSP and backend layers using CLS. I improvised a method that injects an iframe to render the CSP in CLS through that iframe, but I'm still not happy. I need to know if there is any way to include this CSP using some specific resource for this.

15
0 247
Question Anzelem Sanyatwe · Oct 25, 2016

ISCAgent is automatically installed with Cache, runs as a service and can be configured to
start with the system. This is fine – but the complication comes when this is on VCS clusters with
Mirroring on. When installing a Single Instance of Cache in a Cluster, point number 2. Says “Create
a link from /usr/local/etc/cachesys to the shared disk. This forces the Caché registry and all
supporting files to be stored on the shared disk resource you have configured as part of the
service group.

15
0 1905
Article israel khanokh · Oct 5, 2023 6m read

Hello community, 

Just wanted to share..

While requested to access some service I was told to authenticate my request using OAuth 1.0 (revision A) with HMAC-SHA256 as a signing method. And knowing little to none about it. I started by testing it first in Postman, and all worked just fine. BUT with Object Script, well.. a big smile goes here! :) as I had some issues and no one to suggest..  
In the end the most helpful thing to do was to refer the docs here : https://oauth.net/core/1.0a/  while the signature method in it is for HMAC-SHA1 and RSA-SHA1 it is valid for HMAC-SHA256 as

1
2 1042
Question Virat Sharma · May 29, 2024

Hi All,

I am working on SQL based KPI in IRIS BI. I want to remove below highlighted search text box in "auto" filter type.

We cannot use other type like only dropdown etc. Is there a way we can do this ? 

One way I can see is writing own control instead of using default control but I am not aware how to do this. I didn't find any sample code for this. 

Is there any sample code available for writing custom control which I can refer.

Please assist

1
0 204
InterSystems Official Fabiano Sanches · May 30, 2024

Beginning with the release of InterSystems IRIS® data platform 2022.3, InterSystems corrected the license enforcement mechanism to include REST and SOAP requests. Due to this change, environments with non-core-based licenses that use REST or SOAP may experience greater license utilization after upgrading. To determine if this advisory applies to your InterSystems license, follow the instructions in the FAQ linked below.

This table summarizes the enforcement:

Product

REST & SOAP requests included in license enforcement?

0
0 443
Article Hiroshi Sato · May 30, 2024 1m read

InterSystems FAQ rubric

To disable the timeout, set the query timeout to disabled in the DSN settings:

Windows Control Panel > Administrative Tools > Data Sources (ODBC) > System DSN configuration

If you check Disable query timeout, the timeout will be disabled.

If you want to change it on the application side, you can set it at the ODBC API level.

Set the SQL_ATTR_QUERY_TIMEOUT attribute when calling the ODBC SQLSetStmtAttr function before connecting to the data source.

0
0 405
Article Megumi Kakechi · May 23, 2024 2m read

InterSystems FAQ rubric

The TIMESTAMP type corresponds to the %Library.TimeStamp data type (=%TimeStamp) in InterSystems products, and the format is YYYY-MM-DD HH:MM:SS.nnnnnnnnn.

If you want to change the precision after the decimal point, set it using the following method.

1) Set system-wide

Management Portal: [System Administration] > [Configuration] > [SQL and Object Settings] > [General SQL Settings] 
Default time precision for GETDATE(), CURRENT_TIME, CURRENT_TIMESTAMP. You can specify the number of digits in the range 0 to 9.

0
0 335
Article Muhammad Waseem · May 22, 2024 3m read

  

Hi Community,
In this series of articles, we will explore the following InterSystems SQL usage options:

  1. Embedded SQL

  2. Dynamic SQL

  3. Class Queries


SQL Overview

InterSystems SQL provides a full set of standard relational features, including the ability to define table schema, execute queries, and define and execute stored procedures. You can execute InterSystems SQL interactively from the Management Portal or programmatically from using a SQL shell interface.

0
2 345
Question Robert Steed · May 21, 2024

I created %ZSTART, having just learned about it. I included some minimal code to test it, as follows:
%ZSTART
SYSTEM
         WRITE "SYSTEM.",!
         QUIT
JOB
         WRITE "JOB.",!
         QUIT
LOGIN
         WRITE "LOGIN.",!
         QUIT
CALLIN
         WRITE "CALLIN.",!
         QUIT

Now Terminal still works as normal, and sure enough I get "LOGIN" displayed, but when I start Studio I get an error message such as the following. I wonder what Caché ODBC has to do with it.

3
1 245
Question Stephane Devin · May 17, 2024

Hi, I was working with %sStream.FileBynary and following the doc when I find an info that I'm not sure of.
In the part of the doc where it talks about saving streams, it does not precise where it is saved.
I tried to fill my stream, then rewind, then set the file and finally saved.
And it puts in my default directory with the temporary name.
If I do a zwrite of my stream, I get these properties about the file and directory.
(StoreFile) = "zKc2m8v1.stream"
(NormalizedDirectory) = "C:\InterSystems\Community\mgr\user\stream\"
I figured it was maybe because I used a relative path while using LinkToFile.

6
0 447
Question Stephane Devin · May 15, 2024

Hi, I need to use some pythonic library from cos.
To use them I need a python dict with some python object in it
Ex in python:

obj = pythonObject("value1")
dict = {object : obj  ,key : "value2"}
result = pythonFunc(dict)

To do that I first tried to pass by dynamic object, to later convert them in dict from Json. But unfortunately the dynamic object doesn't accept python object inside it. And my pythonic function need to have an instance of my python object.

2
0 199
Question Florian Hansmann · Feb 27, 2020

Hello Community,

My Intersystems Caché Version: 1.2014 (Can't update now.)

I have the following issue:

I have for example an articlenumber with 15049950, which is numeric. But sometimes it can also be an alphanumeric string like PK15049950.

How can i set numbers always to string in Json Stream with quotes like "15049950".

Code Example:

set object = ##class(%ZEN.proxyObject).%New()

set articlenumber = "15049950"

set object.articlenumber = articlenumber

set x = ##class(%ZEN.Auxiliary.jsonArrayProvider).%WriteJSONStreamFromObject(.

5
0 454
Question Caio Timm · Feb 1, 2023

Hi guys,

I'm trying find a way to create a row with the number of each row.

For example:

In the SQL above, i want a way to create a collum with the number of corresponding row, in this case:

1

2

3

In SQl SERVER i can use FOR, RANK or ROM_NUMBER to do this, but, i can't find a way to do the same in cache SQL.

Can someone help me?

Thank you.

4
0 594
Question Basil Eldhose · May 8, 2024

I have just started working on cache and I am trying to push code from a tfs repo to a cache server namespace. I know that from you vscode you just can compile and that would reach the namespace. But I want this process to be automated , like a ci/cd pipeline that gets triggered only from a kube container. Is there any documentation which I can follow. We are still using cache not IRIS

2
0 172
Question Token Ibragimov · Apr 2, 2024

Hello!

Trying to configure tortoise GIT in Linux System

NAME="Red Hat Enterprise Linux Server"
VERSION="7.9 (Maipo)"
My steps

1. Enable [write-access](http://docs.intersystems.com/ens20151/csp/docbook/DocBook.UI.Page.cls?K…) to CACHELIB database via the Management Portal. (This is required for csp-page with settings import.)
2. Import project in %SYS:

    %SYS> do $system.OBJ.ImportDir("/arch/cache-tort-git-master/","*.xml","ck",,1)

3. Now you can disable write-access to CACHELIB.
4. In Management Portal select the new %SourceControl.

12
0 332
Question Anna Golitsyna · May 2, 2024

I am trying to locate a method that would allow me to differentiate between InterSystems preinstalled/system namespaces and "our own" namespaces. I am interested both in Cache and Iris answers if they are different. Yes, I can list what to disregard, like if not HSLIB or if not DOCBOOK but hoping for a more universal and elegant answer.

3
0 253
Article Tomoko Furuzono · May 2, 2024 1m read

InterSystems FAQ rubric

After upgrading your system, you may receive the error below when you try to open the Management Portal:

ERROR #5001: Server version of object does not match version sent from the client: %ZEN.Component.vgroup

This error is caused by outdated information remaining in your browser's cache.

You can resolve the error by clearing your browser's cache.

1
0 333
Question Andy Stobirski · May 1, 2024

Hi Guys

Two of the HC servers I manage (a mirrored pair) have lost the ability to debug code, and I am unsure as to why this has happened. Clearly something has changed, as the other three are working just fine.

When I select a Class Method as debug target, add a few break points and run it, I get the following Output

Debugger executing '##class(InPhase.Test.CanUpdate).TestBIU()'
Executing ##class(InPhase.Test.CanUpdate).TestBIU()

<COMMAND>zDebugStub+40^%Debugger.System.1

Program has terminated.
Target has exited debugger

The classmethod being Debugged ##class(InPhase.Test.CanUpdate).

2
0 228
Article Rob Tweed · Apr 30, 2024 3m read

A few weeks ago I posted an announcement about a JavaScript-based interface for our mg_web WebServer interfacing addon module.  mg_web isn't just restricted to use by JavaScript developers though.  Many readers will be ObjectScript developers who are more used to using CSP as their web gateway.  Some may even have much older legacy WebLink-based applications (and be wondering how to support them given that IRIS does not support WebLink).

This article aims to provide some more information on mg_web and to explain why it's worth a look for ObjectScript developers.

0
2 401