Announcement Larry Finlayson · Jan 23, 2025

Developing with InterSystems Objects and SQL – VirtualFebruary 10-14, 2025

  • This 5-day course teaches programmers how to use the tools and techniques within the InterSystems® development environment.
  • Students develop a database application using object-oriented design, building different types of IRIS classes.
    • They learn how to store and retrieve data using Objects or SQL, and decide which approach is best for different use cases.
0
0 70
Question Moussa SAMB · Feb 6, 2025
 

Hi,

A SFTP server on which we connect has increased its security level by disabling the use of the ssh-rsa algorithm
Since then, SFTP connections with ssh keys are no longer made through Intersytems but through tools such as FileZila and Putty. Looking at the Logs I see that the generated ssh key of type RSA supports other modern algorithms such as rsa-sha2-256 / rsa-sha2-512 . I wanted to know if the Intersystems SFTP client supports modern algorithms?

1
0 169
Question Phillip Wu · Jan 21, 2025

The question I have is if I run an External backup this library rotuine is called:
##Class(Backup.General).ExternalFreeze()

Is there a command I can run that shows me the Iris system is frozen due to the call to ##Class(Backup.General).ExternalFreeze()?

If the system is frozen I cannot sign into Iris terminal session.

I backup the IRIS server using Veeam. Veeam calls the "freeze" script, snapshots the server in VMWare, then calls the "thaw" script.
Veeam then backs up the VMWare snapshot.

I have had cases where Iris was frozen and I'm guessing this could be caused by a call to ##Class(Backup.

4
0 221
Question Yuhong Snyder · Jan 22, 2025

Hello,

I hope this is a simple ask..

basically I need to create local files daily at a certain time for example 11:30pm.

1. file name needs to be like  xxx__20250113.txt , the date part should be next day's timestamp with format YYYYMMDD, so I will write about 17 files like that with different names.

2. write a dummy hard coded word for example “Dummy Word” in the file.  the file eventually will be used by other operations to add hl7 message on top of this  in it with the live interface message. 

3. this needs to be done every night at 11:45pm

So how am I going to implement this?

     1

0
0 123
Announcement Celeste Canzano · Jan 22, 2025

Hi Everyone!

The Certification Team of InterSystems Learning Services is currently developing an InterSystems ObjectScript Specialist certification exam, and we are reaching out to our community for feedback that will help us evaluate and establish the contents of this exam.   

Please note that this is one of two exams being developed to replace our InterSystems IRIS Core Solutions Developer exam. You can find more details about the other exam, InterSystems IRIS Developer Professional exam, here

How do I provide my input? Complete our Job Task Analysis (JTA) survey!

3
0 246
Announcement Anastasia Dyubaylo · Jan 7, 2025
Hello and welcome to the English Developer Community Annual 2024 Recap.
General Stats:
3,294 posts published in 2024:
  – 1344 articles
  – 909 announcements
  – 1000 questions
  – 41 discussions

4,616 members joined the Developer Community in 2024
22,319 posts published in total
14,662 members joined in total

1
0 226
Question Phillip Wu · Jan 16, 2025

Hi,

I'm using embedded Python as follows:

AUMHTESTTC01:%SYS>do ##class(%SYS.Python).Shell()
Python 3.6.15 (default, Sep 232021, 15:41:43) [GCC] on linux
Type quit() or Ctrl-D to exit this shell.
>>> import iris
>>> mirror=iris.cls('SYS.Mirror')
>>> pri=[]
>>> alt=[]
>>> status=mirror.GetFailoverMemberStatus(pri,alt)
>>> print(status)
1>>> print(pri)
[]
>>> print(alt)
[]
>>> exit()

However the equivalent ObjectScript works:

