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:

Body: Long url

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-com

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:

localhost:52

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.

I developed iri

0
0 297
Article Kurro Lopez · Feb 4, 2023 2m read

Usualy, if you want to deploy a solution, you need to add the items, configure your lookup tables and default configuration manually. 
It's okay if you have all the permissions and privileges to perform these actions. If you want to deploy to a client's production server, and you don't have the permissions, you need to indicate in a document ALL the steps that the deployment manager has to perform. 

0
0 359
Article Andreas Schneider · Jan 2, 2022 3m read

The last days I've work with the great new feature: LOAD DATA With this post I would like to share my first experiences with you. The following points do not contain any order or other evaluation. These are only things that I noticed when using the LOAD DATA command. It should also be noted that these points are based on the IRIS Version 2021.2.0.617 which is a preview release. So it may be that my observations do not apply to newer IRIS versions. But maybe they are helpful for others.

1) The file path is on server side

I have done my first tests via JDBC. The first trap I stumbled into: The



5
2 1253
Question Chris Pursey · Jan 31, 2023

We have created a number of REST adapters that extend %CSP.REST and these have been working fine.  However, we are now facing a problem with a new one where very large XML documents are being posted.  This is the pattern we are following:

Set inMsg = %request.Content.Read()

Set tSC = ##class(Ens.Director).CreateBusinessService("Epro_ItkHttp",.tBusinessService)

Set tSC = tBusinessService.ProcessInput(inMsg, .tBusinessServiceOutput)

However, when the %request is particularly long, it is being truncated, and working with %XML.Reader then fails in the business service class.

I believe the cal

4
0 613
Question Dmitrij Vladimirov · Feb 3, 2023

When requesting /MDX2JSON/PivotVariables/Patients?Namespace Patients shoud be passed to a method but its not. When argument passed directly into the method it works.

<Route Url="/PivotVariables/:Cube" Method="GET" Call="WritePivotVariablesForCube"/>

Has something changed in IRIS and this syntax is deprecated, or is there a bug and the colon is ignored? What could it be?
This question is continuation from https://community.intersystems.com/node/534811

1
0 222
Question Edoeard Kroetkov · Jan 23, 2023

I have code hier and trying to view diacrit character

