Question
· Sep 29, 2021
Locking / unlocking

Hi.

What is the best/right way to unlock the object in ObjectScript after the lock was acquired by %OpenId class method? Setting the opened object to null (Set object="") doesn't release the lock.

Regards,

Matjaž

0 19
0 712

We're looking to create a quick and simple test to see if all firewalls are open on 1972 between a linux based web server VM and a VM running InterSystems IRIS. Does anyone have any ideas for a quick command that can be run from UNIX console that will provide confirmation that traffic is able to get to 1972 on an IRIS machine?

BTW - I don't think it makes any difference but the IRIS machine is running Windows

0 19
0 542

Ran into an issue with our upgrade from HealthShare Health Connect 2018.1.3 to IRIS HealthShare Health Connect 2022.1, that I thought I would reach out about, I already have a ticket open with WRC and started a chat on Discord. We have a couple of MS SQL tables that I have setup as Linked Tables within Cache to query NPI, Patient Account Information, Visit information, etc... When we upgraded last week we found that within a day or even a half a day that we were having problems with our JDBC connections.

0 19
0 656
Discussion
· Jan 10, 2021
Code Golf: Diamonds
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:

2 19
0 513

Hi Developers!

Often when we develop some library, tool, package, whatever on InterSystems ObjectScript we have a question, how we deploy this package on the target machine?

Also, we often expect that some other libraries already installed, so our package depends on them, and often on some particular version of it.

When you code on javascript, python, etc the role of packages deployment with dependency management takes package manager.

So, I'm pleased to announce that InterSystems ObjectScript Package Manager available!

13 19
4 3.2K
Discussion
· Sep 28, 2020
%Status usage in ObjectScript

Hi developers!

Want to discuss with you the case of %Status.

If you familiar with ObjectScript you know what is it. I'd love to hear the history of the case why it had appeared in ObjectScript but it turned out that almost every system/library classmethods return %Status and there is a whole set of tools to deal with it.

What is does it gives you the responsibility to check the value or %Status of every system method you call.

E.g. if you save the data of the persistent class, you should never call like this:

do obj.%Save()

you need to call:

set sc=obj.%Save()

if $$$ISERR(sc) do // something or quit.

1 19
0 1.1K

Hi,

I want to access a Stored Procedure in a remote SQL Server Database. I am quite new to Object script.

The stored procedure has 3 parameters: 2 datetime parameters and 1 integer.

Which is the best way to do that? I'm wondering if I can use the link stored procedure feature inside object script or some SQL statement in Object Script.

This SP returns a set of rows which I want to read, transform and save in a persistent class.

Thanks in advance,

0 18
0 3.1K

Hi guys!

As you know there are two (at least) ways to get the stored value of the property of InterSystems IRIS class if you know the ID of an instance (or a record).

1. Get it by as a property of an instance with "Object access":

ClassMethod GetPropertyForID(stId As %Integer) As %String

{

set obj=..%OpenId(stId)

return obj.StringData

}

2. Get it as a value of a column of the record with "SQL access":

0 18
0 1.1K

Hi Developers,

The annual competition for InterSystems IRIS developers is fast approaching!

We're super excited to invite you all to join the Grand Prix contest for building open-source solutions using InterSystems IRIS data platform!

🏆 InterSystems Grand Prix Contest 2023 🏆

Duration: June 12th - July 9th, 2023

Prize pool: $26,000

13 18
2 2K
Discussion
· Jan 26, 2024
Code Golf: Multi-Tap technique

Multi-tap or multi-press is the name given to the historic technique of writing SMS on the first mobile phones with a keyboard of 10-12 numeric keys.
For example, to type LOL you need to press 5 three times, 6 three times and 5 three times again.
Your task is to write a function that takes a string as input and returns the repeated digits associated with each character according to the multi-tap system.

5 18
1 430

Native API , IRIS 2019 regression vs Cache .Net provider

1. checking the native API, with .net provider, from IS docs, I realize,

that it is not possible to wrap objectSricpt Class with .NET (C# for example) pure Class with it's methods/properties

and make pure instance syntax of: new myNetClass - as wrapper of irisClass.

as I realize, you can run .Net Class , only with .Invoke or iris.ClassMethodVoid("class.name","method")

such syntax, cannot execute event driven on proprety change, let say, with it's build in mechanizm in .Net

0 18
0 303

When I try to run Interoperability -> Interface Maps in 2022.1 on a very large namespace, I keep getting timeout errors. Even though I add filtering by Category, Text Search, etc... it still errors out no matter what. However if it is ran in one of our smaller namespaces it runs just fine. WRC told us the namespace is too big, however that should not matter on how many services, processes, and operations you have running.

1 18
0 677
Announcement
· Mar 27, 2020
Give it a try on SQLBuilder tool

SQLBuilder is a flexible and powerful SQL query string builder for InterSystems IRIS,

With SQLBuilder you have nice and clean object oriented methods, instead of having to use concatenation and substituition to generate dynamic queries.

A Dynamic SQL without SQLBuilder

A Dynamic SQL with SQLBuilder

11 18
5 674

Hi folks!

How can I change the production setting programmatically?

I have a production that is a solution that uses some api-keys, which are the parameters of Business Operations but of course cannot be hard-coded into the source code.

E.g. here is the example of such a production that runs a connection of Telegram and ChatGPT.

And it can be installed as:

zpm "install telegram-gpt"

But now one needs to setup the key manually before using the production, having the following setting:

I'd like to set up it programmatically so one could install it as:

zpm "install telegram-gpt -D Token=sometoken"

How can I make it work?

0 18
0 733

Hi contestants!

We've introduced a set of bonuses for the projects for the Interoperability Contest 2021!

Here are projects that scored it:

Project

Basic Auth

Bearer/JWT

OAuth

Authorization

Auditing

Encryption

Docker

ZPM

Online Demo

Code Quality

Article on DC

Video on YouTube

Total Bonus

Nominal 2 3 5 2 2 2 2 2 3 1 2 3 29
appmsw-forbid-old-passwd 2 2 2 1 2 9
isc-apptools-lockdown 2 - - 1 2 5
passwords-tool 2 2 1 2 7
API Security Mediator 2 2 2 2 2 3 1 6 3 23
Audit Mediator 2 2 2 1 4 3 14
iris-disguise 2 2 1 4 3 12
iris-saml-example 5 2 2 2 3 1 2 17
Server Manager 3.0 Preview 2 4 6
appmsw-dbdeploy 2 2 1 2 7
Data_APP_Security 2 5 2 2 2 2 3 1 4 3 26
IRIS Middlewares 2 1 3
TimeTracking-workers 2 2 1 5
zap-api-scan-sample 2 1 4 3 10
https-rest-api 2 2

Please apply with your comments here in the posts or in Discord.

2 17
0 426
Article
· May 25, 2016 5m read
Random Read IO Storage Performance Tool

New Tool Available

Please see PerfTools IO Test Suite for a later version of the Random Read IO tool.

Purpose

This tool is used to generate random read Input/Output (IO) from within the database. The goal of this tool is to drive as many jobs as possible to achieve target IOPS and ensure acceptable disk response times are sustained. Results gathered from the IO tests will vary from configuration to configuration based on the IO sub-system. Before running these tests ensure corresponding operating system and storage level monitoring are configured to capture IO performance metrics for later analysis.

14 17
3 3.7K