Article Dmitry Maslennikov · Dec 2, 2021 3m read

How to check if the password is strong enough, so it will not be cracked very fast? And how to make a strong password?

I've developed a tool that may help with this. You can find it on OpenExchange. Install it with zpm

zpm "install passwords-tool"

This module will install just one class caretdev.Passwords, which contains a few helpful methods in it

Secure Password

To get a secure password it's usually enough to use letters in upper and lower case, digits, and special symbols, and it should be at least 8 symbols long.

4
0 569
Question Clayton Lewis · Jan 6, 2022

I'm looking for guidance on how best to normalize Height and Weight values to standard units. For example, to accept height as Feet/Inches, Inches, and Centimeters from various sources, but always display Feet/Inches in Clinical Viewer, etc.

If anyone has done this before, please share details of how it was implemented. Things I'd be specifically interested in:

  1. Did you normalize on ingestion into the Edge Gateway, or on consumption by an Access Gateway or API?
  2. Using what configuration settings, code hooks, callbacks, etc.?
  3. How did you implement recognition of the source coding
2
0 451
Discussion Sylvain Guilbaud · Feb 21, 2022

Let's consider you would like to efficiently store your historical data in a similar structure than the one used for your current data, but without sharing the same physical storage (ie : not in the same global). What is the most efficient way to do it ?

Below a simple class of your current data : 


Class data.current.person Extends (%Persistent, %Populate)
{

Parameter DEFAULTGLOBAL = "^on.

9
0 520
Article Robert Cemper · Feb 22, 2022 2m read

If one of your packages on OEX receives a review you get notified by OEX only own YOUR package.  The rating reflects the experience of the reviewer with the status found at the time of review.  It is kind of a snapshot and might have changed meanwhile.   
New with this edition:
Reviews by other members of the community are marked by * in the last column.

2
0 253
Article Evgeny Shvarov · Nov 12, 2019 3m read

Hi Developers!

Suppose you want to create your ObjectScript library to be distributed via ObjectScript Package Manager. And there is an obvious question: what is the naming convention on the packages and class names?

Naming packages and classnames

There is already some accepted practice with package managers and we will follow the best practices in this field. The most reasonable and simple looks the approach with having company as the first package then project as the second and then classes and subpackages of the project.

6
2 1150
Article Evgeny Shvarov · Feb 19, 2022 2m read

Hi developers!

As you probably noticed in IRIS 2021 the names of globals are random.

And if you create IRIS classes with DDL and want to be sure what global was created you probably would want to provide a name.

And indeed you can do it. 

Use WITH %CLASSPARAMETER DEFAULTGLOBAL='^GLobalName' in CREATE Table to make it work. Documentation. See the example below:

11
0 717
Article Yuri Marx · Dec 3, 2021 7m read

Creating REST API using InterSystems ObjectScript is very easy, but some recipes can help you into this process:

1) To create your REST API extends %CSP.REST and Go to System Administration > Security > Applications > Web Applications > Click the button Create New Web Application and set the Name, REST Dispatch Class with your package and classname and choose the Allowed Authetication Methods. See this example:

 


Edit Web Application

2) Configure your REST API using ZPM configuration. To do this follow this sample (watch the tag <CSPApplication>):

 


ZPM Code to Create REST API

<?
2
7 1929
Article Muhammad Waseem · Feb 22, 2022 5m read

Hi Community,

This post is a introduction of my openexchange iris-python-apps application. Build by using Embedded Python and Python Flask Web Framework
Application also demonstrates some of the Python functionalities like Data Science, Data Plotting, Data Visualization and QR Code generation.

image

 

 Features

  •  Responsive bootstrap IRIS Dashboard

  •  View dashboard details along with interoperability events log and messages.

  •  Use of Python plotting from IRIS

  •  Use of Jupyter Notebook

  •  Introduction to Data Science, Data Plotting and Data Visualization.

  •  QR Code generator from python.

1
0 6808
Article Robert Cemper · Jan 30, 2022 2m read

If one of your packages on OEX receives a review you get notified by OEX only on YOUR package.
It reflects my experience with the status I found at the time of my review.
It is kind of a snapshot and might have changed meanwhile.

5
0 254
Question Carl Emberger · Feb 17, 2022

In the class HS.Util.Zip.Operations the OnInit method does a get value for ZipUtility, ZipCommand, UnZipCommand.

What is not clear in documentation is where/how those key/values are set.  Any assistance would be appreciated.