%SYS>set sc=##class(SYS.Mirror).GetFailoverMemberStatus(.pri,.alt)
%SYS>zw pri
pri=$lb("SERVERA.FOO.BAR.ORG/STAGE","SERVERA.foo.bar.
4
0 165
Question Andre Ribera · Jan 21, 2025

I'm working on some code that would benefit from being able to see whether or not a project file has been saved in Studio.
I can see when I make changes, that the project name has an asterisk added to it:

In searching for it, however, I haven't been able to find any methods or calls to access the property/check that controls that asterisk.
My question is whether anyone out there knows if that is accessible and if so then how can it be accessed.
I'd like to add a check in my code that enforces that the project file must be saved prior to proceeding with the intended action.

2
0 120
Question Gabriel Silva dos Santos · Jan 17, 2025

Hello everyone,

I’m facing issues with replicating data from my Caché 2016 database to a PostgreSQL database. I need to handle around 300 data updates per minute, and whenever certain tables are modified, those changes must be reflected in other databases.

So far, I’ve tried various approaches, including:

  • Setting up an intermediary API,
  • Using Azure Service Bus,
  • Leveraging Caché Jobs,
  • All of which rely on table triggers as the entry point.

However, each of these solutions has led to performance bottlenecks and system lockups.

6
0 213
InterSystems Official Timothy Leavitt · Dec 4, 2024

It's been a while since I've posted about Embedded Git on the Developer Community, and I'd like to provide an update on the massive amount of work we've done this year and where we're going next.

Context

If you're building solutions on IRIS and want to use Git, that's great! Just use VSCode with a local git repo and push your changes out to the server - it's that easy.

6
0 519
Article Ashok Kumar T · Sep 13, 2024 7m read

In the previous article. Practices of class members and their execution within embedded Python. We will now turn our attention to the process of switching namespaces, accessing global variables , traversing and routine executions within embedded Python.

Before proceeding to the other functions. let us briefly review the execute function within the iris package. This function is exceptionally beneficial for executing the arbitrary ObjectScript functions and class invocation.

>>> b = iris.execute('return $Piece("test^aaaa","^",2)')
>>> b
'aaaa'
>>> b = iris.
6
1 585
Question Yuhong Snyder · Jan 21, 2025

Hello,

We are doing the hl7 integration migration from cloverleaf to InterSystems Healthshare.  so I have an application has workflow like below, and I am seeking the suggestion of the workflow in InterSystems HealthConnect cloud version.

The current application has workflow like this.

1. local server has Cron job every night to create about 10 files with specific name and next day's timestamp in file name with a dummy word in it and the files located in local cloverleaf server. pretty much 1 facility per file, file name has facility name and timestamp in it.

2.

0
0 87
Announcement Anastasia Dyubaylo · Jan 16, 2025

🚨 Update, January 21, 2025 – Maintenance Completed 🚨

The planned maintenance on the Developer Community has been successfully completed! While the site is up and running, we are still performing additional testing, so occasional issues may occur.

We apologize for any inconvenience and greatly appreciate your patience. If you notice anything unusual, please don’t hesitate to let us know.

Thank you for your understanding and support!

9 Under Maintenance Page Tips | Messages for a Down Website

2
0 178
Question Oliver Wilms · Jan 19, 2025

I inherited some legacy MUMPS / ObjectScript code. A code review identified an exclusive NEW and that is not allowed per our coding standards.

The original code contains:

RUN(CALL,DRVNAME)
 S $EC=""
 S ^TMP($J,"RMPV","DRVNAME")=DRVNAME
 N TMPFILE,OLDIO
 S OLDIO=$IO
 I $G(^TMP("RMPV","SILENT"),1) S IOP="NULL",%ZIS=0 D ^%ZIS I '$G(POP,1) U IO
 D INIT^@DRVNAME
 D  ; scope variables
 .N (DUZ,CALL) ; Protect %response
 .S IOF="""""",IOM=80,U="^"
 .

3
0 154
Article Tani Frankel · Jan 19, 2025 1m read

In your Interoperability Production you could always have a Business Operation that is an HTTP client, that uses OAuth 2.0 for authentication, but you had to customize the Operation for this authentication methodology. Since v2024.3, which was lately released, there is a new capability, providing new settings, to handle this more easily.

0
0 197
Question Sean Brady · Jan 17, 2025

Hello everyone! This is my first post into the developer community and one that I hope is fairly simple to answer. In our environment we currently have 3 different Test environments for testing before migrating code to our Prod environment. Currently we are working on establishing a source control method using Git in house which has been a bit of a struggle. We have also had developers that had used different test and migration methods in the past which has caused some issues with keeping the different test environment in sync.

7
0 224
Question Jean Millette · Jan 15, 2025

Hello,

Is there a single ObjectScript operator or method to concatenate two %DynamicArrays?

I'm looking for something that will do the following:

set arr1 = [ 1, 2, 3 ]
set arr2 = [ 4, 5, 6 ]
set arrcombined = arr1.%Concatenate(arr2)

or 

set arrcombined arr1_arr2

With end result:

zw arrcombined
arr1=[1,2,3,4,5,6]  ; <DYNAMIC ARRAY>

I can iterate and %Pop over the 2nd array and %Push each popped entry to the 1st array, but I was looking for something more succinct.

Thanks in advance.

4
0 226
Job Parwez Wahid · Jan 17, 2025

Seeking:

  • IRIS for Health Platform experience a MUST (version 2021 and above)
  • Coding and developing components in Objectscript (5+ Years)
  • Experience in H7L (ADT’s)  and FHIR (3+)
  • Experience in IRIS IKO’s, GKE, K8’s and Cloud Technology (2+)
  • Experience in IRIS Ensemble Cache, SDA’s 
0
0 194
Question Ali Chaib · Jan 9, 2025

Everytime I try to send a POST FHIR bundle I'm getting the following response: 404 Not Found. I'm not really sure why, although it works fine with a GET!

This is an example: 

 Response:

It might be something related to request path but not really sure.

And this is the HTTP service I'm using 

I tried this with Postman and it's working as expected

Am I missing something ? 

1
0 151
Question Craig Regester · Apr 18, 2016

We are currently looking into a way to provide a group of end-users (i.e. non-Interface Development engineers) access to a pre-defined group of Ensemble-based Data Lookup Tables for purposes of viewing and editing. We do not want to give them access to ALL Data Lookup Tables due to security/continuity concerns.

My thinking is that a simple persistent Cache table with three columns (Role Name,  Table Name, Access-Level [like View or Edit]) with a CSP front-end could potentially provide an easy way to make this solution a reality.

3
0 1148
Article Ariel Glikman · Mar 2, 2024 4m read

The IKO documentation is robust. A single web page, that consists of about 50 actual pages of documentation. For beginners that can be a bit overwhelming. As the saying goes: how do you eat an elephant? One bite at a time. Let's start with the first bite: helm.

What is Helm?

Helm is to Kubernetes what the InterSystems Package Manager (IPM, formerly ObjectScript Package Manager - ZPM) is to IRIS.

It facilitates the installation of applications on the platform - in a fashion suitable for Kubernetes.

2
5 692
Question Daniele Monti · Jan 16, 2025

Hello,

I am currently trying to edit server side code for TrakCare using Visual Studio Code with  intersystems-community.vscode-objectscript version 2.12.11-beta.1.

I can correctly check out the .mac file but when I try to either File > Save or use command 'ObjectScript: Import and Compile Current File' I get a very generic error .

I cannot find any details anywhere in the Output section.

I have reinstalled all extensions several times.

Any hints would be much appreciated.

Thanks! Daniele

3
0 182
Question Andy Stobirski · Jan 16, 2025

Hi All

I have created a SOAP Service from a tutorial, using sample code, as follows:

Class Hospital.MyService Extends EnsLib.SOAP.Service
{

/// For this business service, ADAPTER should be "" so that we use the normal SOAP processingParameter ADAPTER;Parameter SERVICENAME = "MyService";Parameter NAMESPACE = "http://www.myhospital.org";Parameter USECLASSNAMESPACES = 1;
Method SubmitMessage(pRequest As Hospital.SoapRequest) As Hospital.SOAPResponse [ WebMethod ]
{
    // Do something with pRequest//set sc= .
1
0 107