Question
· Jun 29, 2020
Get Property MaxLen

Set cdef = ##class(%Dictionary.ClassDefinition).%OpenId(table)
Set count = cdef.Properties.Count()
For i = 1:1:count {
Write cdef.Properties.GetAt(i).Name, " ", cdef.Properties.GetAt(i).Type, "", <MY QUESTION>,!
}

How can I do to get maxlen?

2 8
3 617

While the integrity of Caché and InterSystems IRIS databases is completely protected from the consequences of system failure, physical storage devices do fail in ways that corrupt the data they store. For that reason, many sites choose to run regular database integrity checks, particularly in coordination with backups to validate that a given backup could be relied upon in a disaster.

16 8
9 2.2K

In the wew versions of IRIS the Studio is going to be deprecated. In the Studio when editing classes there is an option to add information at package level, with the option "Package Information" that shows this dialog:

In VSCode there is the option to add/edit this package information? If no, how can one add/edit this information without the Studio?

Thanks.

0 8
0 356
Question
· Dec 19, 2019
%New error handling

Hi,

On a persistent class, I have defined an %OnNew method that validate some properties with appropriate status code for each kind of error.
Question is: how do you catch the specific error when %New is called on this class?

Surrounding %New method with a try-catch not seems to work.

Thanks

0 8
0 605

Hi Community!

We're pleased to invite you to the "Online Meetup with IRIS Programming Contest Winners" on April 3rd at 11:00 EDT!

It's a virtual Meetup with some of the winners of the past InterSystems IRIS Online Programming Contest.

What awaits you at this virtual Meetup?

  • Our winners bios.
  • Short demos on their applications.
  • A short interview with all the winners about the past contest. Plans for the next contests.

4 8
0 389

Hi all

I've been looking into how to convert some images with IRIS and saw some recommendations on the forums around using image magick.

However I can't seem to get this working using ZF100 and on windows server and I'm wondering if I'm missing something really obvious as I've not used IRIS to call third party applications before.

If I run via a Windows CLI on the server, it works fine, e.g:

magick "D:\1221701739_20190716134351965_1_0.jpg" -resize 640x480 "D:\1221701739_20190716134351965_1_TEST.jpg

0 8
1 444

Hey Developers,

Planning to attend the Focus Sessions of InterSystems Virtual Summit 2021? Don't miss the session dedicated to InterSystems Developer Community, Open Exchange & Global Masters!

⚡️ "Win. Win. Win with InterSystems Developer Ecosystem" VSummit21 session ⚡️

🎁 Note: All session attendees get a special prize.

Speakers:
🗣 @Anastasia Dyubaylo, Community Manager, InterSystems
🗣 @Lena Evsikova, Product Owner of InterSystems Open Exchange
🗣 @Olga Zavrazhnova, Customer Advocacy Manager, InterSystems

7 8
0 760

Is there a straightforward workflow in VS Code for moving a class from one namespace to another on the same server? With Caché/IRIS Studio, it was a (sort of) simple export/change namespace in file menu/import operation. But in VS Code it's not obvious (to me, at least).

I can add multiple namespaces to a workspace, but when using isfs:// paths I see only a "Download" option and no "Upload" or "Import/Compile." When I'm navigating the local file tree, I see Import options, but no way to select the namespace into which I want to import.

1 8
0 1.8K
Question
· Feb 11, 2022
Driver odbc performance

Hello,

I'm using the InterSystems Iris odbc driver (DriverODBCVer=02.10) to get data from Iris table but it is slow.

Is there any options to improve performance ? Increase the packet size ?

Change to do in odbcinst.ini / odbc.ini to make it quicker ?

Thanks

0 8
0 649

HI ! I'm working on a caché upgrade to IRIS.

in some abstration cls classes, to get a property was used $METHOD(..Obj, propertyName_"Get").
On Caché 2018, had as a return property value, if the property does not exists, an exception of type <PROPERTY DOES NOT EXIST> throwed

Now, on IRIS 2022.1, will always be throwed an exception of type "<METHOD DOES NOT EXIST>".

0 8
1 434
Article
· Feb 23, 2023 15m read
IoT with InterSystems IRIS

IoT (Internet of Things) is a network of interconnected things, including vehicles, machines, buildings, domestic devices or any other thing with embedded TCP/IP remote connection available, allowing it to receive and send execution instructions and data. Each thing provides one or more services to the IoT network. For instance, smart light bulbs provide services of turning off and turning on the lights; smart air conditioners maintain the environment temperature; smart cameras send notifications when capturing movement.

8 8
3 828
Article
· Dec 7, 2019 1m read
About %objlasterror

%objlasterror is a useful reference to the last error.

Every time $$$ERROR is called, %objlasterror is set to a result of this call.

It's important in cases where you want to convert exception to status:

Try {
   //  quality code
} Catch ex {
   Set sc = $g(%objlasterror, $$$OK)
   Set sc = $$$ADDSC(sc, ex.AsStatus())
}

Because AsStatus calls $$$ERROR under the wraps, the order is important, first you need to get %objlasterror and convert exception after that.

7 8
3 1.4K
Article
· Jul 8, 2020 7m read
Tips for debugging with %Status

Introduction

If you're solving complex problems in ObjectScript, you probably have a lot of code that works with %Status values. If you have interacted with persistent classes from an object perspective (%Save, %OpenId, etc.), you have almost certainly seen them. A %Status provides a wrapper around a localizable error message in InterSystems' platforms. An OK status ($$$OK) is just equal to 1, whereas a bad status ($$$ERROR(errorcode,arguments...)) is represented as a 0 followed by a space followed by a $ListBuild list with structured information about the error. $System.Status (see class reference) provides several handy APIs for working with %Status values; the class reference is helpful and I won't bother duplicating it here. There have been a few other useful articles/questions on the topic as well (see links at the end). My focus in this article will be on a few debugging tricks techniques rather than coding best practices (again, if you're looking for those, see links at the end).

15 8
11 2.3K
Question
· Jun 24
Using %Net.WebSocket.Client

Hi Guys,

I'm trying to use %Net.WebSocket.Client to collect data from a sever,

and part of that I needed to implement Two classes (SX3.Production.HTTP.AdvCredenials & SX3.Production.HTTP.AdvListener) as below for the purpose of Credentials & EventListener properties,

0 8
0 56

Hi All,

I'm being asked if I can set up a AWS EC2 containerised version of IRIS and a separate AWS EC2 installation of Apache to serve IRIS web files.

Creating the Apache EC2 and containerised IRIS EC2 is the simple bit but getting them both to talk to each other does not seem quite so simple and I cannot find any documentation to describe how this can be achieved.

Has anyone else managed to achieve this?

0 8
0 525

Hi Community!

We're pleased to invite all the developers to the upcoming "Enterprise-grade Source Code Management" webinar on May 21st at 11:00 AM EDT.

You will learn how Deltanji from George James Software can control large scale InterSystems applications throughout the development, testing, deployment and maintenance cycle.

Presenters:
@George James, CEO, George James Software
@John Murray, Senior Product Engineer, George James Software

What is Deltanji and what will be demonstrated at this webinar?

2 8
0 543
Question
· Nov 7, 2022
Stream Compression

Does anyone have insight into how the Stream Global Compression works in 2022? I'm particularly interested in the XDSb repository on the Edges. As I understand it anything new will be compressed. Is there a compression method that is used that can be utilized by other code? How are the retrievals aware that the contents are compressed in order to de-compress them?

0 8
0 708