Article Yubo Mao · Feb 7, 2023 3m read

1. Overview

With more and more hospital applications built, business interface data processing may be affected by a variety of factors (network, consumer systems, etc.), there is an excessive accumulation of messages or even cause interface lag, affecting the routine performance of hospital IT systems , so the monitoring of the business interface components queue is increasingly important.

While current Intersystems IRIS platform's built-in queue monitoring  only displays real-time queue information for interface components, which is limited in providing the queue data information needed by hospitals. The queue monitoring component program is based on the Intersystems IRIS platform and can monitor all interface components and display component queue information within 24h of the component, as well as query component historical queue data by setting a time period to better meet the needs of current in-hospital applications.

1
0 392
Question Tani Frankel · Feb 8, 2023

Does anyone happen to have a sample Configuration (CPF) Merge file that includes Action parameters setting up authentication methods (e.g. Password, Kerberos) for certain Services and Web Applications (e.g. via the ModifyService or Modify/CreateApplication AutheEnabled property)?

Thanks!

2
0 295
Announcement Evgeny Shvarov · Jan 26, 2023

Here're the technology bonuses for the InterSystems Developer Tools Contest 2023 that will give you extra points in the voting:

  • Embedded Python usage
  • Docker container usage
  • ZPM Package Deployment
  • Online Demo
  • Code Quality pass
  • Article on Developer Community
  • The second article on Developer Community
  • Video on YouTube
  • First Time Contribution
  • Community Idea Implementation

See the details below.<--break->

Embedded Python - 3 points

Use Embedded Python in your application and collect 3 extra points. You'll need at least InterSystems IRIS 2021.2 for it.

Docker container usage - 2 points

4
0 451
InterSystems Official Fabiano Sanches · Feb 8, 2023

InterSystems announces its first developer preview, as part of the developer preview program for 2023.1 release. Many updates and enhancements have been added in 2023.1 and there are also brand-new capabilities, such as production-ready support for Columnar Storage, ability to use Bulk FHIR, and support to MacOS 13 Ventura. Some of these features or improvements may not be available in this current developer preview.

0
0 314
Question Dhivakar Karimuth · Feb 7, 2023

I am trying get the Unix time stamp  in milliseconds

set epochSecond= $ZDATETIME($ZTIMESTAMP,-2)*1000

but the result is not accurate as $ZDATETIME ignoring /truncating  the fraction of the seconds and the milliseconds calculation is not accurate with fraction seconds

for example

set epochSecond= $ZDATETIME($ZTIMESTAMP,-2)

1675830682

when its converts to the milliseconds

it became 1675830682000. not the accurate fractional seconds. 

My target system looking for the milliseconds time stamp to authenticate. 

Could you please help with steps to return the unix timestamp in milliseconds

Thanks

3
0 593
Question Yubo Mao · Jan 26, 2021

How to stop a task plan when it starts incorrectly and continues to execute due to disk space and other reasons, which may cause system failure

5
0 607
Question Lukas Renz · Feb 1, 2023

Hello guys,

i try to call a Operation within 3 foreach loops. 

When i try to do this, i always get the following error: 

I dont get any Errpr when i log my request message at this time i want to call a operation. 

Everything works and i get no error. But when i try to call the operation i get this error.

Then i tried to call a operation in the first Level (not in a ForeachLoop) it works. 

I simply call the operation with the RequestMessage from my Service.

When i now try to copy this call into the third Level (within 3 foreachloops) Then i also get this error.

I dont know what i am doing wrong...

2
1 319
Announcement Developer Community Admin · Feb 7, 2023

It's time to announce the Winners for January! Please welcome our awesome Global Masters Heroes!

The storm of applause goes to these developers and their great contribution to DC in January:

🥇 @Robert Cemperex Senior Sales Engineer from InterSystems, Austria

🥈  @YURI MARX GOMESSoftware Architect, YM Services, Brazil 

 

Learn more about the competition and our awesome winners below.

5
0 317
Article 王喆 👀 · Feb 7, 2023 5m read

Hello, friends who are developing IRIS. I recently participated in the InterSystems Developer Tools Contest. This time, I made a tool based on the idea described in an article I published earlier as a template for quick query of messages. Currently, you only need to establish entity classes in IRIS, Then record the message corresponding to the entity class in the specified lookup table, and all the key fields generated in the message can be inverted indexed (the concept in ElasticSearch), which is convenient for quick query. The following is the design idea of my program.

1
0 292
Question Dmitry Maslennikov · Feb 6, 2023

So, I know that I can return a SQL Error message from my SQL Procedure written in ObjectScript, with code like this

$ cat <<EOF | irissqlcli iris://_SYSTEM:SYS@localhost:1972/USER
CREATEorREPLACEPROCEDUREtest()
LANGUAGE OBJECTSCRIPT
{
 SET %sqlcontext.%SQLCODE = 400SET %sqlcontext.%ROWCOUNT = -1SET %sqlcontext.%Message = "test error message"
};

CALLtest();

EOF
[SQLCODE: <-400>:<Fatal error occurred>]
[Location: <SPFunction>]
[%msg: <test error message>]

But I did not find how to do it with Python. I can't find %sqlcontext variable available there

1
0 255
Announcement Laurel James (GJS) · Feb 7, 2023

Listen to CEO George James chat with Derek Robinson, host of the InterSystems DataPoints podcast talk about source control, developer tools and how our solutions are beneficial for InterSystems IRIS users.

 

In this short 17 minute episode, George and Derek discuss our work with developer tools, and how choosing the right source control can provide users with a seamless solution - which is why Deltanji is seen as the go-to source control for InterSystems IRIS users.

