#Caché

30 Followers · 4.5K Posts

  

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

Documentation.

Question Soufiane Amroun · Nov 17, 2017

Hi community ,

i develop my LogUser Method on my rest API , the scenario is as follow :

when user enter his login & password , i check first in my table if he exists (this stape is done), now i want know how generate acces token from authorization server , i've as idea to call the  "%OAuth2.Server.Generate" which is implemented on the configuration party (we find the correspondint attached screenshot ), but i don't know if i'm sure , we find here the developped method:

ClassMethod LogUser(profile) As %Status
{
 set user ={}.%FromJSON(profile)
 set login=user.username
 set password=use

1
0 717
Question Jean Millette · Feb 14, 2017

...in order to initialize the data model and form with data from another object.

Our Zen MVC project recently had an issue with a child object being assigned to multiple parent objects (the design calls for one parent per child). The root cause of this issue was the use of a %session variable to pass the ID of the parent object to the OnLoadModel method of the DataModel associated with the child object. The goal is to use the ID to open the parent object and use some of its fields to populate default fields in the child and the child’s form. Editing multiple parents in Zen pages in tabbed windo

1
0 438
Question Michael Lundberg · Dec 27, 2016

Hi!

I'm trying to connect to one of our Ensemble servers Cache database from a C#-windows form . I'm running the client from my local computer with OS win7.  Using .NET FW ver 4.5.2 in the client.

ODBC local setup using "InterSystems ODBC35"

In this ODBC konfigurationview i can put my userID and password and try a testconnect (or ping). And that run successful.

However, we don't want to leave credentials in the ODBC-configuration it self (open up for anybody to use the source) but instead send it from the klients.

I have try all three ways from https://www.connectionstrings.com/cache/ and

1
0 494
Question Chip Gore · Aug 18, 2016

I'm VERY novice on all things "OpenAM", and beyond knowing that Caché supports working with OpenAM, I have nothing else to go on.

The documentation doesn't seem to be very deep on the nature of how this works beyond a single paragraph saying it's supported for Single Sign On (SSO).

For Caché to use this, I get that there is an environment variable (REMOTE_USER) which is set to "something", but it's not clear to me how this ends up mapping to a provisioned caché user (or LDAP provisioned user for that matter) and ultimately to the %Roles in effect and subsequent system access.

Can someone please e

1
0 454
Discussion Sylvain Guilbaud · Feb 21, 2022

Let's consider you would like to efficiently store your historical data in a similar structure than the one used for your current data, but without sharing the same physical storage (ie : not in the same global). What is the most efficient way to do it ?

Below a simple class of your current data : 


Class data.current.person Extends (%Persistent, %Populate)
{

Parameter DEFAULTGLOBAL = "^on.person";

Property name As %String;

Property dob As %Date(FORMAT = 4);

Property activ As %Boolean [ InitialExpression = 1 ];

Property created As %TimeStamp [ InitialExpression = {$zdt($h,3)} ];

Storage Def
9
0 515
Article Murray Oldfield · Nov 29, 2016 20m read

This post provides guidelines for configuration, system sizing and capacity planning when deploying IRIS and IRIS on a VMware ESXi. This post is based on and replaces the earlier IRIS-era guidance and reflects current VMware and InterSystems recommendations.

Last update Jan 2026. These guidelines are a best effort, remember requirements and capabilities of VMware and IRIS can change.

I jump right in with recommendations assuming you already have an understanding of VMware vSphere virtualization platform. The recommendations in this guide are not specific to any particular hardware or site sp







































1
6 7367
Question Token Ibragimov · Feb 18, 2022

i have create rest api service. Trying to get value from post request:

{   "UserName": "Tom",  "UserID": 123 }

here is my class

Class User.REST Extends %CSP.REST
{XData UrlMap [ XMLNamespace = "http://www.intersystems.com/urlmap]
{
<Routes>
<Map Prefix="/restforms" Forward="Form.REST.Main"/><Route Url="/test" Method="GET" Call="test"/>
<Route Url="/CreatePost" Method="POST" Call="post" Cors="true"/>
</Routes>
}

ClassMethod post() As %Status
{
    set sc = $$$OK
    set req = %request.content
    set userName = req.UserName
    zw userName
    return $$$OK
}

getting error:

{
    "errors": [
    

3
0 818
Question Arturo Masero · Feb 17, 2022

Hello fellows, I need you wisdom.

In my organization we code in ObjectScript and .int everyday. When I joined nobody knew barely nothing about classes and their use was almost only for storage definition purpose. During my self-learning in caché I discovered the object oriented programming and class developing was possible in caché and started to code in .cls . Being something self-taught, I may have some basic doubts I'd have missed in my documentation readings.

With this scenario in mind, it is common that we use the @ operator to use wildcards for storing same data structures in different

9
0 788
Question Gabriel Vellasques Tureck · Feb 1, 2022

I am using a Gradle Project for testing APIs, but I need to connect to the database.

I already put this on the dependencies:

And I'm trying to use this way:

But I'm keep getting this error: java.lang.ClassNotFoundException: com.intersys.jdbc.CacheDriver  

Is there any place that I can put a JAR file? Because the project has no lib folder (I already tried to add it, but it doesn't work).

6
0 765
Question Kurro Lopez · Feb 17, 2022

Hi all,

I have a rule to throw a message when there is an error. I want to prevent send the email if the origin of the error is the API to send the email

This is my rule

Now, If there is any error in any process, it works, but if there is an error in MyProduct.BO.SendEmail it is trying to send the error again, and it is a infinite loop.

Is there any way to check what is the origin and don't process if the origin is MyProduct.BO.SendEmail?

I've tried to set a condition in when node but it doesn't catch any property of Ens.AlertRequest

It doesn't work. I'm sure I'm not using the comman

2
0 398
Question Token Ibragimov · Feb 16, 2022

Hello.

I'm trying add header to soap request.

header:

<soapenv:Header>
    <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-sece…">
        <wsse:UsernameToken>
            <wsse:Username>TEST</wsse:Username>
            <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-…">Test!123</wsse:Password>
        </wsse:UsernameToken>
    </wsse:Security>
</soapenv:Header>

I create class

Class WebService.Header Extends %SOAP.Header
{

Parameter ELEMENTQUALIFIED = 1;

Parameter XMLSEQUEN

4
0 732
Question A.R.N. H Hafeel · Feb 9, 2022

Hello community, 

It's been quite some time since I came on this platform. 

I have been down with the global pandemic and is currently recovering. Thank you all for your valuable prayers. 

I am in the streak to learn something new and want to learn CACHE development. 

Is there a possible site or Link that I can follow please. 

From BASIC to ADVANCE is my requirement. 

Help me out on this community. 

God Bless and stay safe. 

3
0 824
Question Razvan Prepelita · Sep 8, 2017

Hello everyone, I'm trying to run a cache terminal script from cmd/ batch.
I run it like this C:\MyCache\bin#cterm.exe C:\Users\Me\Desktop\cache_scrip.scr
The command opens a terminal, but nothing happens, no title present, no log file written, no output, it's just stucked.
Here is my script:

case match: off
title MyTitle
; wait for the terminal to initialize and ask for our identification
echo: on
wait for:Username
send: MeUser<CR>
wait for:Password
send: mepass<CR>
logfile: C:\Users\Me\Desktop\cache_script.log
pause:10
send: znspace "ME_NAMESPACE"<CR>
wait for:ME_NAMESPACE>
send:
8
0 2801
Question Nezla · Jun 30, 2021

Hi Guys,

The lines in my dynamicGrid are getting chopped  off and not wrapping to the next lines, how can I make rows wrapping to the next line pls?

Thanks

1
0 303
Question Yone Moreno · May 13, 2020

Hello,

We have read the installation guide to get started with zpm package manager:

https://openexchange.intersystems.com/package/ObjectScript-Package-Mana…

We wonder what means the second step:

"Import the zpm.xml into IRIS and compile via any desired way (Management Portal, Studio or Terminal)"

We have thought that it means to place the zpm-0.2.2.xml file inside "C:\InterSystems\HealthShare_2\opt\contenedor"

Then in the terminal, go inside one namespace:

zn "esbsscc"

After that we load and compile the .xml:

write $SYSTEM.OBJ.Load("C:\InterSystems\HealthShare_2\opt\contened

7
1 1783
Question prashanth ponugoti · Jan 20, 2022

Hi Community,

I have created SOAP service and WSDL generated. While accessing WSDL URLs, it is redirecting to login page and giving access with production credentials.

I have tried to invoke form webservice clinet (soapui /postman), endup with authentication failed error.

Same service I am able to access from Terminal.

Could you please help me to access Production exposed SOAP service with out authentication.

1
0 377
Question Ruiyan Yu · Feb 9, 2022

Hi,

Management Portal SQL Interface

ERROR #5540: SQLCODE: -104 Message: Field 'QT.Fehlermeldung.parameter' (value '<params wert=\"\" feldName=\"Modul.name:...') failed validation

I've checked the syntax with some public tools with adjusted Tablename "Fehlermeldung" -> `Fehlermeldung`. It seems to be valid, but cache does not accept it.

INSERT INTO "Fehlermeldung" VALUES (1001021,'qsDataFieldOutOfRange','10','Der Wert ''<wert>'' des Datenfeldes <feldName> \"<feldBezeichnung>\" ist <artDerAbweichung> als <feldBound>.','<params wert=\"\" feldName=\"Modul.name:Bogen.name:Feld.name\" feldBezeic


9
0 1043
Article Jon Sue-Ho · Nov 17, 2016 2m read

The MONITOR process (also called the Caché Monitor) scans the messages in your cconsole.log file and sends you emails based on the severity of those messages.  The MONITOR is configured using the ^MONMGR utility in terminal.

The MONITOR should not be confused with the similarly named System Monitor, which checks a variety of system health and performance metrics and can log messages regarding them to the cconsole.log, where they can then be scanned by the MONITOR.

The process begins automatically at Caché startup and scans your cconsole.log for new messages on a regular interval, by default ever

6
2 1535
Article Alex Kogan · Jan 22, 2021 2m read

This concept may be known to some, but I just found it very useful and I would like to share as it may help someone else.

If you are working with CSP or Zen you sometimes come across the need to use embedded JavaScript. Suppose you are working with some loops, which use < or > as shown in example below:

&js< 

               var test = document.getElementById('seTest');

               for (var i = 0; i < test.options.length; i++) {

                              // Do Something here with my test.options[i]...

               }             

>

Now, because we are using < inside this for l

2
5 582
Question Sergi Vaque · Feb 3, 2022

Could be enabled a service as "%service_telnet" from cmd? I need to open a cache terminal from cmd but without this service enabled it is not possible, I mean avoiding the use of manage portal of course.

5
0 511
Question phillip jack · Feb 2, 2022

Hi Folks,

I created a persistent class as below 

Class myclass.DataBase Extends %Persistent
{

Property ID As %String;

Property Skill As list Of myclass.SerialTablelist;
}

and Created another Serial class as 

Class myclass.SerialTablelist Extends %SerialObject
{

Property PSkill As %String;

Property OSkill As %String;
}

Now I will save the id as below

do rs.Prepare("Insert into myclass.DataBase(ID)VALUES(?)")
do rs.Execute(ID)

 

I am facing issue with the AS LIST OF 

Could any one guide me how to save the Skill (PSkill ,OSkill ) using resultset (I am able to )

12
1 583
Question Kevin Furze · Sep 20, 2018

I'm using cache  win10-x64  version 2017.2.1.801

I want to uniquely identify the installation of cache, and from that create a meaningful unique folder names to store files. 

so to generate \192-168-1-100\KEVDEV\testfolder \ and \192-168-1-5\LIVE\testfolder\

so in this case, I could- use the IPaddress and thesecond part of $SYSTEM (cache instance name) - at least this way, I can instantly see where it came from with little risk of overwriting between cache instance.

looking into the options, I found

generate a unique random folder name (not helpful when trying to understand the contents)

w $SYSTEM -

10
0 1478
Question Kevin McGinn · Jan 31, 2022

I have a client with cache instance that is growing by 10-30G/day. In order to determine what is consuming space I ran "DO ^%GSIZE" to generate a report. From the report the bulk of the space consumption is from a couple of globals which appear to be built in globals not user defined. I would like to find documentation that details the function of these globals to help me understand how and why space is being consumed at such a rapid pace. The two globals of immediate concern are STRELPERF and STSRCHAUDIT but If there is reference where globals are defined that would be a useful tool going for

4
0 463
Question Lucas Galdino · Jan 31, 2022

Dear experts,
Can you give tips to solve this issue?

When I try start cache is recording this error message in cconsole.log:

01/31/22-14:11:28:143 (4516) 3 Error: <DIRECTORY>SYSTEM+4^%ZSTART running %ZSTART - Logins are disabled

I try acess terminal and management portal, but are disable because that error.
I dont know how can I enable the logins.

3
0 553