Article Kate Lau · Mar 15, 2023 2m read

In this article, I am trying to walk through my deploying step of IAM on my EC2(ubuntu).

What is IAM?

IAM is InterSystems API Manager
you may reference to the link below to get more idea about IAM

https://docs.intersystems.com/components/csp/docbook/Doc.View.cls?KEY=PAGE_apimgr

generated description: apimgr description.jpg

Before deploying IAM

Check the license of your API host

 

Enable the User IAM

Deploy IAM

Reference 

https://community.intersystems.com/post/introducing-intersystems-api-manager

Download the image from the following link

https://wrc.intersystems.com/wrc/coDistGen.csp

I downloaded the following version to my pc

Upload the image to

2
0 520
Announcement Anastasia Dyubaylo · Feb 23, 2023

Hello Community,

After the last heated programming contest, we're happy to announce the next InterSystems technical article writing competition!

✍️ Tech Article Contest: InterSystems IRIS Tutorials ✍️

Write an article that can be considered a tutorial for InterSystems IRIS  programmers of any level: beginner / middle / senior from March 1st to March 31st.

🎁 Prizes for everyone: A special prize pack for each author who takes part in the competition!

🏆 Main Prizes: There are 6 prizes to choose from. 

15
1 1904
Question Christoph Abraham · Mar 29, 2023

Our ERP solution runs on different sql databases (such as ms sql and posgre). We are using the same code for all plattforms, doing database-specific changes in the db driver for each type of database.

There is one function in our program, where the user can store long text to discribe something, which is used in print and web. This text is treated/stored as html and can include pictures. The pictures in the html are stored base64 coded inside the html and the html is stored as text in a column. In other database systems, this is treated as TEXT or BLOB, and workings just fine.

But with IRIS, we

6
0 431
Question Jordan Everett · Mar 30, 2023

Hey all,

I have been creating a class to handle file encryption by using GPG keys. I pushed my code out today and my encrypt and decrypt methods weren't working. About a half an hour later in troubleshooting I found out that it needed to be a syntax change. My method has three parameters to it. Examples below:

This is how I was calling it in the test system with no issues:

do gpg.Encrypt()

This is how I was having to call it in my production system to work with no issues:

do gpg.Encrypt("","","")

If I was to enter in my production environment do gpg.Encrypt() I would just get an undefined due to it

6
0 370
Article Henry Pereira · Dec 1, 2021 5m read

freepik- freepik.com First of all, what is data anonymization?

According to Wikipedia:

Data anonymization is a type of information sanitization whose intent is privacy protection. It is the process of removing personally identifiable information from data sets, so that the people whom the data describe remain anonymous.

In other words, the data anonymization is a process that retains the data but keeps the source anonymous. Depending on the adopted anonymization technique the data is redacted, masked or substituted.

And that is the purpose of iris-Disguise, to provide a set of anonymization tools.

You can use in

12
3 1572
Article Roger Merchberger · Mar 30, 2023 8m read

Is anyone like me, and felt really jealous that they didn't have enough points to acquire the IRIS-based Raspberry Pi system when it was offered? Do you have a spare Raspberry Pi 4 handy? If so, I'll walk you through setting up Docker and IRIS on your Raspberry Pi so you can have the smallest IRIS computer in town!

Things you'll need:

