Article Yuri Marx · Jan 16, 2021 3m read

Hi InterSystems Community!

The ObjectScript language of InterSystems IRIS has the ability to extend classes using a very interesting feature called XData.

It is a section in your class that can be used to create custom definitions to be used within the class itself and also externally.

To create one or more XData definitions for your class is very easy, see the example:

Class dc.Sample.Person Extends (%Persistent, %JSON.Adaptor, %Populate)
{

 

Property Name As %VarString;

 

Property Title As %String;

 

Property Company As %String;

 

Property Phone As %VarString;

 

Property DOB As %Dat
2
0 547
Announcement Olga Zavrazhnova · Jan 15, 2021

Hey Developers,

Gartner Peer Insights launched a new incentive for reviews and we are glad to announce it for you. If you have not reviewed InterSystems IRIS on Gartner yet, here is your chance to make it and get two prizes:

1. 🎁 Three months free access to exclusive Gartner research from Gartner Peer Insights:

Your Peer Insights Plus access will get you the most respected research across IT, allowing you to make better decisions. You’ll get regular email alerts on vendors and updates on markets. And you’ll be able to search reviews by topic, compare unlimited numbers of vendors, and personalize vendor shortlists.

2. 🎁 $25 VISA Card from InterSystems

How it works:

2
0 1172
Question Orlando Lagman · Jan 14, 2021

I created a csp that will capture image data from a html canvas element.  I created a button element to save the contents as a dataURL string from jpeg and make a server call.

the string is too long

I would appreciate any suggestions in saving the data into the server, currently just a global.

2
0 476
Question Simon Bijl · Jan 15, 2021

Hello to you all,

Strange  titel, so I'll explain better:

I now have IIS-server with a CSPGateway installed. This works fine. But I want to use a rest-service  (or another zen-page, whatever.) on another cache-server

So on IIS i have an application called CSP. (/csp) This contains the handler to map it to the CSPGateway. 
It has been configured to acces a cache-server (X) which will handle the request. But now I want, in this case, the request to be executed on another cache-server(Y).

I can add other servers in the CSP managementportal, (now it had only LOCAL and csp) but how will IIS know which

2
0 339
Question Lewis Greitzer · Jul 9, 2018

I would like to examine the contents of my OBX-5 field and not route the message if it contains alphabetic characters. I've tried various combinations of the Match and Contains functions, with no luck. Should I be using the COS ? operator or plaini regular expressions?

e.g.

OBX-5 Contains "\D"

OBX-5 Contains "?.A"

OBX-5 Contains "[A-Z]"

17
0 1694
Question · Jan 14, 2021

To develop simple applications, wouldn't the Caché database be too heavy? Or are there simpler and less complex versions that can serve in the same way?

3
0 284
Announcement Anastasia Dyubaylo · Jan 14, 2021

Hi Community,

2020 was full of great applications! 

Almost 400 apps have already been uploaded to InterSystems Open Exchange! And 200+ apps uploaded to our applications gallery in 2020!

We're so pleased to introduce the best Open Exchange developers and the most downloaded apps that you should definitely try!

 

Let's take a closer look at our heroes and remarkable apps:

0
0 340
Question Simon Bijl · Jan 12, 2021

Hello to all,
 

I created a form in React and submitted the data to a cache-Rest service.
On the local netwok it works just fine.

But when i deploy it on our webserver in order to acces it from the outside it won't work anymore beacuse the external address is a https address, and the call to the cache webserver is based on http.(http://srvdb23:57772/restacc/newOrder)

Resulting in the following error: Referrer Policy: strict-origin-when-cross-origin ( Chrome) 

How should i resolve this? How can I make this rest-service accessible for https?

Best regards,

Simon

10
0 649
Question Mathew Lambert · Jan 12, 2021

Does anybody know if there is an easy way to know if the execution of the command $System.SQL.PurgeForTable went well/wrong?

The documentation describes that a string is returned, but in fact there is a nice Quit "" in the code.

Maybe inside PurgeForTable^%apiSQL there is any process variable set when it goes well/wrong?

Thank you very much!

5
0 263
Question Nicky Zhu · Jan 7, 2021

Hi guys,

In our clients environment, multiple sources will connect to one DB (all through JDBC connections) and perform various operations. Sometimes they found some data was deleted without  reason.  Thus they want some feature like SQL Server Database Audit Specifications that can log who at what time with which IP deleted data in a specific DB.

I've checked IRIS Audit but I didn't  find feature about  that . How can we audit and log  delete  of a known DB? The deletions might be performed by delete statament or truncate table stattement.

Thanks.

5
0 684
Announcement Anastasia Dyubaylo · Jan 8, 2021
4
0 330
Question Phung Thoa · Nov 2, 2020

Hi all, By using VS code, I want to copy multiple files to local directory, then sync them to server, but I can't find where local directory is stored? In Atelier IDE, I could open a view of server and can copy the code to the project, then code is saved in the local directory. When I copy multiple files to the local directory -> choose sync in Atelier -> the code will be synchronized to the server How to do this from VS Code? Thanks!

14
0 981
Announcement Sam Schafer · Jan 13, 2021

Hello,

I'm happy to announce that there will be a training for CCR Tier 1 users soon!

Register now!

Course Name: InterSystems Change Control: Tier 1 Basics

When: March 1 - 5, 2021, 9am-1:30pm US Eastern Time (ET).

Where: Virtual Classroom. You will receive connection details shortly before class.

This course – consisting of 5 half-days – teaches Change Control Record (CCR) application users how to safely and efficiently progress code changes as well as changes made to interoperability components such as productions and data transformations.

0
0 252
Announcement Anastasia Dyubaylo · Jan 7, 2021

Hi Developers,

We're pleased to invite all the developers to the upcoming InterSystems Multi-model contest kick-off webinar! The topic of this webinar is dedicated to the Multi-model contest.

On this webinar, we will demonstrate the APIs for each data model in action.

Date & Time: Monday, January 11 — 10:00 AM EDT

Speakers:  
🗣 @Benjamin De Boe, InterSystems Product Manager
🗣 @Bob Kuszewski, InterSystems Product Manager - Developer Experience
🗣 @Evgeny Shvarov, InterSystems Developer Ecosystem Manager


2
0 293
Question Stefan Cronje · Jan 13, 2021

Hi,

I am investigating creating builds from TravisCI, which will pull the source from github.
This will also involve a code review process, pull request, etc.

It will be done in Multiple phases. The first one will not involve automated testing using TravisCI yet. It will only involve travisCI pulling the latest code from github and creating a release for testing(A deployment file in a format that can be loaded by Ensemble0)

What I want to know is: Is there a way or tool available to take the source files and create an XML file which can be used for deployment to Ensemble?

Kind regards,
Stefan

8
0 415
Article Yuri Marx · Jan 12, 2021 3m read

Hi Community,

In this article I compared the features of the main leaders in the ODBMS gartner quadrant - 2019. See the list sorted by number of existent features.

  1. InterSystems IRIS 2020.3 - 59 features (https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls)
  2. Oracle Database 21c - 54 features (https://docs.oracle.com/en/database/oracle/oracle-database/index.html)
  3. Microsoft SQL Server - 45 features (https://docs.microsoft.com/en-us/sql/sql-server/?view=sql-server-ver15)
  4. AWS Aurora - PostgreSQL - 34 features
4
1 651
Question Joe Schra · Jan 12, 2021

Hey Folks,

I am creating my first record map to import a .txt file and eventually create a message outbound. When I try to pull in the sample file I get:

ERROR #5005:

Cannot open file '/ens/mgr/interfacefiles/test/ECWBHS_HAWD_Surveys_20201222_1.txt'

SOURCE ELEMENT: %ZEN.Component.html (mapSample)

Any ideas as to why? I have the sample .txt file saved as shown in the available directory. From what I have seen the #5005 error means the file is not available?

1
0 268
Question Lee Cascio · Jan 6, 2021

Since I'm just starting to use this aspect of IRIS I can't tell if this is a bug or some kind of nuance.  If I run a single column query like this, I get results:

However if I try to retrieve using a DISTINCT or GROUP BY, I get no results:

And again except with a GROUP BY, with no results:

If I add in some other columns I still get no results HOWEVER, if I add in a date column, I now get results:

What am I missing here?  Is this by design and if so, what governs whether a return set is returned or not?  I did purge my query cache in case something was happening there but it did not fix this.

2
0 428
Article Renan Lourenco · Jan 12, 2021 2m read

Tiny web application that allows you to anonymize CSV files. Based on InterSystems IRIS®

Version:store/intersystems/iris-community:2020.3.0.221.0

Application

Sample CSV where Date of Birth and Sex will remain untouched, while the rest should be anonymized.

before

The application recognizes the header columns and allows the user to chose which ones to ignore.

demo

After processing.

after

Setup

Make sure you have Docker up and running before starting.

Option 1

Recommended in case you just want to get the application up and running.

docker run --name anonymizer --publish 9091:1972 --publish 9092:52773
0
0 353
Announcement Anastasia Dyubaylo · Jan 12, 2021
0
0 337
Article Peter Cooper · May 11, 2018 3m read

Index to Articles

Hi All

It's been 6 weeks since my original article sad
- - - - -but I have been busy on this project smiley

I have been looking at/thinking about a replacement for ZEN for around 12 months but only really started in depth 4 months ago.
Also been in IT for long enough that I can "get a feel" for a product/technology and make decisions accordingly without going into great detail. 
Any new technology has a learning curve and I don't want to waste time and effort on something that won't fly. 
And, as always, I am looking to minimise the learning curve as I want to concentrate on delivering business benefit. 

3
1 1051
Question Yone Moreno · Jan 12, 2021

Hello,

First of all thanks for your help,

We would need to get the list of all names, ports and types from the services listed in a namespace

We have read the following documentation:

https://docs.intersystems.com/latest/csp/documatic/%25CSP.Documatic.cls…

https://docs.intersystems.com/latest/csp/documatic/%25CSP.Documatic.cls…

In addition, we have read the following topics:

https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cl…

https://com

1
0 490
Discussion Eduard Lebedyuk · Jan 10, 2021
To start the year let's have a round of CodeGolf!

You know the drill. Shortest solution wins.

Print a size ascending range of Diamonds using the numbers 1 to 9, ranging from size 1 to size N, each diamond separated by a blank line.

A size 1 diamond should look like this, a single centered 1:

         1

With the size N=9 diamond looking like this:

         1
        121
       12321
      1234321
     123454321
    12345654321
   1234567654321
  123456787654321
 12345678987654321
  123456787654321
   1234567654321
    12345654321
     123454321
      1234321
       12321
19
0 622
Announcement Nikolay Solovyev · Jan 11, 2021

We released a new version of ZPM (Package Manager)

New in ZPM 0.2.10 release:

1) FileCopy

Added some improvements to already existing tag FileCopy

Example of module.xml


<?xml version="1.0" encoding="UTF-8"?>
<Export generator="Cache" version="25">
  <Document name="test-binary.ZPM">
    <Module>
      <Name>test-binary</Name>
      <Version>0.0.1</Version>
      <Packaging>module</Packaging>
      <SourcesRoot>src</SourcesRoot>
      <FileCopy Name="lib" Target="${libdir}my-lib"/> <!-- Copies content of lib folder to target -->
      <FileCopy Name="somefile.jar"
2
0 351