Method OnInit() As %Status
{
                If (##class(HS.Registry.Config).GetKeyValue("\ZipUtility\ZipCommand")="") || (##class(HS.Registry.Config).

2
0 547
Article Murray Oldfield · Nov 29, 2016 20m read

This post provides guidelines for configuration, system sizing and capacity planning when deploying IRIS and IRIS on a VMware ESXi. This post is based on and replaces the earlier IRIS-era guidance and reflects current VMware and InterSystems recommendations.

Last update Jan 2026. These guidelines are a best effort, remember requirements and capabilities of VMware and IRIS can change.

I jump right in with recommendations assuming you already have an understanding of VMware vSphere virtualization platform.

1
6 7391
Article Sergey Mikhailenko · Feb 22, 2022 2m read

Hello everyone. I present this project to the contest. The export module is essential in many of my projects and is often used in all my product servers.

I have implemented various scenarios in the invoke attribute initialization module, both maximalistic with many additional projects to demonstrate in GCR , and minimalistic to install natively in production instance

zpm "install appmsw-sql2xlsx -Dzpm.demo=none"

To demonstrate the possibilities, I used the fileserver and csvgen projects.

0
1 449
Announcement Olga Zavrazhnova · Feb 22, 2022

Hi Community, we continue to gather feedback about Data Loading & Packaging. In particular, we're interested in hearing your impressions on some of the new capabilities added with InterSystems IRIS 2021.2  We'll be using this feedback to improve InterSystems IRIS, so please feel free to share any details and feedback:

>> Link to the survey (14 questions, 5 min) <<

Note: this is the same survey we already published during the contest, on Global Masters and Discord. If you already participated, you don't have to do it again. Thank you for the feedback! 

0
0 198
Article Evgeny Shvarov · Feb 19, 2022 2m read

Hey developers!

Sometimes we need to insert or refer to the data of classes directly in globals.

And maybe a lot of you expect that data structure of global with records is:

^Sample.Person(Id)=$listbuild("",col1,col2,...,coln).

And this article is a heads up, that this is not always true, don't expect it as granted!

1
0 483
Question Renato Araujo · Feb 20, 2022

Hi all,

I am trying to use a %Status property on some of my Response classes. If the execution of a service goes wrong, I set the %Status property on Response with the value $$$ERROR($$$GeneralError, "pre-defined error message"). 

When I check the visual trace for this message and look for the %Status (property "status_code" on the image), it is displayed like this:

If I select to display the Body of the Response, I get the 'readable' form of %Status:


According to the documentation, this is expected as %Status properties are encoded in base64 during Projection to XML.

1
0 409
InterSystems Official Bob Kuszewski · Feb 9, 2022

UPDATE:  Developer Preview 7 has been released.

Update 7 includes a number of stability improvements over previous updates and support for support for all of the planned 2022.1 features.  If you notice any problems at all, now's the time to let us know.  The docker pull commands below have been updated with the latest build numbers.  Enjoy!

Developer Preview releases are now available for the 2022.1 version of InterSystems IRIS, IRIS for Health, and HealthShare Health Connect.

As this is InterSystems' first developer preview release, let's take a moment to describe what these are.  The developer preview program enhances the previous IRIS preview program with approximately bi-weekly releases that add features as they are ready.  This allows us to get feedback on capabilities and enhancements as they're available.  You'll see below a list of enhancements that are targeted for 2022.1, which are not included in the first developer preview.  Look for those over the coming weeks. 

We are eager to learn from your experiences with this new release ahead of its General Availability release. Please share your feedback through the Developer Community so we can build a better product together. 

InterSystems IRIS Data Platform 2022.1 is an extended maintenance (EM) release. 2022.1 includes the many important new capabilities and enhancements have been added in 2021.2, the continuous delivery (CD) release, since 2021.1, the previous EM release. Please refer to the release notes for 2021.2 for an overview of these enhancements.

9
0 1554
Question Token Ibragimov · Feb 18, 2022

i have create rest api service. Trying to get value from post request:

{   "UserName": "Tom",  "UserID": 123 }

here is my class

Class User.REST Extends %CSP.REST
{ XData UrlMap [ XMLNamespace = "http://www.intersystems.com/urlmap]
{
<Routes>
<Map Prefix="/restforms" Forward="Form.REST.Main"/> <Route Url="/test" Method="GET" Call="test"/>
<Route Url="/CreatePost" Method="POST" Call="post" Cors="true"/>
</Routes>
}

ClassMethod post() As %Status
{
    set sc = $$$OK
    set req = %request.content
    set userName = req.

3
0 825
Question José Ademar de Oliveira Junior · Feb 4, 2022

Hello Programmers,
I'm trying to use Intersystems IRIS Database with
Quarkus, but I'm getting problems making it work
does anyone knows how to set up the Intersystems IRIS Database
on Quarkus ?

I did that on my pom.xml  and also I added the jar
hibernate-iris-1.0.0.jar and intersystems-jdbc-3.2.0.jar but it's not working 

<dependency>
            <groupId>com.intersystems</groupId>
            <artifactId>intersystems-jdbc</artifactId>
            <version>3.2.0</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/src/main/resources/intersystems-jdbc-3.2.0.

17
0 786
Question Arturo Masero · Feb 17, 2022

Hello fellows, I need you wisdom.

In my organization we code in ObjectScript and .int everyday. When I joined nobody knew barely nothing about classes and their use was almost only for storage definition purpose. During my self-learning in caché I discovered the object oriented programming and class developing was possible in caché and started to code in .cls . Being something self-taught, I may have some basic doubts I'd have missed in my documentation readings.

9
0 794
Question Joost Platenburg · Feb 17, 2022

LS,

Is there a samples on how to create the OAuth2 server from code? Now trying:
 

set oauth2server = ##class(OAuth2.Server.Configuration).%New()
set oauth2server.Key = "singleton"
set oauth2server.IssuerEndpoint = "https://localhost:52773/oauth2"
set oauth2server.Description = "MedMij Authorization Server"
set oauth2server.AccessTokenInterval = 900
set oauth2server.AuthorizationCodeInterval = 900
set oauth2server.RefreshTokenInterval = 3600
set oauth2server.SessionInterval = 3600
set oauth2server.ClientSecretInterval = 0
set oauth2server.SupportedScopes = "ikp-scope"
set oauth2server.
2
0 459
Question Gabriel Vellasques Tureck · Feb 1, 2022

I am using a Gradle Project for testing APIs, but I need to connect to the database.

I already put this on the dependencies:

And I'm trying to use this way:

But I'm keep getting this error: java.lang.ClassNotFoundException: com.intersys.jdbc.CacheDriver  

Is there any place that I can put a JAR file? Because the project has no lib folder (I already tried to add it, but it doesn't work).

6
0 774