#Caché

30 Followers · 4.6K Posts

  

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

Documentation.

Question Davidson Espindola · Apr 29, 2017

Hello friends,
I am having the following problem when passing a parameter in the execution of a zen query?
If the parameter has more than 50 characters of the error.
Http://127.0.0.1.57772/csp/sistema/CLINICA.Rel.Atestado.cls?nome="José Roberval Benedito da Silveira Gonçalves Sobrinho "

Is there a configuration or solution to this problem?

Hugs

Davidson Espindola

5
0 800
Question David Underhill · Aug 23, 2022

Credentials for a Productions are stored as plain text in ^Ens.SecondaryData.Password and exposed as plain text via SQL table Ens_Config.Credentials which is not ideal as only admins should know the credentials.

I can create my own adapter etc... to store and use encrypted passwords but does anyone know if there is a standard way to do this in a Production?

Alternatively, am I missing how to secure this so the production can run and someone can monitor and operate a production without access to the SQL table or global?

2
2 759
Question Wesley West · Aug 26, 2022

Hello! I am currently creating a class for a small error trap. I have it working and all is good but I really want to change the order of the fields in the SQL return from Alphabetical to something else.  

The current Order is ID, ActionType, ErrorCount, ErrorDetails, Model, ResultCode, ResultMessage, Stock and Yard

I would really like for the field order to be ID, Yard, Stock, Model, etc.

Example of current order,  

Is this possible?

Thanks in advance!!

2
0 267
Question Augie Turano · Oct 9, 2020

In MS SQL Server i can do this:

SELECT 
Category, CrewNumber, MedicalCertificationDate, Seat, SeatbeltUsed, Sex, ShoulderHarnessUsed, ToxicologyTestPerformed, childsub
INTO #tempfemale
FROM Aviation.Crew
WHERE Sex = 'F'

The code would create  a new temporary table with the fields defined from Aviation.Crew.   I cannot find how to do this in Cache SQL in the documentation.  Can someone show me the correct syntax or other solution?

11
1 2751
Announcement Jean Dormehl · Dec 6, 2018

Hi Community

I have created a simple package that allows the use of Cache with the Laravel Framework.

From my initial testing everything seems to be operating smoothly but I would like to appeal to the PHP users in the community to help me improve this package.

For those of you out there who have time and would be interested in this, please visit the repo at https://github.com/jeandormehl/laracache

Thanks in advance

8
3 1332
Question Arthur K · Jun 5, 2022

Hi ,

     When I use jdbc driver to query the column info ,the "REMARKS" field always show the same as the "COLUMN_NAME" field.

When I use the sql "select * from INFORMATION_SCHEMA.columns a where a.table_name='some table name ' " to query columns info,there has a "DESCRIPTION" field ,the value is some comment for the current field.

So is there anyway to return the description to the jdbc  remarks field? And is there anyway to update the desciption or remarks field? Or is there some other way that I don't know to manage column comment info?

1
0 499
Question Smythe Smythee · Aug 10, 2022

Hi,

I am receiving a JSON File as Stream container Using  pRequest As Ens.StreamContainer and output as  Output pResponse As %Persistent in a Custom Business Operation 

Please find the code below

Method OnMessage(pRequest As Ens.StreamContainer, Output pResponse As %Persistent) As %Status
{
    Set tFilename=..Adapter.CreateFilename(##class(%File).GetFilename(pRequest.OriginalFilename),..Filename)
    Set tSC=..Adapter.PutStream(tFilename, pRequest.Stream)
    Quit tSC
}

Question:How can i extract name,DOB,SSN from the pRequest

5
0 1032
Question Kurro Lopez · Dec 19, 2016

Hi all,

I'm trying to convert a HL7 section to a XML or JSON string.

We need to save the content of PID section into a SQL Column, therefore we need to convert it into a XML o JSON string

is there any easy way to convert it?

I've tried to convert it directly into a DTL, but all my attempts have been unsuccessful

Best regards,

Francisco Lopez

6
0 1623
Question Mark OReilly · Jul 4, 2022

Hi there have been various posts around how to clean up globals without parent data but none have gone into how you solve these issues. 

Our database is approaching 600gb in size so i am looking into how to reduce this. 

We use standard purge tasks. 

Our cache stream class has a global size of 2463243 from running global size so it is what i would like to tackle first. 

1) is there any way i can find based on my oldest message session for where most of these globals 

