Question Adrian Bourner · Jul 23, 2020

Until this week, my customer had Ensemble writing HL7 messages to my TCP listener, working fine on ageing physical servers (Windows Server 2003, Caché 2009). They had four app servers (app1, app2, app3 and app4) with an overarching DNS simply called "app".  Ensemble was connecting to "app:port", and it somehow found whichever of the four app servers my background listener was running on, and the interface worked fine for 10+ years.

4
0 346
Question Lucas Bourré · Jul 16, 2020

Hello Community, 
I hope you're going well.

I am programming a daily reporting that will send by e-mail when people will add a dashboard as favorite by clicking on the star :

 

I asked Intersystems WRC on how to automatically generate a report with some line coding, but I heard there is no way to do this without a headless Browser.

I downloaded google-chrome to use the "--headless"  and "--print-to-pdf" function , to print the HTML content of my dashboard into a PDF.  ( I will use $ZF function to launch the generation ).

4
0 376
InterSystems Official Luca Ravazzolo · Jul 2, 2020

GA releases are now available for the first version (v1.0) of InterSystems System Alerting and Monitoring (InterSystems SAM for short)
  
InterSystems SAM v1.0 provides a modern monitoring solution for InterSystems IRIS based products. It allows high-level views of clusters and single-node drilled down metrics-visualization together with alerts notifications.  This first version provides visualization for more than one hundred InterSystems IRIS kernel metrics, and users can extend the default-supplied Grafana template to their liking.
 
V1.0 is meant to be a simple and intuitive baseline.

2
0 537
Article Fabian Haupt · Jul 22, 2020 6m read

If you found your way here you’re one of the people who’ve been asked to work from home for the time being. At this point we don’t know how long the crisis is going to last or even how the situation is going to look in a few weeks. Nevertheless you need to get your work done. You rarely worked from home before and now you are faced with a number of challenges. Let’s talk a bit about what’s going to keep you sane on the home front.


Who am I and why should you care about what I have to say?

You shouldn’t. You can. Nobody is forcing you.

1
0 372
Question Yakov Berger · Jul 21, 2020

Hi,

 A device is sending me HL7 messages (ORM^O01)

the framing is set to "None"

and i get the following error:

3 Segments
Build Map Status = 'ERROR <EnsEDI>ErrMapRequired: Missing required PID element at segment 2 (PID)'
'ERROR <EnsEDI>ErrMapRequired: Missing required OBR element at segment 2 (PID)'
'ERROR <EnsEDI>ErrMapSegUnrecog: Unrecognized Segment 2:'PID' found after segment 1 (MSH)'

i seems that there framing chars in at the beginning and end of each segment

(in Hex)

 0b (MSH DATA HERE)  1c 0d  0b  (PID DATA HERE)  1c   0d   0b  (OBR DATA HERE)  1c 0d

i have tried all the Framing options of no

3
0 946
Question Yone Moreno · Jul 21, 2020

It would be interesting if there is some recommended documentation about best practices using Healthshare for interoperability.

Also, some how-tos or frequently asked questions about ObjectScript.

Or event better, if there are experienced developers who would like to share some common habits on their work with Studio / ObjectScript, which are valuable to do the developing work better.

For example, How to get the XML of a class and write it into a REST operation:

 

...