Class Test.REST.Services Extends EnsLib.REST.Service
{

Parameter ADAPTER = "EnsLib.HTTP.InboundAdapter";

Parameter EnsServicePrefix = "^TEST";

XData UrlMap
{
<Routes>
<Route Url="/dio/:Resource" Method="GET"     Call="getDio" />
</Routes>
}

Method getDio(pInput As %Library.AbstractStream, Output pOutput As %Stream.Object, pResource As %String) As %Status
{
    
        set status = $$$OK
        do pOutput.SetAttribute("ResponseCode","200")
        set messageBuffer = "{""text"":""Patiënt""}"
        do pOutput.Write(messageBuffer)
        do pOutp

4
0 374
InterSystems Official Fabiano Sanches · Dec 16, 2022 1m read

Early Access Program (EAP) is a way to to deliver specific features early to a group of people who will test and provide feedback on that feature.

One of those EAPs is about the the discontinuation of the Apache web server installation (a.k.a. NoPWS) from IRIS product installers. If you're interested in this topic and want to test it, the way to register is to send an email to nopws@intersystems.com. Use this same email for any other feedback.

Once you get a confirmation email, you'll see the EAPs you have access in the Evaluation Services website. You must log in to see the content.

So, af

enlightened

2
1 694
Article Robert Cemper · Jan 23, 2023 2m read

In general Global Streams are data objects embedded in Classes / Tables.
Using and viewing them with SQL is normally a part of the access to the containing tables.

SO WHAT?

During debugging or searching for strange or unexpected behavior there could be the need to 
get closer to the stored stream. No big problem with direct access to Globals with SMP or Terminal.
But with SQL you are lost.
So my tool provides dynamic access to Global Streams wherever you may need this
Special thanks to  @Oliver Wilms  for the inspiration for this tool.    

1
1 610
Article Robert Cemper · Jan 30, 2023 2m read

The similarity between JSON objects + arrays and Globals in IRIS or Caché is evident.
With small and medium size JSON objects navigation across %Dynamic Objects is comfortable.
But with large and/or deep cascaded objects it becomes a challenge.

The presented tool offers 3 variants

  • loading an already existing %Dyamic object or Array into a global of your choice
  • loading a %Stream containing a JSON object into a global of your choice
  • loading an external File containing a JSON object into a global of your choice
1
2 350
Question Smythe Smythee · Nov 14, 2022

Hi Community,

I am configuring new SSL Configuration for Gmail (For sending errors to gmail in ensemble production) by following the below steps.

Step1:

Step2:Giving the server address smtp.gmail.com

Step3:Giving the port number , I have tried giving 465,587,25 as port number still is not connecting 

Can anyone please tell me where i am doing wrong on configuration?

Thanks,

Saroja.A

7
0 854
Question William Glover · Jan 10, 2023

   InterSystems.Data.IRISClient.IRISException (0x00000000): ERROR #5002: ObjectScript error: <REMOTE EXECUTE INVALID WRITE>Load+20^%apiOBJ
   at InterSystems.Data.IRISClient.ADO.IRIS.ClassMethodStatusCode(String className, String methodName, Object[] args)
   at Setup.core.CacheCRUD.RunDeploymentClass() 

Throwing this error when calling  the ##class(%Studio.Project).InstallFromFile() remotely.

The method works when ran through studio, but not when accessing via ADO.Net, seems to be a limitation on the access to the location of the file, but if I make it accessible by anyone in windows i

3
0 325
Question Tom Cross · Jan 30, 2023

I have a question for people currently in the community who support TrakCare implementations. 

Are you all currently working through the migration from Crystal/Zen over to Logi Reports? 

What are you plans for the Zen reports you can't migration off for example the HTML letter template? 

I have spoken with a few people regarding this topic but starting to get concerned if there is a call in the near future to decommission ZEN/ 

1
0 254
Discussion Bob Kuszewski · Jan 31, 2023

We've added a new channel to the Developer Community Discord Server, #platforms.  This is a good place to discuss issues related to Operating Systems, CPU architectures, and Containers supported by InterSystems products.

To kick things off, let's talk CentOS.

CentOS has been supported to give developers a free-to-use equivalent to Red Hat Enterprise Linux for IRIS development.  As you're probably aware, Red Hat made significant changes to CentOS which have resulted in it being significantly less stable than RHEL.  Since Red Hat has free development licenses available through their developer

0
0 201
Question Matthias Röttger · Jan 26, 2023

Hello all, 
I am facing a little issue with line separators.  I export classes with $SYSTEM.OBJ.Export to the file system, but I'm on a Linux (docker) environment and he uses LF. 

Is it somehow possible to change the line separator for the export or in general?

Thanks in advance!

Bests, Matthias

6
0 414
Question Virat Sharma · Jan 30, 2023

Hi All,

I want to run an SQL like below

Select ID,Rollno,Marks,Name,Section,Teacher from Marks left outer join Student on Marks.StudentID=Student.ID

Now, the Student.ID is having the encrypted value which is not matching with Marks.StudentID (as this is clear value).

I can get the clear value using encrypted value as follow

^StoreValue("EncryptStudentID",Student.ID)=$LB("123"). That 123 is the clear Student.ID which I need to match in SQL query (ON clause).

Now I Need to fetch the data from sql query matching both clear values. Something like this

Select ID,Rollno,Marks,Name,Section,

2
0 236
Question Virat Sharma · Jan 30, 2023

Hi All,

I have a below query for which I need help.

I have a persistent class User.Cars.cls. The properties of this class is mapped through Global mapping with global (^CAR(Date,CarSerialno,Seq)).

Property CarNumber as %String (TRUNCATE=1) [SqlFieldName= CAR_Number];

Mapping of 5th Piece of ^CAR global to CarNumber property.

For e.g.^CAR(Date,CarSerialno,Seq)=1^2^3^4^BMW 4567^6^7

To increase the security we have encrypted the database. 5th Piece is also encrypted in global (New value after encryption: 'ASAD=4367' through some tool technique).

Now I want to decrypt this value in below se

1
0 258