#Caché

30 Followers · 4.6K Posts

  

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

Documentation.

Question Marcio Coelho · Sep 9, 2020

I'm testing with an application I'm writing in python. But I noticed that the pythonbind3 library will only work on the same machine where the cache is running. Is there really such a dependency?

I'm trying to run the examples that are in the / dev / python / samples3 folder, but they only work if I set "LD_LIBRARY_PATH" with the path to the cache installation folder.

But... I have this error when LD_LIBRARY_PATH is empty:

[root@cache2018 samples3]# python CPTest2.py -user _SYSTEM -password xxxxxx Traceback (most recent call last): File "CPTest2.py", line 3, in

1
0 462
Question David King · Jul 13, 2018

Is Cache the preferred database source for extracting data elements for use in Health Share Patient Index or is there a significant benefit in sourcing data from a warehouse, data mart, or MV? I realize that could be a loaded question with 100 other questions that may follow, however, if there is a known advantage to extracting data from a particular data storage type, the answer may highlight that point. 

Our team is in the inception and elaboration phase of using the Health Share Patient Index solution.

1
0 657
Question Robert Bee · Feb 13, 2019

Edit:

May have found the issue but not the solution.

"SELECT * FROM wmhISTORYdETAIL" runs as a passthrough without asking for the DNS.

but

'SELECT Count([wmhISTORYdETAIL].[HistHMNumber] AS CountOfHistHMNumber FROM [wmhISTORYdETAIL] WHERE ((([wmhISTORYdETAIL].[HistMovType])='Receipt') AND (([wmhISTORYdETAIL].[HistMovDate])>=Date()-1) AND (([wmhISTORYdETAIL].[HistMovDate])<Date()));'

asks for the DNS but both are linked to a table that has the password saved.

Any Ideas please?

Rob

Hi

I have created an MS Access database with a passthrough query to our Intersystems Cache WMS system.

1
0 448
Question Marcus West · Aug 28, 2020

Dear community

I'm using HealthShare on Cache 2017.2.  I'm trying to find out how I can get a list of all the custom classes, routines and globals in %SYS namespace (if it's even possible).

We're about to perform an upgrade, and in the docs it mentions needing to check for anything custom in %SYS to avoid important stuff being overwritten.  Some of our solutions have been developed by an external consultancy and we want to make sure that none of their code or data will be affected by the upgrade.

2
0 450
Question Alexey Maslov · Sep 2, 2020

It's well-known among Studio users that besides few predefined code fragments (for ObjectScript, Basic, MV Basic) it's possible to add user-defined code fragments. I found it rather convenient to use them as patterns that help to follow some conventions (internal standards) of writing, say, methods descriptions.

But I didn't find a way how to share these patterns, except dumb copy-pasting. Did somebody succeed with this task? Any help would be appreciated.

10
0 422
Discussion Dmitry Maslennikov · Sep 4, 2020

The use of Source Code Control systems in development is important. And there are a few systems known in the world, like GIT, SVN (Subversion), Perforce, Mercurial. Where the most popular nowadays is the git. Using it is very useful in many cases, but mostly it depends on the code as text, which can be compared between commits, branches, or versions of releases and so on.

0
0 387
Question Anna Golitsyna · Sep 1, 2020

Hi,

I exported selected globals from a Cache 2017 database into a single 4 Gb gof file. Now I tried to import from this file via Management Portal on a different machine . Only about half of the globals was imported and my attempts to select additional globals led to nothing, no new globals have been imported. Well, obviously I am mildly curious what's going on and how can I see the corresponding error which did not appear in the Import window but I can also shrug it off and consider what should I do next.

23
0 1388
Question alex chang · Sep 3, 2020

I  have java  language experence. If I need parse a binary tcp packet . like following format

encoded string and send it to peer by tcp

1byte msg type + 4 byte(unsigned int) + raw byte(body)

To parse this package , Some Java code like this:

byte[] data = new byte[1024];

Bytebuf buf  = new ByteBuf(data)

byte type = buf.read()

int len = buf.ReadInt()

byte[] bodyBuff = new byte[len]

buf.Read(bodyBuff)

String str = new String(strBody)

So, does Objectscript have similar functionality to achieve similar results?

Tks.

1
0 429
Question Armin Gayl · Aug 7, 2018

Hello,

I would like to schedule the Database Compact and Freespace methods as legacy tasks.

Has anyone implemented this yet?
Is this even possible? 

The request for this is due to the fact that we have 3 interfaces in a namespace whose messages are deleted after 7 days. All other messages in this namespace should be kept for one year.
This leads to a certain fragmentation. Furthermore, the messages to be deleted are relatively large (MDM^T02 > 32MB), which in turn leads to a fast growth of the database size. 

How would you solve this problem?

With kind regards

Armin Gayl

1
0 651
Article Daniel Tamajon · Sep 1, 2020 5m read

Error management on InterSystems languages has been evolving along time. Next, we will show the different implementations and why you should use the TRY/THROW/CATCH mechanism.

You can read official error recommendations here.

InterSystems will not mark as obsoletes the non-recommended error management methods to allow giving support to legacy applications. We recommend using tools like objectscriptQuality to detect that legacy unrecommended usage along with many other possible issues and bugs.

2
3 1016
Question Ben Anderson · Aug 31, 2020

I'm trying to parse some XML but I ran into an issue where my data has a / in it (see below).

<pArray index="0">/shared/BENANDERSON</pArray>

When I ran it, I got this error.

ERROR #6232: Datatype validation failed for tag, pArray (ending at line 1 character 183), with value: /shared/BENANDERSON

Here is the code where I found the issue occurring. The XML reader must see the / as the invalid character. The value of P0 eventually ends up as null which causes another issue downstream. Is there a way for me to proceed with the / in the data? Thank you!

do %request.Content.

5
0 943
Announcement Ksenia Samokhvalova · Aug 28, 2020

Hello Developer Community!

We are looking to better understand how our users configure and manage our products. If you have a few minutes, please fill out this quick survey https://www.surveymonkey.com/r/N2JX3TQ

If you're willing to participate in an in-depth interview about your experiences, you might be eligible for a $100 gift card! Indicate in the survey that you'd like to talk to us and we will be in touch the second week in September!

Feedback from real users like you in invaluable to us and helps us create better product. 

Thank you so much!

0
0 253
Question Shri R · Aug 26, 2020

Hi Community,

I am looking some kind of logic or trigger some events when cache process ends.

For example, if I set some X global when i logged into terminal and when I closed the terminal or process ends by its own,  global to be removed.

Thanks in advance!!!.

SR

3
1 246
Question Yann Simons · Jul 2, 2020

Hello,

we use a NAS to archive stream from database to files. If we look at the file size on disk, it is bigger than expected.

For example : 

File size is 127K

ls -alh | grep write-chupmb-pdf
127K 2020-07-02 10:43 write-chupmb-pdf

Size on disk  is 192K

du -sh * | grep write-chupmb-pdf
192K    write-chupmb-pdf

Or expected size is 128K (with 4K blocs)

I tried with %Stream.FileBinary, %FileBinaryStream and OPEN/USE/WRITE and with multiple files and file type (PDF, JPG, PNG) and I have the same problem each time.

3
0 529
Question Muni Ganesh · Aug 1, 2020

Hi,

We are using CACHE 2017.2.1, I would like to retrieve data from Journal for killed global. Let say we have global name ^ EMP(123) with data and also have some child nodes and it has been killed by using cache kill command for some reason and we don't know who has executed this and when. My questions are below.

1) Can we get back the data of killed global from journal files,Is it possible or not ?

