Question Phillip Wu · Feb 29, 2024

Hi,

I've just installed WebTerminal to my IRIS system (Linux SUSE).

I go url:

http://trak01:57772/terminal/

But it just times out

My management portal address is:

http://trak01:52773/csp/sys/UtilHome.csp

The port 57772 is not being listened to [ ss -l|grep LISTEN|grep 57772] 

The doco for WebTerminal says to use this port number in "1.1.3 Launching WebTerminal"

How can I fix this?

Is there some process that needs starting?

Is there further configuration eg. apache web server setup?

Thanks.

==========

This install was done from the *.xml (WebTerminal-v4.9.5.xml) using the Management Portal:

System Explorer

2
0 285
Question Kurro Lopez · Feb 12, 2024

Hi all,

As you know, it is very complicated to debug a Business Service Rest API because the object is created when the applications receive a request, so we cannot have the JobId that we can use to debug.

https://docs.intersystems.com/iris20211/csp/docbook/DocBook.UI.Page.cls…

So, I'm trying to get the JobId when the class is being created, write a trace in OnInit() method and write the JobId in a log info

Method OnInit() As%Status
{
	$$$LOGINFO("JobId: "_$JOB)
	hang20breakQuit..OnInit()
}

Unfortunately, it seems to ignore this method because it doesn't show any traces

3
0 295
Announcement Anastasia Dyubaylo · Mar 3, 2024
0
0 133
Article Lily Taub · Mar 19, 2019 9m read

Intro

Most server-client communication on the web is based on a request and response structure. The client sends a request to the server and the server responds to this request. The WebSocket protocol provides a two-way channel of communication between a server and client, allowing servers to send messages to clients without first receiving a request. For more information on the WebSocket protocol and its implementation in InterSystems IRIS, see the links below.

This tutorial is an update of "Asynchronous Websockets -- a

7
3 6152
Article Eduard Lebedyuk · Dec 19, 2023 8m read

If you're running IRIS in a mirrored configuration for HA in Azure, the question of providing a Mirror VIP (Virtual IP) becomes relevant. Virtual IP offers a way for downstream systems to interact with IRIS using one IP address. Even when a failover happens, downstream systems can reconnect to the same IP address and continue working.

The main issue, when deploying to Azure, is that an IRIS VIP has a requirement of IRIS being essentially a network admin, per the docs.

To get HA, IRIS mirror members must be deployed to different availability zones in one subnet (which is possible in Azure as subnets can span several zones). One of the solutions might be load balancers, but they, of course, cost extra, and you need to administrate them.

In this article, I would like to provide a way to configure a Mirror VIP without the using Load Balancers suggested in most other Azure reference architectures.

1
3 1100
Question Daniel Raderstrong · Feb 23, 2024

Every class on the server throws this same error when trying to run the debugger. I've already made sure I don't have the %SecureBreak role assigned which seems to typically fix this issue. Any advice on how to troubleshoot this would be greatly appreciated! 
Error is : <COMMAND>zDebugStub+40^%Debugger.System.1

10
0 385
Question Mathew Burt · Jul 13, 2020

If you're viewing a HL7 message in the front end, with a schema correctly applied, you can mouse over a segment or a field and see the schema path, e.g:

Mousing over PV1 in the above message shows the schema path is "PIDgrp(1).PV1".

I'm writing a utility function which you pass an EnsLib.HL7.Message into. I'd like to loop through each segment and take action dependant on that schema path. How can I reference or determine that schema path in code?

Any help would be much appreciated!

2
0 836
Question Jakub Hemala · Feb 27, 2024

Hello,

I wrote a class that extends %Persistent and has only a few properties, one of which is Serial, a %SerialObject property (it needs to store any class that extends %SerialObject). When I assign a value to this property and call %Save on the class instance, I get this:

<METHOD DOES NOT EXIST>zSerialNewObject+1^HS.Local.CZ.OR.ROUTER.Service.Data.KeyProperty.1 *%New,%Library.SerialObjectr
HSROUTERcJ$^zSerialNewObject+1^HS.Local.CZ.OR.ROUTER.Service.Data.KeyProperty.1 +1L$^zSerialGetSwizzled+2^HS.Local.CZ.OR.ROUTER.Service.Data.KeyProperty.1 +3G$^%AddToSaveSet+5^HS.Local.CZ.OR.ROUTER.Service.
4
0 295
Announcement Emily Geary · Feb 29, 2024

Hi All,

On February 8, 2024, we asked for input from the IRIS community regarding exam topics for our InterSystems IRIS Developer Professional exam. We will close the window for providing feedback on the exam topics on Friday, March 8, 2024. If you would like to have your say in what topics are covered on the exam, this is your last chance!

How can I access the survey? You can access it here

  • Survey does not work well on mobile devices - you can access it, but it will involve a lot of scrolling
  • Survey can be resumable if you return to it on the same device in the same browser - answers save
0
0 176
Question Sinon Galvin · Feb 28, 2024

Hi Community,

Can anyone point me to the docs that show how to add automatic class documentation for the arguments used in a method call?   I can auto document the class, methods, properties etc. with the "///" but can't figure out how to get the nice argument documentation for the arguments used when calling a method.

Thanks in advance

10
0 281
Article Hiroshi Sato · Feb 29, 2024 1m read

InterSystems FAQ rubric

Global mappings can be registered using the system class Config.MapGlobals.

The method to globally map ^Sample.PersonD in a database SAMPLES other than the default database from the namespace USER is as follows (example executed in a terminal).