Method X(pRequest As Mensajes.ServiciosGeneralRequest, ...){

set writer=##class(%XML.Writer).%New()
set status=wri

1
0 272
Article Robert Cemper · Jul 21, 2020 1m read

This is a sample to use %JSON.Adaptor class available in IRIS to produce a snapshot of your object.

The sample consists of 2 classes that are variations of what was known in Caché/SAMPLES as Sample.Person.
Be aware that the possibilities are limited by %JSON.Adapter and how you make use of it.

Once in place, you create some test data by Populate().
You select an object and take a snapshot.
You apply changes to your object and take another snapshot.
And see the difference.

BINGO!

GitHub

0
0 775
Article Robert Cemper · Jul 21, 2020 1m read

It's also an example of a customized SystemFunction extension (ZZISJSON) in Caché & IRIS
This time it is to be included in %ZLANGF00.mac

A JSON string is mostly imported from a file or over REST
You rely on a clean and compatible structure. This is the check.

required: ZPretty.mac

demo

USER>ZWRITE jsn  
jsn="{"Name":"Li,Robert K.","SSN":"672-92-9664","DOB":"1975-01-12","Home":{"Street":"986 Washington Blvd","City":"Boston","State":"PA","Zip":"95802"},"Office":{"Street":"6012 First Place","City":"Reston","State":"MT","Zip":"77739"},"Spouse":{"Name":"Avery,Zelda H.
0
0 887
Article Robert Cemper · Jul 21, 2020 2m read

t's also an example for a customized command extension (ZZJSN) in Caché & IRIS

This is the Caché version for fast JSON formatting but it also works in IRIS.
Requires package ZPretty
To allow parallel existence in IRIS this is named ZZJSN

see:

USER>ZWRITE jsn  
jsn="{"Name":"Li,Robert K.","SSN":"672-92-9664","DOB":"1975-01-12","Home":{"Street":"986 Washington Blvd","City":"Boston","State":"PA","Zip":"95802"},"Office":{"Street":"6012 First Place","City":"Reston","State":"MT","Zip":"77739"},"Spouse":{"Name":"Avery,Zelda H.
0
0 556
Question Amiram Kasos · Jul 21, 2020

Hi,

Recently I have encountered a new issue, more and more 3rd party applications move to the cloud.

Web-hooks incoming from their sites can no longer be identified using a known and fixed IP address, so our customer's security department blocks them.

In past similar cases we use to grant access in the customer's Fire-Wall to the specified IP address - this is no longer applicable.

Has anyone else encountered this problem ? do you have any ideas ?

 

Thanks

1
0 310
Article Robert Cemper · Jul 20, 2020 1m read

t's also an example for a customized command extension (ZZJSON) in IRIS

IRIS has a nice %JSON.Formatter class.
But for debugging it is not really handy.
see:

ZWRITE js1  
js1="{""Name"":""Cunningham,John C."",""SSN"":""294-11-9150"",""DOB"":""1933-01-08"",""Home"":{""Street"":""4249 Ash Street"",""City"":""Tampa"",""State"":""MD"",""Zip"":""30176""},""FavoriteColors"":\[""White"",""Red"",""Green""]}"   

so you proceed for the most simple case

set formatter=##class(%JSON.Formatter).%New()   
do formatter.Format(js1)  
{   
  "Name":"Cunningham,John C.
0
0 660
Job Mary Pion · Jul 20, 2020

Henry Elliott is currently recruiting for Sr. Developers with InterSystems technology stack experience including Cache, IRIS for Health, HealthShare, Ensemble. Experience in any of the following preferred: FHIR, AWS, VA VistA, APIs, RPCs. These are remote opportunities. Please send resume to Mary Pion- mpion@henrye.com or call me at 781-416-9915 to discuss further.

0
0 281
Article Robert Cemper · Jul 20, 2020 2m read

It is a classic Global Mapping exercise presenting ^SPOOL as Class / Table

Background

Device #2 named SPOOL dates back to the predecessors of Caché and IRIS
It was the first "%Stream" like option to buffer output before printing.
It is also the first and till today the most simple way of output redirection.

Solution

This is also an example of a mapped Global.
USE 2 redirects the output into the Global ^SPOOL

You can read the global manually or with some ancient utilities
or use this mapping to access it as class or a SQL table.

0
0 490
Question Mathew Lambert · Jul 20, 2020
We are using the mentioned password function and we need to know if is in line with the NIST recommendations regarding strength, https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf
 
Reading interystems docummentation is not 100% clear for me as it states "(See RSA Laboratories Public-Key Cryptography Standards #5 and Federal Information Processing Standards Publications 180-4 and 198-1 for more information.)"
1
0 1423
Question Carl Tawn · Jul 16, 2020

Hi,

I am attempting to set up a security role for our support team so they can have read access to the production and messages.

I have given the role RW rights on the resource associated with the database. However, when I log into Management Portal and select "Ensemble", the "Available Ensemble namespaces" list is empty.

What permissions do i need to set to be able to navigate to the production?

8
0 1061
Article Renato Banzai · Jul 14, 2020 5m read

This is my introduction to a series of posts explaining how to create an end-to-end Machine Learning system.

Starting with one problem

Our IRIS Development Community has several posts without tags or wrong tagged. As the posts keep growing the organization of each tag and the experience of any community member browsing the subjects tends to decrease.

First solutions in mind

We can think some usual solutions for this scenario, like:

  • Take a volunteer to read all posts and fix the mistakes.
  • Pay a company to fix all mistakes.
  • Send an email to each post writer to review the texts from past.
11
2 602
Article Robert Cemper · Jul 19, 2020 1m read

The guide “Extending Languages with %ZLANG Routines”
Tells you all details you need to know to extend your programming language.
EXCEPT: How to do it in a clean way.

This example of a %ZLANGC00.mac may show a possible approach
to get an easy to overview and to manage setup.
With less than 50 lines of code you might not be affected.
But if your Studio shows close to 1000 rows or more you may get in troubles.

My recommendation is simple.
Instead of adding line-by-line commands and it's code
you isolate each command and its code into a separate Include file.

0
0 344
Announcement Anastasia Dyubaylo · Jul 13, 2020

Hey Developers!

This week is a voting week for the InterSystems IRIS AI Programming Contest!

So, it's time to give your vote to the best AI- and ML-enabled solution on InterSystems IRIS!

🔥 You decide: VOTING IS HERE 🔥

 

How to vote? This is easy: you will have one vote, and your vote goes either in Experts Nomination or in Community Nomination.

5
0 448