2) in the class where these are created what can be done to ensure purping. Basically we have 

set sIn=##class(%GlobalBinaryStream).

3
1 987
Article Muhammad Waseem · Jul 26, 2021 2m read

Healthcare interoperability is instrumental in improving patient care, decreasing healthcare provider costs, and providing a more accurate picture to providers. However, with so many different systems, data is formatted in many different ways. There are many standards that have been created to try to solve this problem, including HL7v2, HL7v3, and CDA but each one has its drawbacks.

FHIR, or Fast Healthcare Interoperability Resources, is a new format for healthcare data that aims at solving these problems.

2
1 3051
Article Sylvain Guilbaud · Apr 20, 2022 4m read

During a major version upgrade it is advisable to recompile the classes and routines of all your namespaces (see Major Version Post-Installation Tasks).

do $system.OBJ.CompileAllNamespaces("u")
do ##Class(%Routine).CompileAllNamespaces()

To automate this administration task and keep a log of any errors, below is an example of a class to import and compile into the USER namespace that you can use after each upgrade : admin.utils.cls



 Class admin.utils.cls

3
1 1494
Article Murray Oldfield · Mar 8, 2016 8m read

Your application is deployed and everything is running fine. Great, hi-five! Then out of the blue the phone starts to ring off the hook – it’s users complaining that the application is sometimes ‘slow’. But what does that mean? Sometimes? What tools do you have and what statistics should you be looking at to find and resolve this slowness? Is your system infrastructure up to the task of the user load? What infrastructure design questions should you have asked before you went into production? How can you capacity plan for new hardware with confidence and without over-spec'ing? How can you stop the phone ringing? How could you have stopped it ringing in the first place?

13
6 4899
Article Murray Oldfield · Apr 27, 2016 11m read

InterSystems Data Platforms and performance - Part 5 Monitoring with SNMP

In previous posts I have shown how it is possible to collect historical performance metrics using pButtons. I go to pButtons first because I know it is installed with every Data Platforms instance (Ensemble, Caché, …). However there are other ways to collect, process and display Caché performance metrics in real time either for simple monitoring or more importantly for much more sophisticated operational analytics and capacity planning.

8
2 4661
Question Fabio Care · Jul 27, 2022

Hello all, 

i am currently struggling following the instructions for reading an image file into the database as a base64 string.

My goal is to save an image into a global as base64. I followed different guides like:

https://community.intersystems.com/post/how-save-png-image-cache-base64…

https://community.intersystems.com/post/how-save-fileimage-some-specifi…

https://cedocs.intersystems.com/ens20152/csp/documatic/%25CSP.Documatic…

Here is my current code:

 FILE,BASE64
 Set file=##class(%Stream.

5
0 667
Question Kurro Lopez · Jul 21, 2022

Hi all,

I've just  update the version of WebTerminal using the link, but now it doesn't work.

When call to /terminal is displaying the following error:

