Hi Community!
Please welcome a new video on InterSystems YouTube Channel:
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.
Hi Community!
Please welcome a new video on InterSystems YouTube Channel:
Hi Guys,
I have a DB server (ser-app-db) where IRIS is installed as server.
I have a Web server (ser-app-w) where IRIS is installed as web server and configured as CSP gateway.
I followed the configuration guide and ser-app-w perfectly display the CSP and CLS pages.
But that's not working for my REST service, for exemple with the REST sample:
http://ser-app-db/REST/CRM/Get?ReqID=123(GET): work and show the request
http://ser-app-w/REST/CRM/Get?ReqID=123(GET): return a 404.
I am using Apache server in Linux box.
I am not sure what I am missing in the config.
httpd.conf file (pasted required part):
PHP, from the beginning of its time, is renowned (and criticized) for supporting integration with a lot of libraries, as well as with almost all the DB existing on the market. However, for some mysterious reasons, it did not support hierarchical databases on the globals.
Globals are structures for storing hierarchical information. They are somewhat similar to key-value database with the only difference being that the key can be multi-level:
Hi all,
I am trying to delete an item from a production through a routine that installs and disables items.
To add any item, I have no problems, even to enable and disable some particular items.
The problem arises when I try to eliminate the production item, because when it does, the production become unstable and only works again when this item is added again in the collection (or the item is deleted manually in the production.cls)
This is my code attempt:
In the previous parts (1, 2) we talked about globals as trees. In this article, we will look at them as sparse arrays.
A sparse array - is a type of array where most values assume an identical value.
In practice, you will often see sparse arrays so huge that there is no point in occupying memory with identical elements. Therefore, it makes sense to organize sparse arrays in such a way that memory is not wasted on storing duplicate values.
In some programming languages, sparse arrays are part of the language - for example, in J, MATLAB. In other languages, there are special libraries that let you use them. For C++, those would be Eigen and the like.
Globals are good candidates for implementing sparse arrays for the following reasons:
Hi Community!
Please welcome a new video on InterSystems Developers YouTube Channel:
Hi All,
I have two tables LB_TestSet and LB_Transfer
LB_Transfer has a list if TestSet row IDs, so i am doing the following join
SELECT
LBTS_RowID,
,LBTS_CollectedDate
FROM SQLUser.LB_TestSet
JOIN SQLUser.LB_Transfer ON ($LISTBUILD(LBTS_RowID) %INLIST LBTR_TestSetList)
WHERE LBTS_CollectedDate BETWEEN '2019-01-01' AND '2019-05-10'
Without the date filter the query returns data, but if i add the date filter no data is returned
I also tried using %INTERNAL, %EXTERNAL TO_DATE('2009-01-01','YYYY-MM-DD')
Hi Community!
How do you create SSL Configuration for InterSystems IRIS programmatically? E.g. for installation or deployment case?
E.g. if I need to create a very simple "default" SSL client configuration to let HTPPS Get requests to an arbitrary server?
Hi all. Today we are going to upload a ML model into IRIS Manager and test it.
Note: I have done the following on Ubuntu 18.04, Apache Zeppelin 0.8.0, Python 3.6.5.
These days many available different tools for Data Mining enable you to develop predictive models and analyze the data you have with unprecedented ease. InterSystems IRIS Data Platform provide a stable foundation for your big data and fast data applications, providing interoperability with modern DataMining tools.
The last time that I created a playground for experimenting with machine learning using Apache Spark and an InterSystems data platform, see Machine Learning with Spark and Caché, I installed and configured everything directly on my laptop: Caché, Python, Apache Spark, Java, some Hadoop libraries, to name a few. It required some effort, but eventually it worked. Paradise. But, I worried. Would I ever be able to reproduce all those steps? Maybe. Would it be possible for a random Windows or Java update to wreck the whole thing in an instant? Almost certainly.
Hey Community!
The latest webinar, recorded by InterSystems Sales Engineers @Sergey Lukyanchikov and @Eduard Lebedyuk, is already on InterSystems Developers YouTube! Please welcome:
"Machine Learning Toolkit (Python, ObjectScript, Interoperability, Analytics) for InterSystems IRIS"
Hi! I'm Andreas, the developer of Caché Monitor.
Caché Monitor is a database tool with special feature for InterSystems Caché. Since today also with support for InterSystems IRIS!
A public pre release is available for download: https://www.cachemonitor.de/cache-monitor-beta-releases/

Please give it a try! Feedback (email preferred) is always very welcome!
Thanks for your time!
Andreas
Hey Community!
It's time again for good tidings for you!
For the first time, InterSystems will be part of the WeAreDevelopers World Congress in Berlin, Germany, which brings together developers, IT experts and digital innovators to discuss and shape the future of application development.
From 6 to 7 June, we’re ready to welcome you at our booth #A5 and show you how InterSystems technologies enable intelligent interoperability and accelerate the creation of powerful, data-driven applications.

