Question Elliott Grey · May 10, 2023

I'm trying to write an ObjectScript function that sorts version numbers to help learn ObjectScript. This is all I can think of after staring at VS Code for a while, but I don't know where to go with it. Can someone please help out with a tip? The goal is to take something like ["1.4.5", "0.5.3", "6.3.2", "1.2.4"] and turn it into ["0.5.3", "1.2.4", "1.4.5", "6.3.2"]

ClassMethod SortVersion(input As %String[]) As %String[] {
    Set sorted = []

    for i=1:1:input.%Size() {
        Set version = input.Get(i)

        Set major = $NUMBER($PIECE(version, ".", 1))
        Set minor =
4
0 428
Article Mauro Aguirre · May 11, 2023 13m read

Several steps should be done in order to secure the connection through xDBC clients to an IRIS Server instance using TLS. Most of the information can be obtained from the documentation about TLS on IRIS here, about configuring the security layer for encrypted connections. In the next paragraphs we will cover an step-by-step guide on how to configure and test the connection using SQL Clients apps using ODBC and JDBC.

You can download the drivers from InterSystems IRIS Driver Packages

Configuring IRIS SuperServer to use TLS

IRIS Documentation on this link

Before starting with the client

0
2 1225
Question Ryan Hulslander · Apr 13, 2023

Curious if anyone has modified the HL7 TCP/IP Service and adapter class to receive an HL7 message, ACK it, and just dump it straight to a file? I don't want the messages in the engine at all - just receive and dump. Has anyone done this before and have code you're willing to share?

Thank you very much in advance!

3
0 452
Question Menno Voerman · May 10, 2023

Hello everyone,

I am looking for a sort of REST interoperability adapter that can forward REST calls within HealthConnect. If necessary, we need to adjust the requests or responses.

For Fhir calls, we use the FHIR Interoperability Adapter. This works perfectly; a message comes in as HS.FHIRServer.Interop.Request, and a message HS.FHIRServer.Interop.Response goes out. I can make adjustments as needed to both the request and response. I am looking for the same functionality, but then for non-FHIR REST calls.

When I create a web application, the requests come in as %CSP.Request, and I can forward

2
0 265
Article Eduard Lebedyuk · Feb 10, 2023 6m read

In this article, we will establish an encrypted JDBC connection between Tableau Desktop and InterSystems IRIS database using a JDBC driver. While documentation on configuring TLS with Java clients covers all possible topics on establishing an encrypted JDBC connection, configuring it with Tableau might be a little bit tricky, so I decided to write it down.

Securing SuperServer

Before we start with client connections, you need to configure SuperServer, which by default runs on port 1972 and is responsible for xDBC traffic to accept encrypted connections. This topic is described in the documentati

3
2 852
Announcement Anastasia Dyubaylo · May 10, 2023

Hi Developers,

This April, you've posted 65 new questions on the Developer Community: 

 

Questions

6 Underlying Benefits of Asking Questions | SUCCESS

0
0 157
Question Anna Golitsyna · Apr 13, 2023

Is there any ObjectScript or a basic function that takes a string and separates it into words + punctuation/spaces array/list? Just not to reinvent the wheel. Say, process "It is a test, after all" into "It", space, "is", space, "a", space, "test", ", ", "after", space, "all". Or something to that effect.

9
0 447
Question Gaolai Peng · Nov 8, 2018

I am trying to get SDA3.Container object from a Stream object like following code:

Method HandleECRUpdateRequest(pRequest As CUSTOM.CORE.Message.ECRUpdateRequest, ByRef pResponse As Ens.Response) As %Status
{

               Set tContainer=##Class(HS.SDA3.Container).%New()
               $$$ThrowOnError(tContainer.InitializeXMLParse(pRequest.ContentStream, "SDA3"))
              
               Set tEventDescription=tContainer.EventDescription

But it tContainer seems to be empty.The tEventDescription is set to empty.

3
1 1199
Question Norman W. Freeman · May 7, 2023

I did some experiments on my local machine and found out that IRIS seems to associate each request (eg: CSP request) to a dedicated process named IrisDB.exe

This process has 3 threads, and one of them seems to be the main working thread (that will the handle request).

If I spawn many concurrent requests, the number of IrisDB processes on my local machine will grow (to make sure each request can be handled in parallel).

It seems there is a limit : it will create no more than 64 processes to handle requests (eg: even if 100 concurrent requests are send to IRIS). 

I have been wondering if there is

3
0 652
Article Robert Cemper · May 9, 2023 2m read

Creating your own commands or shortcut is one of the strongest features of ObjectScript
If you create your own Language Extensions to ObjectScript you mostly have to find the
proper %ZLANGC00 or %ZLANGV00 or %ZLANGF00 and add the extensions manually.

A few utilities do it already automatically (ZPM, ZME, ..)
This utility allows you to add your extensions also programmatically.

  • eg. at first run, or during installation I found this quite useful for my Docker-based demos as it all happens at start time.

This package includes a demo example to visualize the operation of this utility.

How to Use it

 ;
0
0 553
Announcement Kristina Lauer · May 9, 2023

Personalized Training and Learning Plan Consultations at the Global Summit 


Are you attending the InterSystems Global Summit 2023, June 4–7? Don't miss these in-person learning opportunities!

  • Meet with a technical trainer to start learning about InterSystems technologies, discuss a session, or resolve a technical issue.
  • Discuss your training needs and map out a plan for using our learning resources.

Register for the Global Summit today!

0
0 173
Announcement Derek Robinson · May 8, 2023

Hi All! Wanted to share a recent video we released, for those of you who may be getting started with InterSystems HealthShare Health Connect Cloud. This video walks through all the management tasks you can complete via the InterSystems Cloud Services Portal that you use with Health Connect Cloud. Feel free to reach out if you have questions!

0
0 260
Article Robert Cemper · May 8, 2023 2m read

If one of your packages on OEX receives a review you get notified by OEX only of YOUR own package.   
The rating reflects the experience of the reviewer with the status found at the time of review.   
It is kind of a snapshot and might have changed meanwhile.   
Reviews by other members of the community are marked by * in the last column.

I also placed a bunch of Pull Requests on GitHub when I found a problem I could fix.    
Some were accepted and merged, and some were just ignored.     
So if you did a major change and expect a changed review just let me know.
<--break->

# Package Review Stars IPM
0
1 1116
Article Luis Angel Pérez Ramos · May 8, 2023 6m read

Welcome, dear members of the community!

In this article we are going to demonstrate the great potential that IRIS/HealthConnect makes available to all its users with the use of Embedded Python and we are going to do it by developing a small production that will allow us to recognize and identify the faces present in a JPG file from some images that we will use as a reference.

Project configuration:

Let us begin!We have published the entire application in OpenExchange so that you only need to download and deploy it in Docker as you can read in the associated README file.

2
1 572
Job Ramesh Kumar Rajamanickam · May 7, 2023

Stanford Healthcare is looking for Software Engineers with IRIS/HealthShare/Ensemble experience

- Experience in install, configure, administer and support IRIS.
- Experience in Unix shell scripting and WinBatch scripting skills.
- Experience in developing tools and policies for IRIS system monitoring and Health check.
- Healthcare integration experience (HL7, REST)

This is a fulltime position at Stanford Healthcare, Stanford Healthcare is ranked among the top ten in the nation. Ideal candidate may refer this job post in linked in https://www.linkedin.com/jobs/view/3551629045 

0
0 278
Announcement Anastasia Dyubaylo · May 6, 2023
0
0 186
Question Rostislav Dublin · Apr 27, 2023

I deployed the IRIS container on my Mac M1 Docker Desktop Kubernetes cluster:

image: containers.intersystems.com/intersystems/iris-community-arm64:2023.1.0.229.0

I limited the container 1.5Gb memory:

resources.limits.memory: "1536Mi"

In the "merge.cpf" file I constrained IRIS memory usage aspects:

[config]
globals=0,0,800,0,0,0
gmheap=200000
bbsiz=100000
routines=100


Now I load-test the container by multiple installing  and uninstalling the %ZPM package:

  • install ZPM (zpm-installer.routine and execution):
set r=##class(%Net.HttpRequest).%New()
set r.Server="pm.community.intersystems.com"
set
6
0 477
Question Sergey Petrov · May 3, 2023

Hello everyone!
Maybe someone will tell me what could be the reason for such messages in the message.log file
05/03/23-06:46:27:155 (6584) 0 [Utility.Event] [SYSTEM MONITOR] Mirror state: Member type = Failover, Status = Transition
05/03/23-06:46:27:350 (1620) 1 [Utility.Event] Failed InstanceLookup (agent probably not running): instance not found
05/03/23-06:46:27:351 (1620) 2 [Utility.Event] Failed to become either Primary or Backup at startup
05/03/23-06:46:27:725 (1620) 1 [Utility.Event] Failed InstanceLookup (agent probably not running): instance not found

ISCAgent service is running.

6
0 448
Article Eduard Lebedyuk · Apr 17, 2017 4m read

In this article I'll cover testing and debugging Caché web applications (mainly REST) with external tools. Second part covers Caché tools.

You wrote server-side code and want to test it from a client or already have a web application and it doesn't work. Here comes debugging. In this article I'll go from the easiest to use tools (browser) to the most comprehensive (packet analyzer), but first let's talk a little about most common errors and how they can be resolved.

2
5 3888
Question Stuart Strickland · May 5, 2023

Hi,

I use ZLANGC00 and ZLANGC01 for shortcuts at programmer level to some frequently used dev tools. Is there a way to pass 2 arguments to a command?

Example:

ZZQD "Queue1" // Equivalent to D ZZQD^%ZZLANGC00("Queue1") to display messages in queue1 (ZZQD is my own code in %ZZLANGC00)

but if I wanted to type ZZQD "Queue1" $H-3 to call ZZQD^%ZLANGC00("Queue1",$H-3) can it be done or do I need to write something to manipulate the argument? So ZZQD "Queue1-3"

2
1 280
Question Jeffrey Drumm · May 5, 2023

I'm using the EnumerateJobStatus query of class Ens.Util.Statistics to obtain the LastActivity value of a Business Host.

I would expect that this would return the timestamp of the last message received by the BH, understanding that any connect/disconnect activity would reset that timer. However, the time returned appears to actually be the time at which Ens.MonitorService generated the alert and is not directly related to anything that happened in the BH itself.

I can probably work around this by subtracting the BH's configured InactivityLimit value from the timestamp, but this seems like it

1
0 238
Question Aya Ayuk · May 3, 2023

Hello, I need to determine the best way to split a class containing multiple methods(about 20), into multiple classes in which each method is in its own class. I am wondering if there is another way other than manually creating the different classes, and copying each method into each class. Doing this in Intersystems Studio.

10
1 640