USER>zn"%SYS"%SYS>set ns="USER"%SYS>set glo="Sample.PersonD"%SYS>set vals("Database")="SAMPLES"%SYS>set st=##class (Config.MapGlobals).Create(ns,glo,.vals)

The third argument of the Create() method of the Config.MapGlobals class is passed by reference, so specify it by appending a period (.) to the variable name.

0
1 355
Announcement Laurel James (GJS) · Feb 29, 2024

Visual Studio Code releases new updates every month with new features and bug fixes, and the February 2024 release is now available. 

Version 1.87 includes: 

0
0 447
Question febri · Feb 29, 2024

Can anyone give me a hint about this error?

I can compile sources following this approach, create a container and so on, but for example in specific commands to run test, I get the error.

ERROR #6063: Memory allocation for the Monitor failed

--

stats:

CONTAINER ID   CPU %     MEM USAGE / LIMIT     MEM %     NET I/O                  BLOCK I/O            PIDS
29efa407abc9   3.46%     2.094GiB / 77.32GiB      2.71%       40.1MB / 2.1MB   416MB / 4.36GB   61

swap (disabled):

total        used        free      shared  buff/cache   available
Mem:            77Gi       2,5Gi        66Gi       4,5Gi

7
0 226
Question Anna Golitsyna · Feb 27, 2024

The goal is to identify programmatically all SOURCE namespaces on a server to which the routines are mapped. In the example below from the Namespaces page in Management Portal the answer would be USER. But some other namespaces on the same server could be mapped to a different namespace or even mapped to itself.

This code snippet prints all namespaces and source namespaces for their routines.
zn "%SYS"
set statement=##class(%SQL.Statement).%New()
set status=statement.%PrepareClassQuery("Config.Namespaces","List")
set resultset=statement.%Execute()
while resultset.%Next() {
    w %objcsd(1,13), $C(9)

6
0 352
Question Lowell Buschert · Feb 25, 2024

I am sending an httpRequest from ObjectScript to a python server.   I am not receiving a response in OS
 
OS config On the client side

// Create an HTTP request object
    Set httpRequest = ##class(%Net.HttpRequest).%New()
    
    // Set the server URL
    Set httpRequest.Server = "http://127.0.0.1:8080"
    
    // Set content type to JSON
    Set httpRequest.ContentType = "application/json"

    // Clear any existing entity body"{""name"": ""Lowell Buschert"", ""dob"": ""1970-12-09"", ""address"": ""XXXXX""}"
    do httpRequest.EntityBody.Clear()
    //Set httpRequest.EntityBody = "{""name"": ""Lowell

5
1 276
Question Sinon Galvin · Feb 9, 2024

I save / compile a class and instantly run a debug.  No issue

A few seconds later, try to run the same debug and get presented with either: 

1) Target Source is not compiled (Open launch json) dialog box

                                                    OR

2) The version of the file on the server is newer.

In the meantime I have made no edits to the VS Code window at all. 

If I pull a compare in response to #2 above, I am presented with a bunch of extent info built into the storage definition similar to the lines below.

5
0 275
Question Token Ibragimov · Feb 28, 2024

Hello!

How I can call my Business process - "process.ReconciliationPayments" from method. Like this.

ClassMethod getReportPavlodarEnergoSbyt()
{

s sc = $$$OK

ensBS = ##class(Ens.BusinessService).%New()

requestObj.operationDate="2024-02-28"
requestObj.provider="Provider"
requestObj.processId=$SYSTEM.Util.CreateGUID()

ensBS.SendRequestAsync("process.ReconciliationPayments",requestObj"payment")

q sc

}

7
0 360
Question Shashvati Dash · Nov 30, 2023

s ftp=##class(%Net.FtpSession).%New()
 s ok=ftp.Connect(server,user,password,port)
 s ftp.Timeout = 100
 
 i ok {
   
   s ok=ftp.SetDirectory(directory) 
   i ok {
     n files,file
     
     s ok=ftp.NameList(directory,.files)
     i ok {
       f i=1:1:files.Count() {
         s file=files.GetAt(i)
         i (ftp.SetDirectory(file)) {
           d ftp.SetToParentDirectory()
           continue
         }
         s fname=$p(file,"/",$l(file,"/"))
         s ok=ftp.Retrieve(file,.data)

1
1 313
Question Eyal Levin · Feb 25, 2024

Hi,

I have a scenario where I recognize that I have a duplicate patient in FHIR , both have a different set of data attached to them (Specimens / Observations / Conditions) and I want to transfer all the data from patient X to patient Y,  and maybe mark patient X as not relevant or delete it IDK yet.

since Patch currently supports only single patch,

"The Conditional Patch query identified more than one resource."

I can't use it as a bulk, but I need to loop through all the resources I find that are connected to patient X,

so I guess my question is how would you do it?

5
0 376
Question Patty Aguirre-Romero · Feb 23, 2024

Hi All,

When resending HL7 messages out, the receiving system rejects the message indicating the "Message Control ID already exists" (see error below). Iris retries resending the same message until the receiving system crashes and the BO disconnects in Iris. I would like to suspend the message when Iris receives that error and move on to the next message. Is this possible? Can it be handled by the BO Reply Code Actions settings? What reply code actions should I use? 

The error comes back when using the default Reply Code Actions ':?R=RF,:?E=S,:~=S,:?A=C,:*=S,:I?=W,:T?=C'

ERROR <Ens>ErrGeneral:

4
0 640