Schedule your individual meeting with InterSystems @ WeAreDevelopers in Berlin by quickly filing out the form on our event page [https://dach.intersystems.de/WeAreDevelopers2019] – the first three applicants will receive a FREE ticket!
I am attempting to use Node.js to perform a simple query against the database using some identifying information to get the ID. This is what I am attempting to do:
var irisobj = require('iris');
var myData = new irisobj.IRIS();
var result = myData.open({ path:"C:/InterSystems/IRIS/Mgr",
username: "USERNAME",
password: "PASSWORD",
namespace: "YOURNAMESPACE"
}
);
var result = myData.invoke_classmethod({class: "%SYSTEM.SQL", method: "Execute", arguments: ["SELECT TOP 1 ID FROM SOMETABLE"]});
console.log(result);
The preview release of InterSystems IRIS 2019.2 is now available - give it a try!
Container images are available via the WRC's preview download site.
The build number for these releases is 2019.2.0.100.0.
InterSystems IRIS Data Platform 2019.2 is the first CD (continuous delivery) release of InterSystems IRIS. It has many new capabilities including:
Hi Community!
We're pleased to announce that that InterSystems IRIS Community Edition is available on the Docker Store! InterSystems IRIS Community Edition is the no-cost developer edition designed to lower the barriers to entry to get started with IRIS. Now that it is listed on the Docker Store, running an IRIS Community instance is as easy as -
docker run -d -p 52773:52773 store/intersystems/iris:2019.1.0.511.0-communityFor more on running IRIS in containers check out our Documentation or one of the many Community posts on the topic!
Hi!
I was trying to create a query that can be exposed as a stored procedure (function actually) that would return a resultset with a random number of columns.
Unfortunately, it seems that unless I specify the ROWSPEC annotation on the Query method, I won't get any columns exposed. I was hoping to implement QueryNameGetInfo method and specify the names and number of columns I would be returning dynamically. But it seems that GetInfo information is simply ignored.
Here is my code:
So i'm having this problem with the task manager, the tasks simply stopped running. I had a problem with queued massages and trying to figure out what to do i'm afraid I may messed up something else, can someone help me ?
Hello,
I have a very simple web service that I'd like to secure via SAML Authorization with X.509 Certificates. I am, however struggling with documentation and my lack of cryptographic skills. (I do this just for educational purposes now, but need to use it in the future)
Does anyone have an example that shows how to construct a SOAP Client with adding all necessary security headers manually or point me to a decent learning resource?
Thank you very much!
Hi Community!
New "Coding Talk" video is already on InterSystems Developers YouTube:
Create Your First InterSystems ObjectScript Code with IRIS Community, Github, Docker and VSCode
Well, we now have two different platforms Caché and IRIS. With so many changes, that it makes so many difficulties to have the same sources for both platforms. I'm not arguing about the reasons for it. Some of the changes are really reasonable.
It's good when I can import code from Caché to IRIS and get it worked after all background job was done. In Caché we have %CacheStorage type used for Storages. In IRIS it automatically converts to %Storage.Persistent. So, If I develop on IRIS, I will have incompatible sources for Caché.
Hi All,
I'm trying to create a simple wrapper class around a JSON schema validator library, written in Java, and calling this functionality through the Java Gateway of IRIS 2019.1.
My Java wrapper class has a constructor like this:
public JSONValidator(char[] jsonStream, char[] schemaStream) { ... }
Hi Community!
You're very welcome to watch a new video on InterSystems Developers YouTube, recorded in a new format called "Coding Talks":
Developing with Docker and InterSystems IRIS Community Edition
I follow the instruction on docker site.
I have next troubles:
As I understand it. The local or global indexes can contain a maximum of 500 characters. How can I go around this limitation?
Hi,
Anyone know the correct way to pass the user and password of a new account using %SYS.LDAP?
Set Status=##Class(%SYS.LDAP).AddExts(LD,DN,Attributes)
Hi Team,
I am using Angular 7 with angular material for my client application that connects and obtains Access token from IRIS Authorization Server (OAUTH 2.0). The problem that I am facing right now is regarding this access token being exposed to browser and stores in the local storage of the browser.
Right now, I am having hard time finding an alternative but secure option to store access token on the server side (client WEB SERVER) instead of browser’s local storage.
Following are the suggestions that I have googled recently, not sure if there is any better way that I need to explore.
Here's my current attempt:
Class Testing.PropertyParameters Extends %RegisteredObject
{
Property p1 As %String(MAXLEN = 5, myPropName = "myPropValue");
Method test()
{
set ..p1 = 10
//write ..p1.Parameters
set p1 = ##class(%Dictionary.PropertyDefinition).%OpenId("Testing.PropertyParameters||p1")
zwrite p1
do p1.Parameters.SetAt("myPropValue", "myPropName")
set key = ""
for {
set item = p1.Parameters.GetNext(.key)
if (key = "") {
quit
}
write !,"key: ", key,", Item: ",item
}
do p1.%Save()
write ..p1.%GetParameter("myPropName")
write !
}
}
I've visited:
Terminal scripts can be used to run pre-designed commands on the terminal, like a batch file. You can write anything that can be executed on terminal, like for loop, if else and so on, inside Terminal scripts. In this article, I will show you how to call Terminal scripts, how to use parameters in Terminal scripts and how to avoid session disconnected when running Terminal scripts. If you have any information about how to use Terminal scripts or you have any feedback, please feel free to leave a comment.
Hey Developers!
Do you want to reap the benefits of the advances in the fields of artificial intelligence and machine learning? With InterSystems IRIS and the Machine Learning (ML) Toolkit it’s easier than ever.
Join InterSystems Sales Engineers, @Sergey Lukyanchikov and @Eduard Lebedyuk, for the Machine Learning Toolkit for InterSystems IRIS webinar on Tuesday, April 23rd at 11 a.m. EDT to find out how InterSystems IRIS can be used as both a standalone development platform and an orchestration tool for predictive modelling that helps stitch together Python and other external tools.
