#Caché

1 Follower · 4.5K Posts

  

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

Documentation.

Question David Osborne · Mar 19, 2019

I'm attempting to use the .NET Entity Framework provider that is provided by InterSystems (see: https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=GBMP_eframe).  In our environment, the "Support Delimited Identifiers" option is turned off and we are not allowed to turn it on without significant testing effort.  When this setting is off, the SQL that is generated by the Entity Framework provider is not considered valid and therefore the provider doesn't work (it DOES work, however, when this setting is turned ON).

3
0 623
Question Kurro Lopez · Nov 4, 2021

Hi all,

I have a process that recive a datetime in ISO 8601 format (YYYY-MM-DDThh:mm:ss+001) to %timestamp value.

Example: set myDatetime  = "2021-11-04T11:10:00+0100"

I've triyed use $SYSTEM.SQL.CONVERT(myDatetime,"SQL_TIMESTAMP") but it doesn't work.

Any idea?

Regards,
Kurro Lopez

7
0 1053
Question Gary Koester · Nov 11, 2021

I am trying to create a scheduled task but get not implemented error when I try to run it.

Class PICIS.Core.Tasks.CleanEntry Extends %RegisteredObject
{

ClassMethod ClearTasks(pBackupFile As %String = "d:\Temp\BackupTasks.xml", pDelete As %Boolean = 0)
{
    // Create backup file
    Set tBackup = ##class(%Stream.FileCharacter).%New()
    Set tBackup.Filename = pBackupFile
    Do tBackup.WriteLine("<?xml version=""1.0"" encoding=""UTF-8""?>")
    Do tBackup.WriteLine("<Tasks>")

14
0 659
Question Subramaniyan Kumarasamy · Sep 24, 2021

[SQLCODE: <-400>:<Fatal error occurred>][Cache Error: <<MAXSTRING>zExecute+3^%sqlcq.LIM.cls1043369.1>][Location: <ServerLoop>][SQLCODE: <-400>:<Fatal error occurred>][Cache Error: <<MAXSTRING>zExecute+3^%sqlcq.LIM.cls1043369.1>][Location: <ServerLoop>]   at InterSystems.Data.CacheClient.CacheADOConnection.GetServerError(Int32 rc)   at InterSystems.Data.CacheClient.CacheADOConnection.processError(Int32 error, Int32 allowError)   at InterSystems.Data.CacheClient.InStream.readHeader(Int32 stmt_id, Int32 type, Int32 allowError)   at

3
0 307
Article Laurel James (GJS) · Oct 25, 2021 2m read

InterSystems technologies are renowned for their high performing databases, which support the systems and operations of many organisations. However a key ingredient to this success is the quality and maintainability of their code. 

The quality of code can impact everything from speed and ease of fixing bugs and making enhancements, to the overall performance of your organization and your ability to get ahead in the marketplace. 

1
1 461
Article Muhammad Waseem · Nov 14, 2021 2m read
2
0 367
Article Joel Solon · Dec 23, 2015 1m read

In the Caché Foundations course, students are learning about Caché Development and ObjectScript syntax at the same time. To help students complete the exercises, we provide an ObjectScript Quick Reference (aka "the Cheat Sheet").

It is not a reference for all of ObjectScript! It is a list of the ObjectScript commands and functions that students use during the course, along with common syntax for objects, collections, etc. It also contains some useful macros.

We are providing a pdf version to the Developer Community.

6
0 1744
Question Cathy Sun · Nov 9, 2021

Hi, I am new to InterSystems database. I am developing an application to display real time skillset statistic data, including max waiting time per skillset. I have access to the database through ODBC, using InterSystems ODBC driver. But I don't know from which table or view to get real time data of maximum waiting time per skillset. I appreciate any advices.

3
0 208
Question Salma Sarwar · Jan 19, 2018

Hi

I am in the process of trying to implement version control software with studio.  Has anyone got any recommendations (either Linux based/windows based) as a place to start I have installed Gitlab and I wanted to know whether anyone has come across any obstacles using this.

I was also wondering whether anyone has developed any hooks for Gitlab that works well with Studio as I would prefer if there was a more integrated solution with studio?  Any help with this would be great.

Thank you.

Kind Regards,

Salma

7
0 989
Article Muhammad Waseem · Nov 7, 2021 1m read

In my previous article I demonstrated the steps to connect to Caché from Appeon PowerBuilder by using ODBC.
In this article I will demonstrated how to Retrieve data from Caché with Appeon PowerBuilder (https://www.appeon.com/products/powerbuilder) by using ODBC

I am using Company.cls from Samples-Data (https://github.com/intersystems/Samples-Data/tree/master/cls/Sample

So Let's start:

Step 1 : First of all we need to establish a connection (https://community.intersystems.com/post/connecting-cach%C3%A9-appeon-po…)

0
0 519
Question Arturo Masero · Nov 3, 2021

Hello,

I don't know if the title is accurate enough. I have a legacy code that I need to optimize. It's a routine written in objectscript. It accepts 4 parameters and runs 6 nested FOR...$ORDER reading a big global.

The thing is when I run the routine the first time it takes around 60 seconds to run. If I run it again it takes 5 seconds. If I wait around 6 to 10 minutes to run it again, it takes 60 seconds again, but if I run it every 1, 2, 3... minutes it still takes only 5 seconds to run.

9
0 638
Question Nicky Zhu · Nov 3, 2021

Hi guys,

My client has a requirement to add a column of random numbers to the query result.

I wrote a function as below:

Class Utils.SqlUtility Extends %RegisteredObject
{

ClassMethod GetSomeNumber(intInput As %Integer) As %Integer [ SqlName = GetNumber, SqlProc ]
{
    Return $R(intInput)
}

}

But in the returned sql result, every row share the same value, as below,

SELECT Utils.GetNumber('456'),
ID, Citizenship, DOB, FirstName, Gender, IDNumber, LastName, PatientNumber, PhoneNumber
FROM CDR.Patient

How may I refactor the function or sql to make the random value really random on each of the rows?

Thanks.

6
0 1130
Article Daniel Tamajon · Sep 21, 2021 2m read

Hi community!

I want to introduce you a new powerful feature from our static code analyzer objectscriptQuality

Each time a new IRIS version is released, you need to prepare a roadmap for migration in which you need to spend a lot of time on testing to find where your code is not accomplishing with the newer version. Or maybe you need your code to be compatible with multiple IRIS or Caché versions.

You can now simplify the task running the analysis for the different IRIS and Caché database versions, so you will get the failing code before you start to test.

1
1 499
Question Evgenii Ermolaev · Oct 23, 2021

I need to execute multiple DELETE statements in a single query like this

DELETE FROM TableName WHERE ID = 2;
DELETE FROM TableName WHERE ID = 3;
DELETE FROM TableName WHERE ID = 4;

However It does not work when there're more than 2 statements and gives me an error

Expected FROM found WHERE^DELETE FROM TableName WHERE

Using IN is not an option.

9
0 428
Article Laurel James (GJS) · Nov 2, 2021 1m read

We're hosting our Deltanji and Serenji user group session tomorrow - there's still time to register, if you haven't already. 

We'll be showcasing some advanced features of Deltanjiand Serenji in VS Code with time for a discussion - so feel free to bring along any problems you need help solving or share your feedback on our tools. We'd love to hear your thoughts. If you're interested in our tools this is a great chance to hear what others have to say, as well as asking your own questions.

Date: Wednesday, November 3rd

Time: 11-12pm EDT / 3-4pm GMT.

Let us know you'll be attending on Eventbrite

0
0 178
Question Kevin McGinn · Oct 25, 2021

I am relatively new to Intersystems cache database management. As I understand it, a database is set with a maximum size or unlimited and the size of each space allocation for the database is defined. My understanding is that the cache database will then manage the allotment of space to the database as the current space allocation is consumed. Though I do not know why one would want to do this, I have been told that the space allocation to a database can be set to be handled manually. This is something, if true, I was not aware of. If this is true, what is the mechanism to set this up and

6
0 389
Question Norman W. Freeman · Oct 29, 2021

I have a workstation with a CACHE instance up and running.

On that same workstation there is also an instance of IRIS (fresh install). I would like to migrate manually the CACHE database to IRIS (ideally, all globals, routines and classes).

What I tried is to copy C:\InterSystems\Cache\mgr\CACHE.DAT to C:\InterSystems\IRIS\mgr\IRIS.DAT (after shutting down both instances) but it does not work.

I got the following message :(112) The service for the IRIS instance did not start.

6
2 1414
Question Kurro Lopez · Oct 29, 2021

Hi all.

I'm trying to create a route rule that can call to a web service according to a parameter of a message.

My first attempt is the following:

I have a common class with all information, BuscarHuecoRequest, and check what is the value of property "CodigoProveedor".

The table T_PROVEEDOR contains the list of code with the code of the provider, if is F, calls to WSF, if is C, calls to WSC, etc... Using a transformation to convert the values to this provider.

It raises an error, because the property CodigoProveedor doesn't exist.

I've debugged and I see the following code:

1
0 305
Question Nael Nasereldeen · Oct 26, 2021

Hi,

I wonder if anyone tackled the following problem-

Sending a mail with an embedded image is straight forward using %Net.SMTP

status=Message.AttachFile(Dir,FileName)

Message.TextData.Write("..<img src=""cid:xyz.png"">..")

Outlook displays such an Email as expected- with the image in the body of the mail.

Gmail displays the image as an attached file.

There are a lot of suggestions online about this, but none is working for me.

Did anyone face and solved this issue?

Regards,

Nael Naseraldeen

6
0 492
Question Yone Moreno · Oct 27, 2021

First of all thanks for your help and time

We would need to find inside PID:3 which one meets the following condition:

PID 3.4.1 = "CAC" and PID 3.5 = "JHN"

We have been investigating how could we do it

We have achieved to get single fields in a call request as follows:

request.GetValueAt("ORCgrp(1).ORC:OrderingProvider(1).IDNumber")

##class(Ens.Util.Time).ConvertDateTime(request.GetValueAt("PID:DateTimeofBirth"),"%Y%m%d","%Y-%m-%d")

However, how would you recommend us to look for a specific field in PID meets a specific criteria?

2
0 539
Question Sergey Pavlov · Sep 3, 2021

UPDATE:It turns out it was just me being a dummy, and the snmpd was correctly telling me there is no value associated with that exact key. I should have used snmpwalk instead of snmpget to display the whole tree.Original Post follows:Hello!I'm trying to set up SNMP monitoring on Caché, using documentation and this articleI'm running net-snmp on Red Hat Enterprise Linux Server release 7.3 (with CentOS repositories), and Caché version 2017.1It looks like snmpd is running as AgentX master, and Caché subagent is running too/opt/cache/mgr/SNMP.log with debug shows no errors and it looks like cache

1
0 4468