If you had the opportunity to change something in the IRIS Interoperability Message Viewer, what would you do?
Our company is in the process of converting our software for use in Intersystems IRIS and one of the major sections of the software makes use of a custom statically-linked C library using the $ZF("function-name") functionality. During this, I found out that the process for setting up the C library to be used within the database platform has changed significantly between Cache and IRIS.
I have a code block in a BPL. I have the below SQL and code. All variables have been declared and set. When I run the SQL, if there are no values returned, I get 100 for the value of SQLCODE when I perform the FETCH, which is correct. If values are returned, I get a -400 error when I perform the first FETCH. I've investigated, but cannot find the reason for a -400 error. Hoping someone out here understands this and knows what's wrong.
&sql(DECLARE D1 CURSOR FOR SELECT A.SHIPMENTTRACKINGNO, A.SERIALNO, A.CDWACCNO, A.CDWINVOICENO, A.CDWORDERNO, A.CDWPARTNO INTO :context.
Hi Community,
As you know we have a Global Masters program — InterSystems Data Platform Advocacy Hub.
All Global Masters members (Advocates) can achieve various levels of advocacy which depends on contributions on Developer Community and activity in Global Masters. Every new level opens new types of challenges (tasks) and new types of rewards.
Recently we introduced a new level of advocacy with the name "Ambassador". Ambassadors and VIPs will have unique privileges and opportunities.
Dear Community,
In advance of the upcoming release of InterSystems IRIS 2020.1 and InterSystems IRIS for Health 2020.1, we're pleased to invite you to the “Office Hours: InterSystems IRIS 2020.1 Preview” webinars. These Q&A sessions will provide a forum for you to ask questions and learn about the latest product features in the upcoming releases.
The webinar will feature members of InterSystems product management team who will answer questions and provide additional information about the new features and enhancements.
We will be hosting two sessions on Thursday, February 20, 2020. Reserve your spot by clicking one of the buttons below for the appropriate time slot.

Hi developers!
Just want to check with you on best practices for that.
You collaborate for InterSystems IRIS repository. You fork it, then make changes, commit, push, pull request, discuss(if any), your PR is accepted.
What's next?
Do you delete the repository you forked in?
In Episode 4 of Data Points, we welcome @Benjamin De Boe to the pod to discuss some of the things you can do to optimize your SQL queries in InterSystems IRIS. We've all heard — either from ourselves or from others — the "this runs too slowly" complaint. I thought Benjamin did a great job walking through many of the things within IRIS you can look at with your queries to see what can be improved.
Hello,
I have a class I'm working on that is extending a base class that contains the %GetComponentByID method and a section of the new code I'm writing uses %GetComponentByID but when I attempt to compile the class I'm getting an error that says the method doesn't exist.
Am I missing something to be able to include the GetComponent method in an extended class?
Any recommendations - From COS, From .net?
Hi, Community!
Today we have Announcements, Articles, and Questions.
But sometimes we want to raise a discussion on the topic which is not a question, but also this post is not an article.
What do you think?
Hi Developers,
Enjoy watching the new video on InterSystems Developers YouTube:
try{
....
....
....
Set tSC = method_invocation()
If $$$ISERR(tSC) {
Quit tSC
}
....
....
....
}On compiling the above, I get an error saying "QUIT argument not allowed : 'tSC' ".
- When I replace Quit tSC with Return tSC, it compiles
- On replacing Quit tSC with Quit $$$OK, I get the error: QUIT argument not allowed : '1'
- On replacing Quit tSC with Quit, it compiles
- A 'Quit tSC' statement outside of the try-catch block does not cause a
Created a record map to read a flat-file of lab results.
Have multiple lines that represent result components for a given order per pt MRN.
Grouping these records together based upon the order number in a custom service to create a single XML message.
Within the XML message, there are some fields that occur once and some that occur one or more times.
Within the record map, the fields/properties that occur once are configured as "As %String. The fields/properties that occur more than once are configured as "As List of %String.
Hello,
I've always worked with typical web applications (a bunch of code files that sit in a server that connects to an RDS). Now our team is responsible for different IRIS for Health environments. We are currently working to set up the local dev environment and this is the current scenario:
* IRIS for Health local development server is running in a container
* Developers are using VSCode with the objectScript plugin
* GitHub as a version control system for the code and configuration.
Our goal is to be able to keep track of the entire code and configuration of the IRIS instance.
Hello,
We need to convert this structure, where we observe empty component separators "^":
MSH|^~\&|sistemaExterno|anonymized^anonymized|anonymized|anonymized|anonymized||RSP^K22^RSP_K21|anonymized|P|2.
Hi
I'm trying to create a form on a csp page, with input elements binding to data using the cspbind attribute.
All is working fine when i use string literal as in
cspbind="UserName"But trying to set the attribute to runtime expression doesn't work for me, i.e:
cspbind= #(..EscapeHTML(query1.GetData(col)))# The same rt expression produce the desired string when used in other elements, i.e:
<p> #(..EscapeHTML(query1.GetData(col)))# </p> -> will produce 'UserName' on page.
Are there any known limitations for this attribute?
I'm using version:
Cache for Windows (x86-64) 2015.2 (Build 664
Thanks
Preview Mode was added to InterSystems IRIS Business Intelligence to give designers a quick view of what their resulting Pivot Table will look like without needing to wait for the results to fully execute. This can be beneficial when designing pivot tables because if you are dragging and dropping elements to see how they look/work in your pivot table and seeing if they have the desired data. Since you are exploring and designing, you don't necessarily care about the results at the moment, but you would still like to see how your table looks with the changes you have made.
I need to convert an array with an unknown number of indices to a JSON string for transmission (which is why it isn't possible to iterate through it using $ORDER). Does ObjectScript provide functionality to convert an array to a JSON string?
Hello,
We have the following code:
Method incorporarDocumento(request As EsquemasDatos.incorporarDocumentoRequest(REQUIRED=1)) As EsquemasDatos.documentoIncorporado(XMLNAME="return") [ Final, ProcedureBlock = 1, SoapBindingStyle = document, SoapBodyUse = literal, WebMethod ]
{
set ..MTOMRequired = 1set ..SecurityOut.actor = "http://www.gobiernodecanarias.org/Platino/Authentication/1.0"
set ..SecurityOut.mustUnderstand = "1"
set ..SecurityNamespace = "http://docs.oasis-open.
Hello All,
I am able to transmit a small batch of billing files: B/W 5 and 20 without issue-
Put stream 11@%IO.LibraryStream to /SFTP/unmhsmcsa/OUT/TEST_021920201426.tst
But when the size of the batch increases to over 20 the operation hangs and I receive the error below: The file is created in the SFTP server with 0 data.
ERROR <Ens>ErrFTPPutFailed: FTP: Failed to Put file 'TEST_022020201014.tst'
(msg='Error in SFTP Put('/healthshare/db/mgr/Temp/H8XaLoZgkYFkNQ.sftp','/SFTP/unmhsmcsa/OUT/TEST_022020201014.
In a HTTP operation, which extends Ens.BusinessOperation, EnsLib.REST.Operation, one can read the component's AlertGroups property by simply referring to it with "..":
.png)
set AlertGroup = ..AlertGroups//Do something with AlertGroup
"AlertGroups" is a property of Ens.Host. The above however does not work in a business process which Extends Ens.BusinessProcessBPL which extends Ens.BusinessProcess which extends Ens.Host. Can this property be read from inside the business process and what would the syntax
Hello.
We have to call a service, and we have to encrypt the request using a public key. We have an example of how to make the call in PHP. Also we have the public key and all the parameters that we need. The example in PHP is this (it uses openssl):
$url = "https://XXXXX/";
$json = '{"api_key":"XXXXX", "id":"1"}';
$jsonEncrypt, = '';
$publicKey = file_get_contents("public.key");
openssl_get_publickey($publicKey);
openssl_public_encrypt($json, $jsonEncrypt, $publicKey);
$jsonEncrypt = base64_encode($jsonEncrypt);
We need to do the same in Ensemble.
First,
Forgive me if this is a rather low-level question - I am a physician informaticist who is learning cache/mumps for the first time. I am sure this probably relates to some setting but I can't find a similar issue anywhere.
When I create a list, and then try and return that list - I get a bunch of symbols back along with my results, or sometimes I just get symbols.
I pasted a screenshot below. Thank is advance for the help!
Anthony

Hi Developers,
New video, recorded by @Benjamin De Boe, is available on InterSystems Developers YouTube:
⏯ Code in Any Language with InterSystems IRIS
Hi all,
I wonder how to change the login email that I've in Comunity.
According to My acount - Account setting, I can change it using the http://login.intersystems.com portal, however there is not any link or option to change it.
Is there other way to change the email? Currently I'm using the work email and I want to change to personal email.

Best regards
P.S. The email that I have associated in Global Master I have already modified it, so if I modify the one in the Community, both accounts will be linked, isn't it?
Conversion Sequence step 4 (see table below)
Over the last few months, we have made changes to InterSystems IRIS to make it easier for you to move from Caché/Ensemble (C/E) to InterSystems IRIS. The most significant adjustments are the re-introduction of non-Unicode databases and the in-place conversion. InterSystems IRIS now fully supports non-Unicode databases with all the functionally that already exists with Caché. The in-place conversion supports an upgradelike process to install InterSystems IRIS right on top of your existing C/E deployments.
Hi,
I open a specific file into a studio by using this command : Cstudio.exe /Servername=HEALTHSHARE/Namespace=User /files=MyClass.CLS
I would like not open a new studio when i execute a second time the command with one other file.
I would like open the second file in the same studio that the first file (I have to keep 2 calls)
For exemple :
--> Studio is closed:
1 st call : Cstudio.exe /Servername=HEALTHSHARE/Namespace=User /files=MyClass.CLS
--> Studio open with my MyClass.CLS file
2 nd call : Cstudio.exe /Servername=HEALTHSHARE/Namespace=User /files=MyClass2.
I wanted to share each of the first three episodes of our new Data Points podcast with the community here — we previously posted announcements for episodes on IntegratedML and Kubernetes — so here is our episode on InterSystems IRIS as a whole! It was great talking with @Jenny Ames about what sets IRIS apart, some of the best use cases she's seen in her years as a trainer in the field and then as an online content developer, and more. Check it out, and make sure to subscribe at the link above — Episode 4 will be released next week!
Hi Developers!
Another way to start using InterSystems ObjectScript Package Manager is to use prebuilt container images of InterSystems IRIS Community Edition and InterSystems IRIS for Health Community Edition.
We deploy this IRIS images on DockerHub and you can run it with the following command:
docker run --rm -p 52773:52773 --init --name my-iris -d intersystemsdc/iris-community:2019.4.0.383.0-zpm
Launch a terminal with:
docker exec -it my-iris iris session IRIS
And install zpm-module as:
USER>zpm zpm: USER>install objectscript-math [objectscript-math] Reload START [objectscript-math] Reload SUCCESS [objectscript-math] Module object refreshed. [objectscript-math] Validate START [objectscript-math] Validate SUCCESS [objectscript-math] Compile START [objectscript-math] Compile SUCCESS [objectscript-math] Activate START [objectscript-math] Configure START [objectscript-math] Configure SUCCESS [objectscript-math] Activate SUCCESS zpm: USER>
And use same commands for InterSystems IRIS for Health using the tag: intersystemsdc/irishealth-community:2019.4.0.383.0-zpm
The images are being published on IRIS Community Edition and IRIS Community Edition for Health repositories of Docker Hub.
We will update tags with every new release of IRIS and ZPM.
Happy coding!
Hello! This article continues the article "Making Prometheus Monitoring for InterSystems Caché". We will take a look at one way of visualizing the results of the work of the ^mgstat tool. This tool provides the statistics of Caché performance, and specifically the number of calls for globals and routines (local and over ECP), the length of the write daemon’s queue, the number of blocks saved to the disk and read from it, amount of ECP traffic and more. ^mgstat can be launched separately (interactively or by a job), and in parallel with another performance measurement tool, ^pButtons.