Raspberry Pi 4 (at least 4G RAM, but I have several with 8G so that's what I used. 2G RAM *might* work, but there might be a lot of swap file activity which would slow down the process considerably)
MicroSD card (at least 16G, but I'd recommend 32G or more)
Power

0
0 688
Question Scott Roth · Mar 30, 2023

I had an interesting scenario come up, as when we moved from eGate to Ensemble and we will be moving to IRIS here in the near future I was taught to create Business Processes for writing to and extracting data from outside MS SQL Databases.

That works ok for simple messages but I have a case where I have a rather large MFN message coming in from a vendor.The normal Business Process of reading in the HL7, and parsing the message into Stored Procedure structure calls has worked in the past with smaller messaging like ADT, etc.

2
0 412
Question Ephraim Malane · Mar 22, 2023

Hi Community,

There are two records of the same patient coming from the same source and when they are merged from the source they are not updating Health Information Exchange. I have blurred crucial information and the records are not falling off the worklist items after a merge from the source system.

The two records from the same source are in the middle section and the right section.

1
0 341
Article Zhong Li · Mar 28, 2023 10m read

​Keywords: ChatGPT, COS, Lookup Table, IRIS, AI 

Purpose


Here is another quick note before we move on to GPT-4 assisted automation journey. Below are some "little" helps ChatGPT had already been offering,  here and there, during daily works. 

And what could be the perceived gaps, risks and traps to LLMs assisted automation, if you happen to explore this path too. I'd also love to hear anyone's use cases and experiences on this front too. 

Lookup tables


One of the simplest tasks could be Lookup tables.

3
2 724
Article Anastasia Dyubaylo · Mar 30, 2023 1m read

Hi Community,

Some of you would like to share an event (online or offline) with others on our Community and here is a how-to on how to actually create an Event to invite your fellow members.

The main challenge when creating an event is to fill in all the necessary pieces of information in the right places. So let's look at what needs to be done.

0
0 313
Article Jude Mukkadayil · Mar 29, 2023 4m read

WIN SQL is the normal editor used by most of the users .But we can't download large amount of data using winsql . So I have written a tutorial how to connect with a new Java based editor called Squirrel SQL which can easily download or export data in excel or any other formats. Also I included a Java JCBC connection program to connect with the IRIS database especially a mirroring/failover server.

SQL Java based Editor to Export large amount of data and Java JDBC program for IRIS connection

SQL Java based Editor to Export large amount of data

WinSql is the editor used normally to extract data

5
0 737
Question Nezla · Mar 19, 2023

Hi Guys,

I've a task that runs every 10 mins executing the below code, but the issue is that it slowing the system down affecting other processes, so is there a way to maybe spread the execution of this so it doesn't slow down the system? I've tried spreading these fucntion in two different tasks but doesn't seem to change much.

Method OnTask() As %Status
{  
##class(MSDS.Common.ConditionMonitoring).GetKitList("20779")
J ##class(MSDS.Common.ConditionMonitoring).GetKitList("21822")
J ##class(MSDS.Common.ConditionMonitoring).GetKitList("21147")
J

4
0 399
Announcement Jacquie Clermont · Mar 29, 2023

 Hi Community:

We've just posted session titles to our Global Summit website -- there are 65, and more are being planned. 

I've been working on Global Summit now for seven years, and I think this year's lineup is the best yet -- mostly because we asked users like you for topic suggestions.

I'm cutting and pasting from my master list 


1.    Adaptive Analytics in Action: Two Customer Use Cases
2.    Application of Design Thinking
3.    Artificial Intelligence Healthcare Solutions: Time to Take Action
4.    Best Practices for InterSystems IRIS System Performance in the Cloud
5.

0
0 312
Question Michoel Reach · Mar 28, 2023

In the documentation  Data Types | Caché SQL Reference | Caché & Ensemble 2018.1.4 – 2018.1.8 (intersystems.com)

it says that "by default, Caché establishes a system-wide ODBC VARCHAR maximum length of 4096; this ODBC maximum length is configurable"

Per instructions, I went to SMP -> System -> Configuration -> General SQL Settings, where most of the fields from  $SYSTEM.SQL.CurrentSettings()

appear. That one does not.

How does one change it, and can it be increased?

Thanks!

[Cross-posted from https://groups.google.com/g/intersystems-public-cache/c/eRFeORb_sb0]

2
0 441
Announcement Michelle Spisak · Mar 29, 2023

Just a few days left to tell us how you like to learn! 

Want a say in how we structure our learning content? Take this brief survey by March 31, and we’ll use your feedback to improve your learning experience.

  • Do you like to watch how-to videos? 
  • Hate videos, but love the doc?
  • Don't read the doc, but want more in-person classroom learning?

Let us know in this 3-min survey!

 

0
0 144
Question Robert Hildebrand · Mar 27, 2023

Hi,

we get HL7 MDM messages with embedded PDF documents that are Base64 encoded. When the embedded PDF document exceeds the size of 3.6 MB the following error occurs:

FEHLER <Ens>ErrBPTerminated: BP Main HL7 MDM # wird wegen folgenden Fehlers beendet: FEHLER #5002: Caché-Fehler: <MAXSTRING>zgetAtFromArray+46^EnsLib.HL7.Segment.1
> FEHLER #5002: Caché-Fehler: <MAXSTRING>zgetAtFromArray+46^EnsLib.HL7.Segment.1

In other posts I read that you can avoid these errors, if you use the data type %VarString instead of normal %String.

3
0 429
Question Kalle Päplow · Mar 29, 2023

Hello,

I have a question regarding the Intersystems Caché Database and its jdbc driver. I need to set the connection timeout for the database, but I couldn't find any documentation stating that the jdbc driver for Caché supports setting the connection timeout. However, I noticed that the jdbc driver for the Intersystems Iris Database appears to support this feature.

My question is, can I use the Iris jdbc driver to set the connection timeout for the Caché Database?

The jdbc driver I use: cache-jdbc-2.0.0.jar

Thank you for your help.

Best regards,
Kalle

0
0 329
Article Guillaume Rongier · Mar 29, 2023 1m read

Quick Tips: Total Productive Maintenance

Named parameters can be achieved with SQLAlchemy :  

from sqlalchemy import create_engine, text,types,engine

_engine = create_engine('iris+emb:///')

with _engine.connect() as conn:
    rs = conn.execute(text("select :some_private_name"), {"some_private_name": 1})
    print(rs.all())

or with native api

from sqlalchemy import create_engine, text,types,engine

# set URL for SQLAlchemy
url = engine.url.URL.create('iris', username='SuperUser', password='SYS', host='localhost', port=33782, database='FHIRSERVER')

_engine = create_engine(url)

with _engine.connect() as conn:
    rs = conn.execute(text("select :some_private_name"), {"some_private_name": 1})
    print(rs.all())
0
0 580
Question Scott Roth · Mar 28, 2023

I am trying to pinpoint and troubleshoot an issue we have been seeing lately. We have several SQL Outbound Adapter Operations that are seeing issues trying to connect to our MS SQL Servers using the JDBC Gateway for calling insert, select, update, and stored procedure calls.

ERROR <Ens>ErrFailureTimeout: FailureTimeout of 20 seconds exceeded in osuwmc.Visit.ADTDBWriteBusinessOperation; status from last attempt was ERROR <Ens>ErrOutConnectExpired: JDBC Connect timeout period (15) expired for

0
0 372
Article Hiroshi Sato · Mar 23, 2023 1m read

InterSystems FAQ rubric

You can programmatically retrieve routine dates and sizes using the RoutineList query of the %Library.Routine (or just %Routine) class.

The RoutineList query has an argument, and the routine name to be searched can be specified by prefix match or middle match. (For wildcards, specify * or ?)

In the example below, *.MAC is specified as an argument.

SET tStatement =  ##class(%SQL.Statement).%New()
 DO tStatement.%PrepareClassQuery("%Routine" , "RoutineList") 
 SET rs = tStatement.%Execute("*.MAC",,0) 
 DO rs.%Display() 

In addition to the routine list, you can also get

2
0 690
Question Neil Thaiss · Mar 28, 2023

Hi,

I know little about SOAP security and am trying to apply a WS-Policy to a simple HL7 web service, but when I do I get object script errors.

The most latest one being:

ObjectScript error: &lt;UNDEFINED&gt;zValidateTransport+4^%SOAP.Security.Policy.1 *%request

The web service, shown below, simply extends UHSx.Common.Services.Twinkle.SOAP, and works perfectly well using basic HTTPS over SSL/TLS:
Class UHSx.Common.Services.Twinkle.SOAP Extends UHSx.Common.Services.HL7.SOAP
{Parameter LOCATION = "https://ryr-hc-test.sussex.nhs.uk:50800/UHSX_EPR/Twinkle_QRY_HL7_Web_Se…";Parameter SERVICENAME

0
0 225