Article Sergey Mikhailenko · Jan 24, 2023 8m read

Introduction

There are many entities in IRIS which are extremely difficult to transfer to another system.They usually contain important system-stored objects: users, roles, privileges, mappings, and applications. The exception to this list is for resources, which are facilitated by the ability to select and save them from the management portal interface [System > Security Management > Resources]. Yet, things are not as good with other system objects. I even got an idea for this topic

I devoted this article to the explanation of how to transfer gateway connection settings [System > Configurat

image

2
0 699
Question Stefan Cronje · Jan 25, 2023

Hi *,

I want to dynamically generate the arguments of a method during compile time.

'For example, I want the following method

ClassMethod DoCleverStuf() As %Status [ CodeMode = objectgenerator ]
{
    do %code.WriteLine("    Set tSC = $$$OK")
    ...
}

to look like this in the .int code.

ClassMethod DoCleverStuf(pValue1 As %Integer, pValue2 As %String) As %Status [ CodeMode = objectgenerator ]
{
    // some generated code will be here
}

Is this possible? Or alternativel;y, can I generate a whole method at compile time?

Thanks.

2
0 334
Question Mark Charlton · Jan 20, 2023

I've been trying for a while to come up with a set of tools to monitor the health of a mirror set and email a report nightly on the status of the mirror, or flag issues in real time.
Making sure that all the databases are caught up, that all the mirror members are online. 

I've tried a number of methods I've found to try to access the state of the mirror and mostly found they're internal or unsupported routes, (that when questioning WRC have swiftly been removed from the online documentation...). The best I've found is %SYSTEM.Mirror, but that just lists the state of the entire mirror set and

2
0 523
Question Scott Roth · Jul 8, 2022

We are upgrading from Health Connect 2018.1.3 to IRIS Health Connect 2022.1, and one thing that we are particularly hesitant about is if our Business Rules will work in the new version.

I am trying to come up with a testing process for bulk testing our rules, and wanted to know if this could be done programmatically instead of having to modify all the Business Operations to have them write the HL7 data to a file. I caught Orlando Health's presentation at GS2022 but I am not sure that will work for my team.

We already capture all the raw data from Business Services, so I just was looking to w

10
3 782
Question Cedric Montanuy · Jan 25, 2023

Hi guys, 
I've setup an FTP passthrough service and operation to move two files from one SFTP server to another. 
The files are moved and i can confirm with filezila that the whole operation went well. 
However, i need to raise errors and send email if one the sftp servers is down for whatever reason, and if the trasnfer didn't go well. 
I ticked the alert on error box for the passthrough BS and BO and the errors are indeed forwraded to an alert management system. I have real problems with the check on the SFTP servers. 
I'm stuck after trying to design several solutions that i didn't manage to imp

7
0 838
Question Virat Sharma · Jan 23, 2023

Hi All,

I am a beginner in cache. I need to extract data from multiple tables (4-5) tables based on an SQL query . The data is more than 9 lakhs of records (i checked using count). The total number columns is 16. 

When I am running this SQL query through management portal, I am getting time out exception. Could you please suggest how I can retrieve those records. Which way will be good (Dynamic query using %SQL.Statement or Embedded SQL (not known to me) or Writing to a global will help or not). 

I tried using CSV but there are few columns that contain comma and because of which I cannot us

4
0 483
Article T Wolfe · Jan 30, 2017 10m read

Quality of Service Mirroring Timeout Configuration

           The Quality of Service (QoS) timeout determines how long a Mirror configuration of Caché will tolerate a loss of connectivity between its members. However, the exact method by which it does this and what that means for someone looking to configure this setting on their own system is not entirely obvious. For example, InterSystems released an alert in April of 2015 detailing the consequences of having a shorter QoS timeout on virtualized systems and our decision to change the default value of QoS from 2 seconds to 8 seconds in newer

2
5 2882
InterSystems Official Fabiano Sanches · Jan 11, 2023

InterSystems announces another developer preview release, as part of the developer preview program for the 2022.3. Many updates and enhancements have been added in 2022.3 and there are also brand new capabilities, such as the new FHIR SQL Builder, improvements for Columnar Storage, and support to SUSE 15 SP4 and Oracle Linux 9. Some of these features or improvements may not be available in this current developer preview.

Future preview releases are expected to be updated biweekly and we will add features as they are ready. Please share your feedback through the Developer Community so we can b

yes

8
0 403
Question Phillip Wu · Jan 21, 2023

Hi,

Is there a way of printing out information about IRIS.DAT file eg. database name?

The reason is that I've "refreshed" TEST system from LIVE system and I'm not sure I've the copied the correct file to the correct place

on the file tree. The file tree structure shows the database that IRIS.DAT represents. 

eg. /db/HMF/IRIS.DAT should be the HMF database

6
0 627
Question Andy Stobirski · Jan 16, 2023

Hi Guys

I've been using the example code %SQL.ExportMgr taken from here (an example from the intersystems community) an am having a few problems with it.

The code I have is below, and I'm having the following problems:

  • Regardless of the dateformat property I use (e.g.  Set mgr.DateFormat = 1),  date data is always exported with format in YYYY-MM-DD
  • Regardless of the timeformat property I use (e.g.     Set mgr.TimeFormat = 2), ,  timedata is always exported with format in hh:mm;ss
  • The stringquote doesn't seem to work at all - I would expect, when it is used all text fields to be wrapped


4
0 386
Question Joe Jones · Jan 24, 2023

Hi Community,

I have created a HL7 production in my working environment, Ens.Alert ,EMailAlert, PagerAlert, and  BadMessageHandler are created.

Can anyone explain how Ens.Alert and BadMessageHandler will work when an HL7 message in Passed in Business service and how these 2 are related when any error occurs in the Production envinorment?

1
0 338
Question Omar Ali Ateen · Jan 24, 2023

Dear Friends

Please help me to create  %ZEN.proxyObject same in below example:

{

    "dynamicLinkInfo": {

        "domainUriPrefix""link.example.com",

        "link""https://www.examplelink.com"
    },

    "suffix": {

        "option""SHORT"
    }

}

 

My Code

 // body
    set BodyObject=##class(%ZEN.proxyObject).%New()
    set dynamicLinkInfo=##class(%ZEN.proxyObject).%New()
    set suffix=##class(%ZEN.proxyObject).%New()
set DataObj=##class(%ZEN.proxyObject).%New()
set Data2Obj=##class(%ZEN.proxyObject).%New()
Set DataObj.domainUriPrefix= "link.ex
2
0 355
Question Stefan Cronje · Jan 22, 2023

Hi all,

I am trying to use some process private variables (percent variables) in Triggers.

I am referring to values from $System.Process, like the ClientIPAddress and CSPSessionID.
These do to not contain values and I suspect it is bacause of scope. I also checked, and the %session variable is not available if the change originated from a CSP request.
I know that in triggers the scope of the variables are to be kept local, that is why NEW is to be used.

Is there a way to access the Process Private Variables in Triggers or get $System.Process to return the correct values?

Thanks.

10
0 486
Question Token Ibragimov · Jan 23, 2023

Hello

i'm trying to read http json response from service. The response size res.HttpResponse.Data.Size = 19610854 

ClassMethod getData(pCode,pDate, pGlb) As %Status
{

    Do res.Get("TestService/getData?dateTo="_$ZDate(pDate,3))
    Set stat=res.HttpResponse.StatusCode
    Do res.HttpResponse.Data.Rewind() 
    Set httpResponse=res.HttpResponse.Data.Read(res.HttpResponse.Data.Size,.sc)
    Set dynObj = [].%FromJSON(httpResponse)
    Set iter = dynObj.Stmt.%GetIterator()
    While iter.%GetNext(.key, .value){
        Set @pGlb@(item)=$ListBuild(SomeField1,SomeField1)
    }

}
2
1 608
Question Phillip Wu · Jan 23, 2023

I want to refresh the TEST DB from LIVE.

On TESTTC02, I'm getting the error:
"Missing Mirrored Databases Report"

Questions.
1. What causes this problem?
2. How do I fix it?

Thanks for any help
=========================
This is the basic plan for the refresh:
DR copy IRIS.DAT files -> TESTTC01
TESTTC01 IRIS.DAT files -> TESTTC02

These are the details:
SMP=System Management Portal – the GUI web interface into IRIS admin
DRTC01=DR node of LIVE (async mirror)
TESTTC01=Primary member
TESTTC01=Backup member

This is what I did:
0. on TESTTC01 SMP, "Remove Mirror Configuration"
1. Copied IRIS.DAT from TRAK-DR

2
0 412
Announcement Anastasia Dyubaylo · Jan 17, 2023

Hey Community,

We are glad to invite you to the upcoming kick-off webinar on the InterSystems Developer Tools Contest.

In this webinar, we'll talk about how to choose a project and show you how to develop, build and deploy applications on InterSystems IRIS data platform. Also, there will be information about the hot internal projects at the moment (SQL client, VS Code unit tests and Jupyter notebooks), how to look at community opportunities in the Ideas portal, and what InterSystems would like to do with the management portal.

Date & Time: Monday, January 23 – 12 pm EST | 6 PM CET 

Speakers:  
🗣 @Raj Singh, InterSystems Product Manager 
🗣 @Dean Andrews, InterSystems Head of Developer Relations  
🗣 @Evgeny Shvarov, InterSystems Developer Ecosystem Manager

>> Register here <<

2
0 419
Article Robert Cemper · Jan 23, 2023 2m read

Some technical background information

There is not just one class in this package:  rcc.gstream.cls but also rcc.gstreamT.cls

While rcc.gstream works with direct access to the stream globals, the *T version uses
a Process Private Global (PPG) as Temporary storage.
using  SELECT * FROM RCC.gstreamT WHERE RCC.useT('^jpgS')=1 and similar.

This might be an advantage for multiple access to the same stream in sequence,
The advantage is obvious: You have a personal snapshot in memory and no risk of
a conflict in access. This might be interesting if you work just on 1 specific stream.
The disadvantage i





0
0 347
Question Phillip Wu · Jan 19, 2023

I have the following servers in IRIS mirror set:
Arbiter; isc_agent only
LIVETC01; IRIS DB full install; Primary
LIVETC02; IRIS DB full install; Backup

A couple of days ago IRIS hung.
The application using LIVETC01 DB stopped functioning.

I'm trying to find out the sequence of events leading up to the failure.

I see these entries in the log:
Arbiter:
2023-01-17T15:54:56 ISCAgent: Arbiter client error: Message read failed.
2023-01-17T15:54:56 ISCAgent: Completed serving application: ISC1ARBITER
2023-01-17T15:54:56 ISCAgent: Arbiter client error: Message read failed.
2023-01-17T15:54:56 ISCAgent: Comp

2
0 455
Question Eduard Lebedyuk · Jan 19, 2023

I have a production with one Business Host - a Business Service which I need to scale automatically to consume ~80% of CPU time.
Business Service pulls data from a (non-FIFO) queue so that I can adjust pool size without any issues.

So far, I'm planning a different BS running every X seconds and sampling CPU with $system.Process.GetCPUTime() and scaling the pool size of the main BS up/down based on that metric.

Has anyone tried something similar? Any advice/code samples would be appreciated.

6
0 351
Article Yuri Marx · Jan 9, 2023 7m read

Applications that work with bill payments and receipts, as well as the delivery and inventory of items, generally require the use of barcodes or QR Codes. The latter is used in even broader scenarios since the QR Code can store more information than a simple bar code. Thus, it is important to have the ability to generate barcodes and QR Codes or read the data stored in them from an image or a PDF. This article will show you how to do this using Python and some of its free libraries.

Pyzbar library

The pyzbar library reads one-dimensional barcodes and QR codes from Python 2 and 3 using the zb




Read PDF barcodes

1
2 1790
Question Menno Voerman · Nov 4, 2022

Hi All,

Hopefully  someone can help me with this case. I need to encrypt a text(querystring) with an AES265 encryption. An other vendor is decrypting this information. I have a working class in C#. I've tried to build the same in Objectscript for the encrypt part but there's a missing link somewhere.  What's the difference between the C# and Objectscript implementation?

Objectscript code (until now):

Class TEST.ENCRYPT
{

// Symmetric Keys sample to encryptClassMethod DoAESCBCEncrypt() As%Status
{
	set key="pZR8qfrz7t47G+dboyJCH4NnJRrF+dJbvxq37y/cLUo="set iv=##class(%PopulateUt

7
0 788
Question Colin Overton · Jan 19, 2023

Hi All,

I'm looking to write a 3rd party front end for BI cubes and have been directed towards the REST API here: https://docs.intersystems.com/iris20222/csp/docbook/DocBook.UI.Page.cls…

I've had quick test using postman and can use those fine, the issue I have is that there are some areas of metadata not exposed by the api that are essential to write a front end tool. I can list the cubes and measures using the /INFO/ paths, but that seems to be the limit of what is available.

In particular I need to be able to get metadata for Dimensions, Hierarchies, Levels and Membe

6
0 379
Question Artur Deguzman · Jan 18, 2023

Hello all,

I just started learning SQL and am also new to Cache...

I am dealing with a simple SQL query and trying to understand the components of the following expression do:

STRING(city_name, ' - ', city_code) into :CODE, :VALUE 

I understand what the STRING function does. However, I am lost after that:

"into:CODE, :VALUE"

What do these do?

Thanks!

Deguza

3
0 251
Question João Carlos Azevedo · Dec 21, 2022

Hi!
I have an issue when trying to generate an object when reading an XML file. All files I'll mention will be attached to this post as a PDF file, but it's really a ZIP one.
The XML file is used as a template to generate a PDF report through the JasperSoft Report API. I checked the file consistency, and it's all right. We are able to generate the PDF file with no issues. What we need to with Caché, is to read the XML file, correlate it to an object, so we can change properties from this file. The JasperSoft Studio and API capabilities are kinda lacking in a specific way, this is why we need to





2
0 647
Announcement Elena Berry · Jan 19, 2023

We are starting the countdown to our 30thGlobal Summit, at the Diplomat Beach Resort in Hollywood, Florida. Only 136 more days until you can connect with fellow InterSystems product users, engage with product develops and hear all about the trends, challenges and solutions of data management with our technology. 

Sign up for notifications today to be the first to register and see who our guest speakers will be! 

#GS23 #InterSystemsGlobalSummit #GlobalSummit23

1
0 335