#Caché

30 Followers · 4.6K Posts

  

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

Documentation.

Article Iryna Mykhailova · Oct 30, 2018 11m read

InterSystems states that Caché supports at least three data models – relational, object and hierarchical (globals). On can work with data presented in relational model in a program written on C# the same way one works with any other relational DB. To work with data presented by object model in C# one needs to use .NET Managed Provider or some kind or ORM. And starting with version 2012.2 one can work directly with globals (or use direct access to hierarchical data) via Caché eXTreme for .NET

18
2 2361
Article Andreas Schneider · Mar 28, 2021 4m read

This small tutorial described how to „register“ the ADO.NET Database Provider (Driver) for InterSystems IRIS and InterSystems Caché on a Windows machine.

Before we start: Why need the ADO.NET Database Provider to be registered?

ADO.NET provides factory classes standardize the way programmer will create a provider-specific Connection. This simplifies the way programmers create provider specific instances in a generic data access API. Details about that can be found here: https://docs.microsoft.

0
0 1333
Question Anderson Negreli · Mar 25, 2021

Hi,

I'm doing a query in SQL and I need to sort my data by some non-repeated field.

Unfortunately, my data is grouped in a way that I cannot guarantee that any column will not have repeated data, so one solution would be to take the row number.

Also, the Cache is not accepting Row_Number () in my querry and I would like to know if there is another solution to return line numbers or some way to add this function to the Cache.

Best regards.

7
0 3862
InterSystems Official Jeff Fried · Mar 26, 2021

Three new sets of maintenance releases are now available: 

  • Caché  2018.1.5, Ensemble 2018.1.5, and HSAP 2018.1.5
  • InterSystems IRIS 2019.1.2, IRIS for Health 2019.1.2, and HealthShare Health Connect 2019.1.2
  • InterSystems IRIS 2020.1.1, IRIS for Health 2020.1.1, and HealthShare Health Connect 2020.1.1

Installation kits and containers can be downloaded from the WRC Software Distribution site.

These are maintenance releases with many updates across a wide variety of areas.

1
0 504
Question Evgenii Ermolaev · Mar 25, 2021