2) If above question is Yes, then how to find that specific journal file, which has the global which has been killed?

5
0 819
Question Paras Batheja · Aug 17, 2020

Hi Developers 

Is there any way that we can pass the values to the read prompts via cache routine.

For example, we have a couple of reports/routine in our system which accepts some inputs and after taking the inputs it generates some data. Right now it has proper UI and where User enters the value and in routines we have Read statements which accepts those inputs for further processing.

7
0 649
Question Yone Moreno · Aug 18, 2020

Hello,

We would need to handle the following use case:

A system replies to our GET with a list of codes and a signature.

Each code has been signed with the SHA512withECDSA algorithm

We would need to:

1 Concatenate all codes in a string

2 Decode the string which is in Base 64

3 Validate the string using the signature which we get in the reply

We have read for step 2:

Base64Decode

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

1
0 353
Question André Jouval · Aug 20, 2020

Hi,

Do you know if cache has programs and functions cache

I made a backup of my production base and when I use this function abouve I receve an error, but if I change any letter of the command the function go ok.

Didn´t work SELECT $$JOB1^KMIGxDESIG() FROM DUAL

Work sELECT $$JOB1^KMIGxDESIG() FROM DUAL

for this I.m using ODBC 64.

Thanks

1
0 358
Question Anna Golitsyna · Aug 19, 2020

Hi,

I'd like to compare classes in two namespaces, whether the corresponding .cls code exist in both namespaces or not, and if it does exist in both namespaces, whether the CLS code is identical. If there is such a routine out there the better, I'd like to see it. If not, I know how to get a list of classes in each namespace and I can check currClss.TimeChanged.

8
0 611
Question Mark O'Reilly · Aug 5, 2020

Hi:

I have an sql outbound adapter. Sometimes we have trouble connecting to the database. 

The timeout in develpment is set to 15 seconds in live it is 150 seconds as it is an always connected Buisness operation. 

I thought adding E=S or/and X=S would suspend the message. Why does it not? 

Is the only way around then adding something to the buisness operation itself/ creating a customised SQL buisness operation rather than EnsLib.SQL.OutboundAdapter?

Thanks 

Mark

5
0 595
Question Yone Moreno · Aug 18, 2020

Hello,

We would need help.

We have used the following commands:

set fecha = "2021-08-18T07:44:14.180+0000"

set nuevaFecha = ##class(Ens.Util.Time).ConvertDateTime(fecha,"%Y-%m-%d%T%H:%M:%S","%d/%m/%Y")

And when we write it to the terminal:

w nuevaFecha

It outputs nothing

Could you help us?

We have read:

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

https://community.intersystems.com/post/string-date

3
0 507
Question Jude Mukkadayil · Aug 12, 2020

Hi,

     Can anyone please explain me how to remove trailing squares from the text field (String). Trailing squares is a white space ?

I tried different things like Ltrim, Trim from sql query side and also from object scripting side something below.

 If Address1 set Address1 = $ZSTRIP(Address1,"<>P,<>C,<>W")
 If Address1 set Address1 = $ZSTRIP(Address1,"$C(9), $C(32), $C(160)")
 If Address1 set Address1 = $ZSTRIP(Address1,"*W,*C")

Nothing works for me

Can anyone please help me to solve this

Thanks

5
0 922
Question Dan Pahnke · Aug 12, 2020

I have a Read-Only Reporting Async with a Remote Database defined to a non-mirrored database on the primary failover member. I would like to update the non-mirrored database on the primary from the async; so far all my attempts fail with *protect* errors.

I found this page 

https://community.intersystems.com/post/execute-method-failover-member-…

and tried the SqlProc method. The procedure executed, no errors, but the change to the global was never made (or least not retained) either directly or through a JOBbed process. I wonder if I'm missing something in my configuration.

2
0 427