{
    "errors":[ {
            "code":5002,
            "domain":"%ObjectErrors",
            "error":"ERROR #5002: Error de cache: <INVALID OREF>zWrite+5^WebTerminal.StaticContent.1",
            "id":"ObjectScriptError",
            "params":["<INVALID OREF>zWrite+5^WebTerminal.StaticContent.1"
            ]
        }
    ],
    "summary":"ERROR #5002: Error de cache: <INVALID OREF>zWrite+5^WebTerminal.StaticContent.
3
0 331
Question Timothy Leavitt · Jul 20, 2022

I'm getting wrapped around the axle with CAST and CONVERT and can't seem to find a way to do this (short of adding a stored procedure wrapping $zdt($zdth(posix,-2),3), which I'm refusing to do on principle, because there has to be some way to make this work).

Any ideas?

4
0 359
Question Thembelani Mlalazi · Jul 19, 2022

I am calling a stored procedure over an ODBC connection and every time I call it there are several warnings written to the log event {Found no Parameter 1 (used as 1) for query}.I seem to be getting this on every query executed and that seems to happen a number of times the query parameters are per query and its filling up my disc.

1) Is there a way to suppress these warnings as the query seems to be executed and data written to the database?

1
0 354
Article Danny Wijnschenk · Jul 19, 2022 4m read

Mixing Object syntax with SQL is one of the nice features in Object Script. But in one case, it gave strange results, so I decided to isolate the case and describe it here.

Let's say you need to write a classmethod that updates a single property on disk. Usually, i would write that using SQL like this :

ClassMethod ActivateSQL(customerId) as %Status
{
   &sql(Update Test.Customer Set Active=1 Where ID=:customerId)
   If SQLCODE'=0 {
      Set exception = ##class(%Exception.SQL).CreateFromSQLCODE(SQLCODE, $Get(%msg))
      Quit exception.
5
0 451
Question MARK PONGONIS · Jul 15, 2022

Is there a way to perform an %Prepare()/%Execute() that will wait until the record being queried is unlocked by another process? 

Ex: 

Process 1 - is opening record, updating, then saving. NOTE: this is using embedded SQL

&sql(SELECT %ID INTO :id FROM table WHERE Prop=:prop)
s obj=##class(APPTRACKER.CacheHB.CustomEventCacheHB).%OpenId(eventId)
//updating record...
s sc=obj.%Save()

Process 2 - is querying the same record while Process 1 has it open. Result is nothing is returned and %SQLCODE is 0

//simplified snippet with extra code removed
    ...
    s sql = ##class(%SQL.
3
0 321
Question Keith McCauley · May 20, 2022

I want to display to the user on their Zen page how much time is left before their session times out.

I know I can set the %session.AppTimeout to a particular value (or manage this in the Web Application) and I know I can retrieve this value from the %session object. I also know that I can set an event handler to do something when the session has timed out but I cannot find any way to determine how long before the session ends via the application timeout so that I can keep the user informed.

3
1 575
Article Rizmaan Marikar · Dec 25, 2021 13m read

There are many ways to generate excel files using Intersystems, some of them are ZEN reports, IRIS reports ( Logi reports or formally known as JReports), or we can use third party Java libraries, the possibilities are almost endless.

But, what if you want to create a simple spreadsheet with only Caché ObjectScript?

15
10 2339
Question Roger Andre · Jul 7, 2022

Hi, can anyone tell me how I should do the parameter calculation below in the MSM / MUMPS of Intersystems? STAP SIZE
STACK SIZE
MAX MODIFIED BUFFERS
DISK I / O RATE
SLICE COMMANDS
PARTITION SIZE
BUFFER POOL SIZE
NUMBER OF MUSERVER PROCESSES We have a rolling MSM that suffers from hangovers from the Activate service and the Workstation service several times a day and we are unable to determine if those hangouts are related to the number of users or overloading the system.

5
0 460
Question Dominic Chui · Jul 14, 2022

Let's say I have two lists of connected data where elements of listTwo only make sense if given an item of listOne as context:

listOne = ["A", "B", "C"]

listTwo = ["x", "y", "z"]

Tuples like ("A", "y") and ("C, "x") make sense, but "A" or "x" by themselves don't. I would like to pass in a list of such tuples into a method and have it handle each tuple in the list. So what would be the best way to format them given that ObjectScript does not have specialized tuples? Would it be nested $LISTBUILD lists or something else?

1
0 389