#InterSystems IRIS

19 Followers · 5.6K Posts

InterSystems IRIS is a Complete Data Platform
InterSystems IRIS gives you everything you need to capture, share, understand, and act upon your organization’s most valuable asset – your data.
As a complete platform, InterSystems IRIS eliminates the need to integrate multiple development technologies. Applications require less code, fewer system resources, and less maintenance.

Announcement Anastasia Dyubaylo · Oct 22, 2019

Hi Community,

We're pleased to invite you to the Europe's biggest data science gathering called Data Natives Conference 2019 on 25-26 November in Berlin, Germany! Join us and learn how InterSystems technology can support your AI & ML initiatives to help you shape our world! 🔥

What's more? 

Take part in @Benjamin De Boe's keynote "From data swamps to clean data lakes" in which he will portray best practices for sustainable AI/ML. And visit InterSystems booth on the 1st floor and discuss real-world use cases and state-of-the-art tools with our experts!

   

0
0 340
Question Steve Pisani · Oct 19, 2019

Hi,

I'm after feedback and comments on the sort of tools and approaches the wider InterSystems community uses for QA Testing applications written in Cache/Ensemble or IRIS.   I am aware of the %UnitTest package, and understand how that works... but:

- Do you use an alternative or framework built around this native Unit Testing tool ?

- What is your experience with %UnitTest if you use it ?

