Is it possible to use a variable instead the actual class name when calling a class method?
Ex.
s var = "MyPackage.MyClass"
d ##class(var).Main()
Is it possible to use a variable instead the actual class name when calling a class method?
Ex.
s var = "MyPackage.MyClass"
d ##class(var).Main()
Can someone please tell me like how we can retrieve SuperSessionID in classMethod ??
(for SessionID i now the syntax [Set SessionID = ""_$get($$$JobSessionId)] but for SuperSessionID i don't know.)
Now i want to use SuperSessionID instead of SessionID, outside the package.
Also one confirmation that "SessionID keeps same in entire message flow or it varies ?? i heard that SessionID may change in diff instances."
please explain me which ID keep unique (SessionID or SuperSessionID) ??
I want to filter the message base upon that only...
As a InterSystems HealthShare Developer, you will be a part of an Agile team to build healthcare applications and implement new features while adhering to the best coding development standards.
The first developer preview of InterSystems IRIS 2024.2 and InterSystems IRIS for Health 2024.2 has been posted to the WRC developer preview site. Containers are not available for this preview, but we’ll be sure to post them next time.
This is the earliest in the release cycle that we’ve ever posted a developer preview and there aren’t any “highlight” worthy features that are complete. I’ll list them as they get closer to done in future preview releases.
Initial documentation can be found at these links below.
If the journal file is too large to be searched or filtered using the Management Portal, you can refer to it using the following two methods.
① How to use the ^JRNDUMP utility
② How to reference it in a program
================================================== ==========
① Using the ^JRNDUMP utility. For example, if you want to select all records in the journal file that include the global reference ^ABC, do the following:
*Please execute all commands below in the %SYS namespace.
DO SELECT^JRNDUMP("C:\MyCache\mgr\journal\YYYYMMDD.
This article will describe processes for running unit tests via the InterSystems Package Manager (aka IPM - see https://openexchange.intersystems.com/package/InterSystems-Package-Manager-1), including test coverage measurement (via https://openexchange.intersystems.com/package/Test-Coverage-Tool).
There's already great documentation about writing unit tests in ObjectScript, so I won't repeat any of that. You can find the Unit Test tutorial here: https://docs.intersystems.com/irislatest/csp/docbook/Doc.View.cls?
I need to obtain the records of the last 2 hours with format (HH:MM:SS), it only leaves me specifying the exact time
Hi,
I am using embeded python to utilize some pythonic library but i got a problem on my hand.
One of the python function i am using return multiple values
in python you would do something like that :
val1, val2, val3, = function(params)
In COS I got something like that :
lib = ##class(%SYS.Python).Import("lib")
val1 = lib.function(params)And I don't know how to get the second and third values.
Is there a way to get them?
Have successfully installed the Intersystems ObjectScript Extension Pack (version last updated 2024-03-26) in VS Code version 1.88 and when creating a new Class (in a New File of type ObjectScript-class) I am presented only with the following snippets:
.png)
When watching the Intersystems training videos (I am fairly new to IS) I notice there are far more options provided. For example from the video "Creating a Custom HL7 V2 Search Table" the following snippets are presented:.png)
Is there an additional extension I am missing or possibly a configuration setting?
Hello,
I have a variables X="1,4,6,8,9,12" and I want to write a For loop with this variable in similar with the loop below:
For Y=1,4,6,8,9,12 {
Write Y,!
}
Can someone help? Thank you.
In the vibrant landscape of the InterSystems Developer Community, there are individuals whose presence resonates deeply, leaving an indelible mark on the community's ethos and evolution. One such stalwart is @Robert Cemper, a seasoned member whose journey with InterSystems company and the Developer Community spans a remarkable timeline, rich with experiences, milestones, and invaluable contributions.
🤩 Let's take a closer look at Robert's journey with InterSystems technology and our Developer Community...

If you have system tables implementing the "VERSIONPROPERTY" functionality, you may encounter error 5800. This article explains how this error occurs and provides solutions to resolve the issue.
When version checking is implemented, the property specified by VERSIONPROPERTY is automatically incremented each time an instance of the class is updated (either by objects or SQL).
For example:
ClassMethod RunVersionChange() As %Status
{
Set sample = ##class(dado.TblSample).%OpenId("42")
Write !,"VERSIONPROPERTY value: "_ sample.VersionCheck
Do sample.
Hi Developers!
With InterSystems IRIS Cloud SQL recently becoming Generally Available, some of you may have had a chance to try it out. Or maybe you used it for your contest entry or during the EAP period. We're curious to learn what YOU think of it. So, have you already tried the new service InterSystems IRIS Cloud SQL?
We have launched a new Ideas Portal category dedicated to this database-as-a-service (DBaaS) where we're looking for your ideas on how we can improve InterSystems IRIS Cloud SQL.
Or share your experience with the service in the comments to this post.
Hello,
I have my server setup a resource server. When a user calls our API they submit a bearer token as authorization and in our dispatch class AccessCheck() we validate the JWT using ##class(%SYS.OAuth2.Validation).ValidateJWT().
If I include a scope to check in that method I get the error Scope check may only be done on requesting client and I'm not sure what this means. The method works without include the scope and will let me know if I have an unsigned token or an expired token.
I noticed that the implementation of the method calls Set token=##class(OAuth2.AccessToken).
Hi community,
I'm calling to a API that it is retrieving the content of a file as Content of response. I'm catching the binary but I need to convert this Stream to a Base64 string.
I'm trying to convert a %Stream.GlobaBinary to a Base64 string using the following code, but it doesn't work.
do stream1.Rewind()
set response = ""
while 'stream1.AtEnd {
set temp=stream.Read(4000)
set temp=$systemEncryption.I'm currently making some changes to legacy code and I've noticed that it uses "i $i(" all over the place. Testing in terminal seems like this does the same thing as "do $i()". Is there a difference between these two (and if not is there some interesting history around this)?
Hi,
I'm trying to send alerts in Ens.Alert process to a teams channel.
I have already created a production that transforms the incoming alerts and send to a set of user's email but I also wanted to sent it to the teams channel
Any thoughts around this?
I have two timestamp values and also I have interval time, I need to split the timestamp based on the interval time. Like
Start Time is '2024-01-01T10:00:00'
End Time is '2024-01-01T11:00:00'
Interval Time is 15 minutes
I expected the result is:
'2024-01-01T10:15:00'
'2024-01-01T10:30:00'
'2024-01-01T10:45:00'
'2024-01-01T11:00:00'
Good afternoon!
Has anyone successfully configured connection from Oracle DBLink DG4ODBC to InterSystems Cache or IRIS ? Who can share working configuration for Unicode database? Thx!
This winter was full of online and offline activities in the InterSystems Developer Ecosystem. In case you missed something, we've prepared for you a selection of the hottest news and topics to catch up on!
.jpg)
Hi Community,
It's time to announce the winners of the InterSystems FHIR and Digital Health Interoperability Contest!
Thanks to all our amazing participants who submitted 12 applications 🔥
%20(4).jpg)
The 2024.1 release of InterSystems IRIS® for HealthTM, and HealthShare® Health Connect is now Generally Available (GA).
❗This announcement does not apply for InterSystems IRIS®
In this release, you can expect a host of exciting updates, including:
Please share your feedback through the Developer Community so we can build a better product together.
Hi,
We are setting up FHIR SQL builder analysis set up in cloud but it is refused the connection. Could anyone please help to share your idea to resolve the issue. Why it is throwing connection refused. Any configuration missing?
Thanks,
Hi Developers,
Let's meet in-person at our next Developer Meetup in Boston on April 24 5:30 pm!
>> RSVP here <<
Tech Talks:
Hi Guys,
Any Idea on how can make a dynaTree with 4 levels hierarchy (attached), I'm using the below code but sometimes works and other cases it doesn't?
Set locId=..locId,pos=1,(pLineArr,astArr,compArr)=""
&Sql(Select Parent->Name,ID into :Fac,:kLoc from MSDS_COM.Loc where Parent=:locId)
Set:SQLCODE (Fac,kLoc)=""
Set pTree(0,"ch",1) = ""
Set pTree(1) = $LB(Fac,locId,1,"","")
Set Sql="Select ProductLine from MSDS_Serenity.ProdLineDetails where Active=1 and Loc="_kLoc_" group by ProductLine order by ID"
Set RS = ##class(%ResultSet).%New()
Do RS.Prepare(Sql)
Do RS.Execute()
While RSWe are writing a custom Business Operation to interact with a downstream SOAP web-service. Classes for the SOAP operation were originally generated using the SOAP Wizard, then modified. This is functioning OK, but we'd now like to set the ReplyCodeActions setting on the operation and are struggling to make it visible via the management portal. How can we achieve this?
The classes are structured like this:
Hi everyone.
Is there a sensible approach to having a lookup table in Namespace A, and then accessing this from Namespaces B, C, D (etc)?
I'm trying to avoid creating a Global mapping of the lookup table global (^Ens.LookupTable) as I fear that it would then link all other lookups in that global and lead to some unexpected behaviour, but would be open to trying something in this realm if it's the best option.
Another approach I have considered is creating a custom lookup function that is run from the secondary namespaces that does some namespace hopping, but it feels messy.
The following code call the method of the same name as defined in the nearest superclass:
Class MyClass Extends %Persistent
{
ClassMethod Foo()
{
}
}
Class SubClass Extends MyClass
{
ClassMethod Foo()
{
do ##super() // <----
}
}Not let's say I want to call Foo() super class method but from another method :
Class SubClass Extends MyClass
{
ClassMethod AnotherMethod()
{
do ##super().Foo() //will not work
}
}This is possible in some other programming languages such as C# or Java.
I cannot find anything in documentation