Article Eduard Lebedyuk · Aug 3, 2020 3m read

InterSystems IRIS currently limits classes to 999 properties.

But what to do if you need to store more data per object?

This article would answer this question (with the additional cameo of Community Python Gateway and how you can transfer wide datasets into Python).

The answer is very simple actually - InterSystems IRIS currently limits classes to 999 properties, but not to 999 primitives. The property in InterSystems IRIS can be an object with 999 properties and so on - the limit can be easily disregarded.

13
1 879
Question Dmitrii Baranov · Jul 31, 2023

These two articles describe how to extend business components with additional properties:

1. https://community.intersystems.com/post/how-customize-ensemble-settings

2. https://community.intersystems.com/post/creating-custom-captions-intero…

I have one more question about drop-down editor. Is it possible to pass to its URL the value of another business component property, not just @productionId? Something like: 

class MyOperation extends (EnsLib.REST.Operation, Ens.Host)

{

Property MyProperty as %String;

Property MyAnotherProperty as %String;

Par
1
0 245
Question Dmitrii Baranov · Jul 19, 2023

Hello,

I want to add a couple of properties to a custom Transform class to give the user the ability to edit its properties directly in the Business Process visual editor. It can be easily done with other Production components, but I can't find in the documentation how to do the same with my Transform. Is it possible?

And another question is about how to use the 'aux' parameter of the DataTransform.Transform method if my component is non-visual?

4
0 305
Question Phil Burkhalter · Jul 28, 2023

I like to add documentation to the top of every class I write. Is there a way to modify or create a template that would automatically add the lines below to the top of the class? I primarily use Studio IDE but would like to be able to do this using VS Code as well. 

/// Organization:
/// Version 1.0
/// Author/Co-author:
/// Project: 
/// Date: 
/// Description: 
/// Change Log:
/// Notes:

Thanks. 

4
0 297
Question Ephraim Malane · Jul 31, 2023

Hi Community

I am using a standard DTL for Allergy Intolerance but it shows codes for Category and Severity Columns on cliinical viewer.

I have copied the standard DTL to my custom folder and I want to modify it to show descriptions for these two columns but I don't know how to do it.

Please see the below DTLs for Category and severity and advise how I can change them to get descriptions.

Category DTL section

<if condition='source.category&apos;=""'>
<true>
<if condition='source.category.Count()>0'>
<true>
<assign value='##class(HS.FHIR.DTL.Util.Lookup).Code("vR4","SDA3","allergy-intol

5
0 210
Question Minn Bo Bo · Jul 27, 2023

I have been successfully able to transform hand-written medical test results documents to HL7 ORU_R01 v2.x, then to SDA, which will be trasformed to FHIR or C-CDA.
However, I have a category of documents which contains reference range in multiple date formats, which are measured for each gestation period. 
For example, below is one of the documents.
 

Analyte: HCG, Value: 1968, Unit: mlU/mL 

Reference Range:
Week of gestation: 3, Range: 5.8-71.2
Week of gestation: 4, Range: 9.5-750
Week of gestation: 5, Range: 217-7138
Week of gestation: 6, Range: 158-31795


How do I put the reference ranges into

4
0 386
Article Ikram Shah · Jul 6, 2023 4m read

FHIR has revolutionized the healthcare industry by providing a standardized data model for building healthcare applications and promoting data exchange between different healthcare systems. As the FHIR standard is based on modern API-driven approaches, making it more accessible to mobile and web developers. However, interacting with FHIR APIs can still be challenging especially when it comes to querying data using natural language.

Introducing the FHIR - AI and OpenAPI Chain application, a solution that allows users to interact with FHIR APIs using natural language queries. Built with Op

4
2 1452
Question Dmitry Maslennikov · Jul 26, 2023

So, I needed to start Java Gateway, and found, that it does not want to work with the latest Java versions, I tried 20, 18, 17

Start External Language Server %Java Server:

Please wait...result will show below:

2023-07-26 19:46:24  Starting Java Gateway Server '%Java Server'
2023-07-26 19:46:24  *ERROR* Return from RunStartCmd: ERROR #5049: Java version '18.0.1.1' is not supported.
2023-07-26 19:46:25  An error occurred while trying to start the Gateway Server External Language Server failed to Start:
ERROR #5049: Java version '18.0.1.1' is not supported.

Error, only says, that it will not work, and say nothing, about which version it wants to see

6
0 1457
Announcement Emily Geary · Jul 28, 2023

InterSystems US Classroom Training  is now issuing digital badges for successfully completing training, and we are retroactively distributing these badges to our classroom learners since May 2020. The badges are issued through Credly, a company that manages digital credentials, and will be delivered via email, asking you to accept your new training badge shortly. If this is your first time earning a badge through Credly, you will be prompted to make an account and whether you wish to automatically accept InterSystems badges.

Many learners received badges over the week - please check your emai

0
0 258
Article sween · Jul 5, 2022 4m read
        

How to include IRIS Data into your Google Big Query Data Warehouse and in your Data Studio data explorations.  In this article we will be using Google Cloud Dataflow to connect to our InterSystems Cloud SQL Service  and build a job to persist the results of an IRIS query in Big Query on an interval. 

If you were lucky enough to get access to Cloud SQL at Global Summit 2022 as mentioned in "InterSystems IRIS: What's New, What's Next", it makes the example a snap, but you can pull this off with any publicly or vpc accessible listener you have provisioned instead.

Pre










3
0 1194
Question Steven Coker · Jul 12, 2023

Can %Service_telnet be enabled programmatically? I have the need to enable this feature so that I can automate a script I have for Cache, but unless the telnet service is on, the session cant connect.

6
1 490
Question Yone Moreno · Jul 27, 2023

Hello,

We have created a New User but we do not know how to allow it to see Message's content:

What role or permission we should add to allow it?

We have already added:

We have also read:

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

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

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

What role or permission we should add to allow it?

2
0 227
Question Rich Taylor · Jun 15, 2016

I am in need of a routine or class method to generate an Oauth 1.0 signature.  I was about to code this myself, but thought to check first to see if anyone has already done this and is willing to share.

Thanks in advance for any help.

[UPDATE  06/28/2016]

As there appears to not be a readily available solution I created a class to provide Oauth 1.0 authentication.  This class is attached in a zip file.  Methods are provided that generate a signature for a given URL request based on a consumer key and consumer secret.  Note that the only tested use case is in the last leg authentication to an appl

3
0 726
Question John Nurmi · Jul 27, 2023

In an HL7 Business rule I am trying to block ONLY ORM messages that have a PV1:3.4 of 105 or 205 and a OBR:4 value of EP22 or CATH01.

I created the logic below but it appears to be evaluating the two fields independently instead of combined?

Here is what I had.

(((HL7.{MSH:SendingApplication.NamespaceID}="Epic_Cupid")&&(HL7.{ORCgrp(1).ORC:OrderControl} IN "NW,CA")))&&(((HL7.{PIDgrp.PV1grp.PV1:AssignedPatientLocation(1).Facility.NamespaceID} NotIn "105,205")&&(HL7.{ORCgrp(1).OBRuniongrp.OBRunion.OBR:UniversalServiceIdentifier.Identifier} NotIn "CATH01,EP22")))

I ended up getting it to w

1
0 271
Question Pietro Di Leo · Jul 24, 2023

Hi everyone,

I'm trying to figure out how to automatically resend a message using a business operation.

I'm working on a production where HTTP messages are sent from a Business Component to the URL of a Postman Mock Service and I'd like to understand what I can do when the server doesn't respond within a certain timeout. To test this situation, I created a Business Operation component called "Sender", with an "EnsLib.HTTP.OutboundAdapter", which is sending an HTTP message via a POST request to the Mock Server. To create the message, I defined a %Net.HttpRequest object with a certain Timeout

8
0 548
Article Jeffrey Drumm · Jul 24, 2023 2m read

When creating custom Business Hosts, it's often necessary to add properties to the class for additional settings that will be used in the initialization or operation of the host. The property name itself isn't always very descriptive, so it's an advantage to have a custom caption display with the field.

In Caché, it was fairly straightforward:

TEST> Set^CacheMsg("EnsColumns","en-us","<property name>") = "<caption>"

But It involves a bit more effort in IRIS ...

In IRIS, the caption names of business host and production properties are stored in ^IRIS.Msg("EnsColumns"), which is normally map

4
3 462
Article Satoshi Hosoi · Jul 27, 2023 1m read

InterSystems FAQ rubric

Whether the value of a local variable is an OREF or not can be determined using $IsObject(). Let v be the variable you want to check,

$IsObject(v)=1// v is an OREF$IsObject(v)=0// v is not an OREF$IsObject(v)=-1// v is an OREF but does not point to a valid object

Note that $IsObject(v) will give an UNDEFINED error if v is undefined.

To avoid UNDEFINED errors, it is recommended to use $Get like this:

$IsObject($Get(v))
0
0 460
Question Rafael Bikkin · Jul 25, 2023

This question originally appeared in the comments of the article: Git for Shared Development Environments

Hi, @Timothy Leavitt 
You wrote:

  • Concurrency control for multiple users working in the same environment at the same time. Once you make changes to a class/routine/etc., it's yours until you discard or commit your changes. (We do have ways around this when needed, though!)

I'm trying to find any documentation about "(We do have ways around this when needed, though!)" part, and it looks like it's never mentioned anywhere else apart from the quoted paragraph. I can't find any releva

1
0 242
Question Jason Jones · Jul 26, 2023

This question originally appeared in the comments of the article: Git for Shared Development Environments
 

I am trying to implement this for my Department of Veterans Affairs development group, the problem I have is, there seems to be no way to keep each package's repo separate. For projects in VA, it is very important (and it's also much more practical from a working perspective) to have a separate GitHub repo for each project, and for us in IRIS a project is a package more or less. For instance, under our "CPM" namespace, which might have gov/va/med/* which is a custom VA tool, and then the

1
0 229
Question Kevin Kindschuh · Jul 26, 2023

Visual Studio Code, like Atelier, connects to IRIS through the Web Server and a web service, unlike Studio that connect to the SuperServer port.

What about the VS Code terminal?  Does that open a shell with SSH or does it also use a web service?

In other words, does an IRIS developer using VS Code need direct access to the IRIS instance with SSH or the SuperServer port, in addition to the external or private web server to execute terminal commands?

Is that different with linux vs. Windows?

1
0 463
Question Fabio Care · Jul 24, 2023

After installing IRIS 2023.1 on a live copy of our production machine our REST Service now consumes a CSP Session with every request. The request is handled as expected, but uses one of the 5 CSP Session per license. So after 25 requests, the license is used up. The Grace time always shows 0 and the session stay for very long. (Maybe the 900 Seconds timeout). 
On Caché 2018, we had the same settings for the Webapp and there, only a single Session was set for all requests. The Caché request didn't use any cookies. 
Here we also used $system.License.PublicWebAppUser() which I think is not availab

7
0 568
Article Yuri Marx · Mar 30, 2022 9m read

There are several ways of classifying cryptographic algorithms: 1) Secret Key Cryptography (SKC) - Uses a single key for both encryption and decryption. It is also called symmetric encryption. Primarily, it was used for privacy and confidentiality; 2) Public Key Cryptography (PKC) - Uses one key for encryption and another one for decryption. It is also called asymmetric encryption. Initially, it was utilised for authentication, non-repudiation, and key exchange; 3) Hash Functions - Uses a mathematical transformation to irreversibly "encrypt" information, providing a digital fingerprint. Origin









Request Decrypt messages




6
1 500