Article Eduard Lebedyuk · Dec 1, 2016 8m read

In this article I would like to present the RESTForms project - generic REST API backend for modern web applications.

The idea behind the project is simple -after I wrote several REST APIs I realized that generally, REST API consists of two parts:

  • Work with persistent classes
  • Custom business logic

And, while you'll have to write your own custom business logic, RESTForms provides all things related to working with persistent classes right out of the box.
Use cases

  • You already have a data model in Caché and you want to expose some (or all) of the information in a form of REST API
  • You are developing a new Caché application and you want to provide a REST API
23
3 5425
Article Benjamin De Boe · Jan 31, 2018 4m read

With the release of InterSystems IRIS, we're also making available a nifty bit of software that allows you to get the best out of your InterSystems IRIS cluster when working with Apache Spark for data processing, machine learning and other data-heavy fun. Let's take a closer look at how we're making your life as a Data Scientist easier, as you're probably already facing tough big data challenges already, just from the influx of job offers in your inbox!

2
0 1820
Question Kurt Hofman · May 15, 2018

Hello, I'm trying to install CSP Gateway on Ubuntu 18.04 (Apache) with the installer CSPGateway-2018.1.1.638.0-lnxubuntux64.tar.gz but it doesn't seem to work.  I keep getting access-denied when I try to open CSP-pages or the CSP Management portal.

Does someone have an installation-manual or so ?

5
0 1217
Question Hengameh Karimi · Apr 11, 2018

we are receiving the MDM document from one Data Source , we need to convert the MDM to ORU to send to the receiving Data Source. Does HS components could make this conversion or we need to use Ensemble mapping to convert the MDM to ORU message?

Thanks,

1
0 968
Question Jordi Gomez · May 15, 2018

Hi all,

Do you know if there is a way to create a Lock that is related to an existing transaction, in the sense that if transaction is finished (commit or rollback) Lock is removed. I ask this because in the following example Lock is there until process is killed.

Example :

TSTART

Lock  +^MyLock

TROLLBACK

I know, that, Caché itself is locking internally a table register  when doing an OpenId with exclusive flag during the transaction life. For example :

TSTART

Do ##class(MyTable).%OpenId(<TableID>, 4) (This internally is creating a Lock +^User.MyTable(<TableID>)

4
0 584
InterSystems Official Steve Brunner · Jan 31, 2018

InterSystems is pleased to announce that InterSystems IRIS Data Platform 2018.1.0 is now released.

This press release was issued this morning.

InterSystems IRIS is a complete, unified data platform that makes it faster and easier to build real-time, data-rich applications.  It mirrors our design philosophy that software should be interoperable, reliable, intuitive, and scalable.

14
0 2289
Article Randy Pallotta · May 27, 2016 3m read

Two fairly common requests we receive from HL7 customers are (1) how to remove all trailing delimiters for fields and segments in HL7 messages and (2) how to "find and replace" for an entire HL7 message (as opposed to one segment/field at a time).  The code sample below shows a custom function that solves for item 1 and by extension item 2 above.  In other words the same approach can be used for finding/replacing any sequence of chars in an entire HL7 message, with some tweaks to the custom function.

6
0 3775
Question Guillaume Lepretre · May 14, 2018

Hello,

In all web services, i need to my get login and token. So with Postman, i tried to call a HTTP request where I put the login/token in the header :

 

I tried to get data from Http request header. The REST APi use %CSP.REST. I tried something like that : 

But it didn't work..

Someone can give me some example or other method ?

Regards,

2
0 1949
Discussion Peter Cooper · May 11, 2018

Hi Evgeny/Anastasia

I spent some time just clicking around and found the old google groups discussion groups
These are clearly dated and the place is here

However it's not clear to users that they should post here rather than on the google groups

Mai I suggest that a big banner link is added to re-direct the user to ask their question here rather than there

Peter

2
0 936
Question Justin Wilson · May 9, 2018

I have been tasked with creating a class that will handle error logging in a consistent manor for an application I am working on.  The need is to have all variables in the calling method logged along with some other information. 

The example given was zwrite which is exactly what I need, however, I somehow need to capture the output of ZW and put it into a database table.  Any easy way to capture this data?  I was able to dump ZW to a file, but that is not ideal.

Any help is appreciated!

8
1 1393
Question Antonio Garcia Martinez · May 10, 2018

Hi,

I wonder if you could help me with a problem with persistent globals and journals.

We have a few interfaces using a persistent global just to translate some codes. The use of that global is like a lookup table...an interface calls a method that search for a field (in the message) in the global. If found, the code is translated with another field from the global.

The format of the global is something like:

$LB("","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27")
6
0 735
Article Darren Beauchamp · Jan 9, 2018 6m read

Too often users finding themselves in need of a software solution do not consider “open source” vs. “proprietary” alternative. Most of them either have their go-to favorite developer or just google for reviews and ready-made answers. However, this alternative must be the starting point of their search, as the decision has the most consequences.

It is not an overstatement to say that open source is the future of technology, albeit, it has its own unique challenges. Here is what users, especially corporate users should consider choosing the software for their business needs.

Fast evolution

2
0 1163
InterSystems Official Steve Brunner · May 10, 2018

InterSystems is pleased to announce the availability of these maintenance releases

·         Caché and Ensemble 2017.1.3

·         HealthShare Health Connect v15.03 for 2017.1.3

 

For Caché and Ensemble

·         Oracle Solaris 10, 11 for SPARC-64 and Oracle Solaris 10, 11 for x86-64 platforms are now approved for release.  They were not available for earlier 2017.1 releases.

·         The full list of corrections can be found in the release notes

·         The version number of the kits is 2017.1.3.317.0

 

HealthShare Health Connect v15.03 on core technology 2017.1.3.317.0

0
0 580
Question Güvenal · May 9, 2018

I have package mapped SYS.History but two classes in the package are giving me problems.

SYS.History.SysData and SYS.History.PerfData has an Include (Include (%sySite, MONEXT))

When I try to open the corresponding table in SQL I get the following error

2
0 994
Question Eduard Lebedyuk · May 9, 2018

I need to redirect user to a url, which is 5000+ characters long.
To do that I set:

set %response.Redirect = url

However, in the browser I receive this header:

LOCATION: <First 3972 characters of the 'url' variable>

In WriteHTTPHeader method of %CSP.Response, where the LOCATION header is
written:

Write "Location: ", <Redirect>,!

After I added a buffer flush, after the above-mentioned line:

Write *-3
8
0 560
Question Robert Hickingbotham · Jan 20, 2016

Hi,

I have a client who is considering encryption options in order to comply with a tendering requirement.

Were they to encrypt the production database then what would be a reasonable expectation forthe impact on message throughput. Or possibly more easily answered: what would be the expected impact be on I/O rate and CPU utilization. Are there any benchmarks to which could support an estimate ?

How would this compare with plan B: to use disk encryption ?

Thanks

3
0 544
Article Sean Connelly · May 8, 2018 5m read

If your looking to develop a Node.JS to Caché library then you might want to consider using a pure TCP connection with a custom message transport protocol. This bypasses the native Caché connector libraries that can get stale with a new release.

Node.JS is very good at non blocking code development, so building a performant solution isn't that complex. 

0
2 910