Currently, I am working on a CSP application that is supposed to generate reports. Users will have varying access to said reports. To achieve that, I plan to use LDAP (because it's used in other systems where those users already exist). Documentation does not provide enough information, so I'd like a clarification:
Do I need to enable LDAP authentication for the whole Cache instance to use LDAP authentication in a single CSP application in that instance?

5
0 388
Question Scott Roth · Mar 23, 2021

A while back I asked the developer community for a way to loop through repeatable HL7 segments and check them against a Data Lookup table within a Business Rule.

The example I got was the following...

ClassMethod GroupIDExists(pHL7Msg As EnsLib.HL7.Message, pSegment As %String, pField As %String, pLookupTable As %String) As %Boolean
{
            #dim tSeg as EnsLib.HL7.
1
0 788
Question Josefien Janssen · Mar 23, 2021

Cache ODBC State S1000 Native Code 400 Illegal Value

This is my query:

select  DateTijdSec from 
 GLPPatTcActie 
 where pnr = '27085070017' and LTestId->Makey='BLA' and VerzamelDatTijd < '2021-03-04-2021 09:04' and glpactieid->makey in ('TAV','TMA') order by DateTijdSec desc

Most likely there is a wrong date time in the table, how can i get the data?

8
0 1241
Question Fábio Campos · Mar 18, 2021

PORTUGUESE

Olá a todos!

Estou com dificuldades de fazer meu select para retornar palavras que contém acentos.

Na minha tabela TESTE, por exemplo, tenho palavras no campo NOME como Fábio e Fabio, porém se eu coloco a instrução:

SELECT * FROM TESTE
WHERE nome LIKE 'FÁBIO'

a instrução só traz FÁBIO.

Como eu faço para trazer todas as palavras: FÁBIO, FABIO, FABÍO, FABIÓ, FÁBÍÓ, FÂBIO, etc...

Conto com sua ajuda!

ENGLISH

Hello everyone!
9
0 2600
InterSystems Official Pete Greskoff · Mar 23, 2021

March 23, 2021 – Alert: Potential Data Integrity Issue with Mirror Dejournaling

InterSystems has corrected a defect that can cause data inconsistency issues on non-primary mirror members in extremely rare circumstances. This defect affects all released versions of InterSystems products.

If the defect occurs, it happens silently during normal operation on a mirrored system. The result of this defect is that a mirror member fails to dejournal a subset of journal records, which then leads to data inconsistency across mirror members. This affects both failover and async members.

0
0 399
Question José Hélington Pires da Cruz · Mar 20, 2021

Hi, I have a class that extend to other classes.

If I compile one of this classes, no problem is generated.

But if I try to compile the first class using flag c-ukb, all that extend from that and have the Date component generate an error.

The error is about the method %GetPaneContents from abstract class.

Do you already passed this? How can I solve my problem?

2
0 301
Question Aiymann Amirova · Mar 19, 2021

Hi everyone.

I wonder, whether is it possible to get description of emoji in COS.

For example, I have data with emojis like 🙏 in database, that should be delivered to transaction system via service. But service doesn't support emojis, so I want to convert emoji to its unicode description like "Person with Folded Hands". Is it possible? I'll be grateful for help

1
0 283
Question Julian Matthews · Mar 17, 2021

Hey everyone.

I have a process where I create a new %Stream.FileCharacter object, specify the filename (including it's path), write data to the stream, and then save. However for some reason, if the user account does not have write access to the directory, the %Save method is still returning true even though it was unable to actually write the file to the folder.

The location is a UNC path, and I'm wondering if this is tripping me up?

3
0 456
Question Evgenii Ermolaev · Mar 16, 2021

I am trying to use Dynamic SQL because I need to supply data at runtime.
The generated query returns 0 rows for some reason. If I copy/paste the query into Monitor, it works correctly. I am suspecting it has something to do with dates being the wrong format (I am supplying them in 'YYYY-MM-DD' format). Is that the cause? And if so, how do I supply dates in correct format?

1
0 250
Question Stuart Byrne · Mar 14, 2021

I had a challenge recently where I was asked to parse and iterate JSON to find a patient that has a forename = "Bill" and try to make the function that iterates through the code re-usable.

Being working in Healthcare there isn't much experience or demand for parsing JSON, as most of my work is HL7.

I took this on using the documentation and worked out a way to parse the JSON (see posts below for code and source data).

I've worked out how to iterate through the fields and repeating elements, however I'm having an issue quitting out upon finding a patient with the forename Bill.

6
0 518
Article Eduard Lebedyuk · Mar 24, 2017 9m read

In my previous article, we reviewed possible use-cases for macros, so let’s now proceed to a more comprehensive example of macros usability. In this article we will design and build a logging system.

Logging system

Logging system is a useful tool for monitoring the work of an application that saves a lot of time during debugging and monitoring. Our system would consist of two parts:

  • Storage class (for log records)
  • Set of macros that automatically add a new record to the log
6
10 3537
Question Alexey Maslov · Feb 6, 2021

During some consulting activity, I found at the client's site CACHEAUDIT database of more than 100 GB size. The reason was simple: several processes produced a great amount of %System/%System/OSCommand audit records due to frequent external calls ($zf(-100,.)). As it is well-known, those events can be easily disabled systemwide, while this can be hardly considered secure enough. Reducing the number of days before audit cleanup from default 62 to some reasonable figure (e.g.

2
0 397
Question Henry Pereira · Mar 12, 2021

Hi community,

I need to write an SQL query with hierarchical order, I have a table with a column referencing itself, similar as the sample bellow:



ID
DATE
MESSAGE
LOGIN
PARENT_ID
1
27/01/21
Bacon ipsum dolor amet pork shoulder ribs
User 1
2
27/01/21
Gouda croque monsieur emmental.
4
0 362
Question Chris Bransden · Mar 11, 2021

Hi! I have a complex SQL select query which I execute via %ResultSet. It also includes a UNION. The select statement within the union should only be done when an external parameter is set, and I'm not sure of way of doing that within SQL, other than something like

SELECT FOO FROM BAR

WHERE (some conditions)

UNION

SELECT FOO2 FROM BAR2

WHERE :doUnion = 1 AND (some conditions)

this works, but I don't think it's particularly optimal as I believe it will still execute the second SELECT regardless of :doUnion.

12
0 628
Question Sorin Petrescu · Mar 8, 2021

Hi,

I have to create to a web socket client, but I'm unable to read any data from the server, after flushing the buffer. I have no access to the server, only two examples for the client, one in java and the other one in php:

java example:

socket = new Socket("192.168.0.1", 2003);

DataOutputStream out = new DataOutputStream(socket.getOutputStream());

out.writeUTF("aPassword");

out.writeInt(websiteId);

out.flush();

DataInputStream in = new DataInputStream(socket.getInputStream());

int orderId = in.readInt();

in.close();
out.close();
socket.

8
0 705
Question Thembelani Mlalazi · Mar 12, 2021

In previous versions of cache I used to be able to write click on a class and get a delete class option but in this version I can not find the delete class option was wondering if there is another way to delete a class if you wanted to do some house keeping.

N.B. These are the classes I create not the ones that comes with cache.

1
0 634
Question Ruslan K · Mar 11, 2021

Is there any reason that property method  DisplayToLogical() is not calling before object saving?

I have such situation and do not know how it is possible

3
0 557
Question Kurro Lopez · Mar 10, 2021

Hi all,

I have a very weird error when I'm calling to a SOAP Webservice as client.

I've create all objects to invoke to this SOAP using the add-in "Assistant SOAP" in Eclipse, it has created all objects (Response, Request, Business operation WS class, etc...).

When I call to this service it retuns the following error message:

ERROR #6243: HTTP request to SOAP WebService returned unexpected CONTENT-TYPE response: text/html.

However, If I call the same WS using SOAP UI or Postman, the header of response has the content-type "text/xml", as expected.

4
0 5145
Question Guilherme Silva · Mar 9, 2021

i have a problem with CSP files, i can create a CSP file with termination ".csp" or ".CSP" and this configuration is case sensitive, but a CLS file, this configuration is not case sensitive. there is a way i can change this to the CSP file don't be case sensitive?

2
0 319
Question Enzo Toscano · Mar 9, 2021

First of all thank you for your time in reading this question and writing a response,

We would need some help,

What is the best method for save a %CSP.BinaryStream to a file?

Thank you in advance!! 

2
0 788
Question Luiz Henrique Carvalho Martarelli · Mar 5, 2021

Hi!

I am making a request to an API and JSON is coming as follows:
SET %httprequest = ##class(%Net.HttpRequest).%New()
DO %httprequest.Get(URL)
SET %responseBody = %httprequest.HttpResponse.Data.Read()
 

W %responseBody
{produto:"CHP0001",Local:{IDMV: "000000001",LOTE: "",DtFabric: "null",DtVenc: "null",Atributo06: "0000000002",Atributo07: "",QtdeDisp: "10.00000",QtdeAloc: "0.00000",QtdeSep: "0.00000",QtdeTotal: "10.

9
0 1070