Listen now on the InterSystems website > https://bit.ly/3Jp5py5
or wherever you get your podcasts - just search for 'InterSystems DataPoints'.

0
0 248
Question Stefan Cronje · Feb 7, 2023

Hi all,

In the days when I was still using studio, the indentation character of choice was tab, due to misalignment of code when using non-monospaced fonts.

In VSCode when I create new class files, this defaults to 4 spaces. Where and how do I set the default indentation for ObjectScript class files?

Also, with python it should be spaces. So what is recommended when doing python script inside objectscript classes?

Thank you.

2
0 1631
Question Mary George · Dec 28, 2022

Hi Team , 

Can I please check if anyone has encountered SOAP authentication error when trying to submit a certificate signing request or when trying to get certificate .

I configured a local CA server without SMTP configuration and I configured a local CA client. These steps worked okay.

Then I tried to Submit Certificate Signing Request to Certificate Authority server and I am getting the following error :

Similar error is appearing when I try to use the Get Certificate(s) from Certificate Authority server option

1
0 380
Announcement Anastasia Dyubaylo · Jan 13, 2023

Hey Developers,

We'd like to invite you to join our next contest dedicated to creating useful tools to make your fellow developers' lives easier

🏆 InterSystems Developer Tools Contest 🏆

Submit an application that helps to develop faster, contributes more qualitative code, and helps in testing, deployment, support, or monitoring of your solution with InterSystems IRIS.

Duration: January 23 - February 12, 2023

Prize pool: $13,500

 

14
2 2394
Article Bob Binstock · Sep 6, 2016 19m read
Mirroring 101Caché mirroring is a reliable, inexpensive, and easy to implement high availability and disaster recovery solution for Caché and Ensemble-based applications. Mirroring provides automatic failover under a broad range of planned and unplanned outage scenarios, with application recovery time typically limited to seconds. Logical data replication eliminates storage as a single point of failure and a source of data corruption. Upgrades can be executed with little or no downtime.Deploying a Caché mirror does, however, require significant planning, and involves a number of different
22
3 7867
Question Oliver Wilms · Feb 5, 2023

I copied a 5 MB messages.log file to AWS where I have iris-log-viewer app deployed. I ran the test to see how it takes in IRIS code to import the lines into a persistent table:

IRISAPP>set m5mb="/home/irisowner/irisdev/messages.old_20221231.log"

IRISAPP>

IRISAPP>do ##class(otw.log.irislogreader).Test1(m5mb)
Test1 begins at 02/05/2023 12:49:30
ReadLogLines
/home/irisowner/irisdev/messages.old_20221231.log
Open
Test1 ends at 02/05/2023 12:49:34
Test1 execution time: 3.500789

select count(*) from otw_log.Log

63239

7
0 331
Article Oliver Wilms · Feb 5, 2023 2m read

As my entry into InterSystems Developer Tools Contest happening now I have been working on an alternative to the Console Log Viewer web page provided as part of InterSystems IRIS Management Portal. Console log is a file called messages.log. It is what InterSystems support asks me to send to them when I open a support ticket. Working on IRIS containers deployed in the cloud it is not straight forward to copy the messages.log file to a place where I can attach it to an email. Iris-log-viewer app provides a Download link to download messages.log from any browser. 

0
1 232
Announcement Anastasia Dyubaylo · Feb 5, 2023
0
0 123
Article Daniel Aguilar · Feb 5, 2023 2m read

Hi Community!

I want to share with you mi first Open Exchange application.

It's a tool to made our developments easier. It's a micro service in a IRIS docker that help us in our new features giving us a way to add short links in our SMS, Email campaigns and for links of the different stores for our apps.

It's very easy to use it.

Simply clone this repo:

https://github.com/daniel-aguilar-garcia/cos-url-shortener.git

Open the folder in VSCode and start the docker.

 

After that you can create short link version of any link via api request. For example with Postman:

0
0 413
Article Yuri Marx · Feb 5, 2023 1m read

 

If you want to know more about a new project or generate a new way to see your project, the better way is using mindmaps or markdown documentation. The IRIS Connections allows to you generate the mindmap for your classes and get your classes documentation in a markdown file.

IRIS Connections installation

If you want to install using ZPM:

zpm:USER>install iris-connections

If you want to install using Docker:

1. Clone/git pull the repo into any local directory:

$ git clone https://github.com/yurimarx/iris-connections.git

2. Open the terminal in this directory and run:

$ docker-compose up -d --build
0
0 323
Article Yuri Marx · Feb 5, 2023 1m read

 

When you need to know the impact on a change in your project, it is very useful to see class dependencies in a network diagram. The IRIS Connections project allows you to see it.

IRIS Connections installation

If you want to install using ZPM:

zpm:USER>install iris-connections

If you want to install using Docker:

1. Clone/git pull the repo into any local directory:

$ git clone https://github.com/yurimarx/iris-connections.git

2. Open the terminal in this directory and run:

$ docker-compose up -d --build

Analyze your classes dependencies:

Go to your browser and access:

0
1 326
Article Oliver Wilms · Feb 4, 2023 1m read

I developed iris-log-viewer on a work laptop using an older version of IRIS. My messages.log file has nearly 10k lines. I noticed it takes a couple of seconds to read messages.log file line by line, import each line into a persistent class, and display messages on my screen. I wonder if Python can speed up the process.

I developed EmbeddedPython class. Initially I imported a python script file to read messages.log file in Python. Later I figured out how to write a Python classMethod where I invoke IRIS classMethod to import one line at a time while reading messages.log.

0
0 297