I want to assign below query result into my Person class which have Name,DOB properties, and then convert into JSON.
SELECT Name,DOB FROM Sample.Person
InterSystems IRIS is a Complete Data Platform
InterSystems IRIS gives you everything you need to capture, share, understand, and act upon your organization’s most valuable asset – your data.
As a complete platform, InterSystems IRIS eliminates the need to integrate multiple development technologies. Applications require less code, fewer system resources, and less maintenance.
I want to assign below query result into my Person class which have Name,DOB properties, and then convert into JSON.
SELECT Name,DOB FROM Sample.Person
I got below error when passing Date in timestamp format.
I am using %JSON.Adaptor. Please refer screen 2
.png)
.png)
.png)
Some time ago, InterSystems introduced the concept of %DynamicObjects.
This feature is a powerful tool that makes it very easy to convert any string of JSON text to objects and vice versa.
However, in the work that J2 Interactive is doing for our customers, there are a couple of things that "need some tweaking".
Very often, we create REST services for our customers. Those services have a payload (in JSON format) that contains information that our customer expects in the form of an object that is proprietary to them.
Hello everyone!
Hi Team,
I am using %JSON.Adaptor class for Json validation.
Using below statement I got only one required field validation.(refer below screen)
SET stat = objExternalUser.%JSONImport(%request.Content)
I need summary of all required field.
.png)
.png)
Hi Everyone!
New video, recorded by @Benjamin De Boe, is already on InterSystems Developers YouTube:
Scaling Fluidly with InterSystems IRIS
I need RowId of inserted record.
I have used below logic to get max row id,
but it will not give desired result when multiple people enter record in the table at the same time.
.png)
Hi Community!
Sometimes I meet a method which accepts 10+ parameters.
And often I need only the 8th parameter to pass. And I call the method something like:
do ##class(Some.Feature).Method(,,,,,,,"flag")And I don't like this method when I call it like this cause, you know, often I just miss the number of commas and raise some other flag I wanted.
How do you avoid this situations?
If you meet such a code, how do you call it and sure that you didn't miss the number of ","?
What is a good number of parameters in a method and f you need to pass more parameters in a method what do you do?
Can you please provide steps to debug in VS code using serenji and how to put break point in VS code, I have tried using F9 but it is not working.
I want to debug API code using postman.
Hello, I have a task created in my task manager, calling my Business Service class, and it's working fine.
But I need to know the ID of the task, I searched within the class %SYS.Task.Definition and found nothing related.
Class Example.Tasks Extends %SYS.Task.Definition{Property BusinessService As %String [ InitialExpression = "Example" ];Method OnTask() As %Status{
SET tSC = $$$OK
TRY {
SET tSC = ##Class(Ens.Director).CreateBusinessService(..BusinessService,.tBS)
SET tRequest = ##class(Ens.Request).%New()
SET tSC = tBS.OnProcessInput(tRequest,Our team is reworking an application to use REST services that use the same database as our current ZEN application. One of the new REST endpoints uses a query that ran very slowly when first implemented. After some analysis, we found that an index on one of the fields in the table greatly improved performance (a query that took 35 seconds was now taking a fraction of a second).
We saw this improvement on our development system and our test system. However, when we moved the code to the production system, the query still took “forever”. What went wrong?
Hi Community!
Enjoy watching the new video on InterSystems Developers YouTube, recorded by @Joel Solon, InterSystems Senior Technical Trainer:
I have created store procedure using management portal.
how to alter or modify SP using SQL in management portal.
Please refer below screen.
.png)
Hi Community!
Two more new videos are already on InterSystems Developers YouTube Channel:
1. Machine Learning - How it Works - Part 1
Hi Developers!
InterSystems IRIS stores everything in globals and if we use ObjectScript classes to persist data class documents globals it uses in storage. But if you use globals for calculations, temporary storages, for special indexes or for some other purposes - how do you document it?
Possible options which come to my mind:
1. Macro
#define Array ^MyGlobalusage:
s $$$Array(1)=12. Class parameter
Parameter Array ="^MyGlobal";Usage:
s @(..#Array)@(1)=13. Documentation comment
Just document it to have it in a class documentation
/// ^MyGlobal is used to store my dataWhat do you do?
Object Synchronization is a feature that has been around for a while, since Caché days, but I wanted to explore a bit more how it works. I've always thought that database automatic synchronization is complex by nature but, for some particular scenarios shouldn't be so hard. So I considered a very simple use case (OK, perhaps the typical one, I'm not discovering anything... but if it's common and it works, it's good
). You can download from GitHub and compile it into your system, generate sample data and play a bit with
Hi all,
One of the most useful features for me in IRIS was the queue page. From there, I could see how the different elements (BS, BP & BO) from a production were behaving, thanks to the possibility of auto-refresh every second. Great thing.
But we have updated to 2019.1 and this possibility is gone... we need to refresh manually! So, is there any way to set a parameter somewhere to have the queues status refreshed automatically?
Thanks a lot.
I have two local instances:
I'm using Java Gateway to talk to external system.
Both instances are using the same:
They are calling the same method with this java signature:
package isc.rabbitmq;
public class API {
public void sendMessage(byte[] msg) throws Exception {}
}On the InterSystems IRIS side I'm calling it like this:
set sc = ##class(%Net.Remote.Service).OpenGateway(gatewayName, .Hi! I am creating a Jasper Report using IRIS like DB, I've created my Data Adapter to connect with my DB configuring the JDBC connector and it works perfectly:
.png)
But when I try to create a report connecting to my DB I am getting this error:
.png)
This is the error in detail:
java.sql.SQLException: Communication link failure: Socket closed
at com.intersystems.jdbc.OutStream.send(OutStream.java:48)
at com.intersystems.jdbc.IRISDatabaseMetaData.executeCatalogQuery(IRISDatabaseMetaData.java:865)
at com.intersystems.jdbc.IRISDatabaseMetaData.getTableTypes(IRISDatabaseMetaData.java:679)
at com.
Hi Community!
You're very welcome to watch a new video on InterSystems Developers YouTube, recorded by @Stefan Wittmann, InterSystems Product Manager:
InterSystems API Manager Introduction
Hello everyone,
I was first introduced to TDD almost 9 year ago, and I immediately fell in love with it.
Nowadays it's become very popular but, unfortunately, I see that many companies don't use it. Moreover, many developers don't even know what it is exactly or how to use it, mainly beginners.

My goal with this article is to show how to use TDD with %UnitTest. I will show my workflow and explain how to use cosFaker, one of my first projects, which I created using Caché and recently uploaded to OpenExchange.
So buckle up and let's go.

Hello gentlemen,
here is my question: I would like to delete files one by one (not all at a time because I need to check somethinkg to delete it or not) in a defined folder but how can I handle it? I have used the extension :
EnsLib.File.PassthroughService
But it only works when a file is moved in my folder. But I want to launch my program everyday (with a planifier) in the purpose to delete file that more that 2 months old.
I want to debug my class method when call REST service using postman.
Hi all, I have released the latest version of VSCode extension for ObjectScript already a month ago, and finally a time for the info about this new release.
So, what's new in the release:
For details how it works now, look further.
An exciting position has arisen for a Junior Application Support Analyst in an established support team at CDS Computer Design Systems Ltd CDS is an independent SME, based near Manchester City Centre, specialising in the Oil and Gas distribution software market for over 45 years with strong ties throughout the industry https://www.codas.com
The role will suit candidates looking to enter, or are at the start of their career in, the software industry who want to provide good customer service, enjoy finding solutions for problems and are enthusiastic about software and technology.
An exciting position has arisen for an Application Support Analyst 3rd Line, in an established support team at CDS Computer Design Systems Ltd. CDS is an independent SME, based near Manchester City Centre (United Kingdom) specialising in the Oil and Gas distribution software market for over 45 years with strong ties throughout the industry - https://www.codas.com
The role will suit candidates looking to work in the software industry who want to provide good customer service, enjoy finding solutions for problems and are enthusiastic about software and technology.
Hi,
I have a method that has multiple parameters and is normally used from other classes in ObjectScript. Most of the parameters have default values. Withing the server code that's perfect. In some areas I can call myMethod(,,"sometext") or myMethod(tVariab) and thats fine... I use it as it's required in each place.
But now I want to expose it as a REST service so I need to buld a kind of wrapper.
IRIS provides us with anti login CSRF attack mitigation, however this is not the same as a CSRF attack, as login attacks only occur on the login form. There are currently no built-in tools to mitigate CSRF attacks on api calls and other forms, so this is a step in mitigating these attacks.
See the following link from OWASP for the definition of a CSRF attack:
Hi Community:
If you're interested in the future of InterSystems technology, you won't want to miss these nine Global Summit sessions on our hottest technologies:
Roadmap Sessions
REGISTER SOON. Early bird rates end August 30.
Thank you,
Jacquie
Hi developers!
Every day coding with IRIS and docker I call the following 3 commands in VSCode terminal. Always the same for any projects:
docker-compose build ; to build the container docker-compose up -d ; to run the IRIS in container docker-compose exec iris iris session iris ; to open the IRIS terminal
Is there any way to map the key sequence which will type me the rest?
e.g.
irisb for docker-compose build, irisup for docker-compose up -d, irist for docker-compose exec iris iris session iris
I know and use keyboard sequences for mac, but it doesn't work in VSCode terminal :/