- Is there a tool you would recommend for your UI (I know this is not specifically an InterSystems' related question)

4
0 763
Question David Underhill · Oct 18, 2019

I was hoping for some input on the best way to deploy code to site with the following criteria:

 - No source code, only compiled code to be deployed.
 - Classes and Routines are part of the application.
 - Data and code reside in the same database.
 - Deployments might be partial updates  (i.e. cannot just send a complete CACHE.DAT).

At present the idea is just to export the .obj, any suggestions?

2
0 522
Question Marcio Coelho · Oct 17, 2019

Hi folks.
I'm having trouble using the native iris API in an environment running wildfly 16. Here's a piece of my java class and stackTrack, I'm using jdk 8.

@Resource(lookup = "java:jboss/datasources/IntersystemsDS")
private DataSource dataSource;
private Connection conn;
private IRIS iris;
@PostConstruct
public void init() {
    try {
        conn = dataSource.getConnection();
        IRISConnection iconn = (IRISConnection) conn.unwrap(IRISConnection.class);
        iris = IRIS.createIRIS(iconn);
    } catch (Exception e) {
        System.err.println("Não conseguiu Conexão!
1
0 402
Announcement Michelle Spisak · Oct 17, 2019

New from InterSystems Online Learning: two new exercises that help you get hands-on with InterSystems IRIS to see how easy it is to use to solve your problems!

0
0 351
InterSystems Official Andreas Dieckow · Oct 17, 2019

With the recent release of macOS 10.15, Apple has tightened its control mechanism, called Gatekeeper, so that it now requires executables to be notarized.  InterSystems products are not currently supported for use on macOS 10.15 and the executables have not been notarized.  (As a reminder, InterSystems products are supported on macOS as a development platform only.)

0
0 530
Question saranraj Rasu · Oct 15, 2019

Hi,

    I am new  to fhir framework, I have searched articles to write graphql API using FHIR i did not get any proper tutorial for this. I need to find better tutorial or articles for this.  I have written API using graphql, typescript with mongodb. Can some one tell why we need resourcetype, identifier in fhir.

    Also i have tried github code based on fhir using javascript. The source code i got from "https://github.

2
0 730
Question Eduard Lebedyuk · Oct 12, 2019

The question is pretty much in title. I'm developing a REST API, it has a search endpoint with 10 optional parameters. How do I pass them and stay RESTFul?

To ease the question a bit let's agree that:

  • all parameters are AND parameters, user can't make combos, ORs, etc. User can only provide values
  • all values are integers so I don't have to think about URL limits
  • all values are atomic
  • all conditions are about equivalency

Some options I know of:

1. URL parameters.

GET /search?param1=value1&param2=value2...

Quick and easy but I'm not sure it's really RESTFul

9
0 4574
Announcement Mario Sanchez Macias · Oct 9, 2019

Hi, 

If you like to play and test with mirroring, now you can do it very easily with dockers and these simple mirror scripts.

  • The docker-compose.yml will create 2 containers with the preferred version. 
  • The installer.sh script will start the ISCAgent, load the Installer.cls class into Iris and call it. 
  • The interesting part is inside the Installer.cls class, you will find some methods to create a mirror,  join and create databases in mirror.  The scripts are quite simple and you can borrow them to create your own mirrors.

Note that this script is just valid for 2019.

4
1 806
Article Eduard Lebedyuk · Oct 10, 2019 7m read

This series of articles would cover Python Gateway for InterSystems Data Platforms. Execute Python code and more from InterSystems IRIS. This project brings you the power of Python right into your InterSystems IRIS environment:

  • Execute arbitrary Python code
  • Seamlessly transfer data from InterSystems IRIS into Python
  • Build intelligent Interoperability business processes with Python Interoperability Adapter
  • Save, examine, modify and restore Python context from InterSystems IRIS

Other articles

The plan for the series so far (subject to change).

0
1 765
Question Aaron Vail · Oct 9, 2019

I'm trying to convert a CSV inbound to an HL7 MFN^M16 outbound.  I know I'm using book information as the CSV but I don't think that matters.  Please let me know if that's incorrect. 

My service is reading the file in just fine and when I don't have a DLT transformer the raw message passes through to outbound file folder just fine.  However, when I include a basic DLT that simply copies a couple of fields over I get the "Ens.StreamContainer" error.  Everything also seems to be good in the Record Mapper.

4
0 4333
Article Ben Spead · Sep 30, 2019 2m read

Every developer has made the mistake of accidentally leaving temporary debug code in place when they meant to remove it after debugging is complete.  The great thing about writing in ObjectScript is that there is a way to make temporary code be truly temporary and automatically self-destruct!   This can also be done in such a way that the code has no change of making it into your source control stream, which can be helpful as well.

The secret to this lies in making use of the "Intermediate code" (.INT) which is generated when you compile classes (.CLS), routine code (.MAC) or CSP pages (.CSP).

1
0 504
Question Aaron Vail · Oct 8, 2019

I'm trying to read in a CSV file and map to MFN^M16.  The first problem I'm having is getting the Service to read the file without causing errors (see below).  I'm using EnsLib.File.PassthroughServicebecause (as I understand it) it allows for anything.

ERROR <Ens>ErrBPTerminated: Terminating BP CSVtoHL7M16 # due to error:

ERROR <Ens>ErrException: <PROPERTY DOES NOT EXIST>zOnRequest+1^EnsLib.MsgRouter.VDocRoutingEngine.1 *DocType,Ens.StreamContainer -- logged as '-' number - @'' >
ERROR <Ens>ErrException: <PROPERTY DOES NOT EXIST>zOnRequest+1^EnsLib.MsgRouter.VDocRoutingEngine.1 *DocType,Ens.

1
0 569
Article Erik Hemdal · Jul 22, 2019 3m read

One of my colleagues at InterSystems encountered an unexpected issue when running InterSystems IRIS on a Macintosh in a container using Docker for Mac.  I’d like to share what we found, so you might avoid running into similar issues.

The Problem

The task at hand was running a Java application with XEP to do a large data load into IRIS.  When running the data load, the write daemon hung soon after starting the job, with messages like these in messages.

2
0 1121
Announcement Anastasia Dyubaylo · Oct 3, 2019

Hi Community!

We are pleased to invite you to the upcoming webinar in Spanish "Desarrollar y gestionar APIs con InterSystems IRIS Data Platform" / "Developing and managing APIs with InterSystems IRIS Data Platform" on October 15 at 16:00 CET!

Are you a backend developer? Or a Systems integration specialist? If so… this webinar is for you!

0
0 256
Article Gevorg Arutiunian · Apr 27, 2019 2m read

Here is an ObjectScript snippet which lets to create database, namespace and a web application for InterSystems IRIS:

	set currentNS = $namespace
	
	zn "%SYS"
	
	write "Create DB ...",!
	set dbName="testDB"
 	set dbProperties("Directory") = "/InterSystems/IRIS/mgr/testDB"
 	set status=##Class(Config.Databases).Create(dbName,.dbProperties)
	write:'status $system.Status.DisplayError(status)
	write "DB """_dbName_""" was created!",!!
	
	
	write "Create namespace ...",!
	set nsName="testNS"
	//DB for globals
	set nsProperties("Globals") = dbName
	//DB for routines
	set nsProperties("Routines") = dbName
	set status=##Class(Config.Namespaces).Create(nsName,.nsProperties)
	write:'status $system.Status.DisplayError(status)
	write "Namespace """_nsName_""" was created!",!!
	
	
	write "Create web application ...",!
	set webName = "/csp/testApplication"
	set webProperties("NameSpace") = nsName
	set webProperties("Enabled") = $$$YES
	set webProperties("IsNameSpaceDefault") = $$$YES
	set webProperties("CSPZENEnabled") = $$$YES
	set webProperties("DeepSeeEnabled") = $$$YES
	set webProperties("AutheEnabled") = $$$AutheCache
	set status = ##class(Security.Applications).Create(webName, .webProperties)
	write:'status $system.Status.DisplayError(status)
	write "Web application """webName""" was created!",!
	
	zn currentNS
3
6 1888
Question Eduard Lebedyuk · Oct 1, 2019

I need to know the current rss memory consumption. On earlier Cache versions I used this method:

set sc = ##class(%Net.Remote.Utility).RunCommandViaZF("smem -u cacheusr | grep cacheusr | awk '{print $6}'",,.rss)

It doesn't work because we use $zf(-100) on IRIS 2019.1.

New version:

ClassMethod Test()
{
set cmd = "smem"
set args = 8
set args(1)="-u"
set args(2)="irisusr"
set args(3)="|"
set args(4)="grep"
set args(5)="irisusr"
set args(6)="|"
set args(7)="awk"
set args(8)="'{print $6}'"
set sc = ##class(%Net.Remote.Utility).RunCommandViaZF(cmd,,.rss,,,.code,.
2
0 461
Article Murray Oldfield · Mar 25, 2016 14m read

This week I am going to look at CPU, one of the primary hardware food groups :) A customer asked me to advise on the following scenario; Their production servers are approaching end of life and its time for a hardware refresh. They are also thinking of consolidating servers by virtualising and want to right-size capacity either bare-metal or virtualized. Today we will look at CPU, in later posts I will explain the approach for right-sizing other key food groups - memory and IO.

10
2 5387
Article Evgeny Shvarov · Sep 29, 2019 2m read

Hi Developers!

When you prepare your modules for ZPM (InterSystems Package Manager) it expects the certain directory structure for ObjectScript source files.

ObjectScript in your source folder need to be stored by types in the following subfolders. E.g. if you have the source folder named as /src the structure should be as follows:

/src

        /cls - for classes

        /inc - for include files

        /mac - for mac files

        /int - for interpretable files

        /gbl - for globals

And the ObjectScript should be in CLS (a.k.a UDL) and not in XML.

Example.

Ok!

0
1 873
Announcement Evgeny Shvarov · Sep 27, 2019

Hi Developers!

Just want to share the information with you that we support TechCrunch Disrupt Hackathon 2019 this year!

It will take place from 2-4 of October in San Francisco, CA.

We introduced InterSystems special prizes for participants which solutions will use InterSystems IRIS $4,000 and InterSystems IRIS for Health 4,000.

Learn more here.

If you happen to participate we wish you luck and hope you'll leverage InterSystems IRIS data platform functionality to win Disrupt Hackathon 2019!

0
0 331
Announcement Anastasia Dyubaylo · Sep 6, 2019

Hey Developers!

Please join the upcoming InterSystems Developers Meetup in Boston which will be held on September 25th, 2019! 

It will take place in Boston Marriott Copley Place from 5:30 p.m. to 9 p.m.

We meet to discuss solutions development on InterSystems IRIS. Come to tell your stories and share experience with InterSystems data platforms, for networking and developer conversations. Drinks and snacks will be provided.

The format is usual: 15 min for a session, 5 min for Q&A. 

8
0 617