Hi Developers!
In February we introduced into Developers Community:
- Autosaved drafts;
- Open Exchange linkage;
- PDF attachments;
- Weekly Unanswered questions digest;
- language-specific search;
- bug fixes and small enhancements.
See the details below.
Hi Developers!
In February we introduced into Developers Community:
See the details below.
Hi,
Do you have any experience in server side pagination with IRIS using Angular on the client side?
Any idea on a typical SQL request on the server side?
Thanks!
Blaise
Hi Developers!
This is the digest of new solutions and applications submitted to InterSystems OpenExchange in February 2020!
Sudoku game implementation in Excel using InterSystems IRIS as a server
RESTForms2 by Henry Hamon Pereira
RESTForms2 is a framework to create the REST API for InterSystems IRIS persistent objects automatically
FirstLook-Globals by Evgeny Shvarov
Firstlook example of InterSystems Globals
IRIS Interoperability Message Viewer by Henrique Gonçalves Dias
A new approach for the Interoperability Message Viewer
The iKnow Natural Language Processing technology was originally developed in Belgium and then acquired by InterSystems in 2010. In February 2020, InterSystems published the technology to open source, expanding the possible use cases for it beyond embedded use from the InterSystems IRIS Data Platform. iKnow is open to community contributions to enhance the engine, language models and interfaces for use in-text exploration, information extraction, and machine learning use cases.
Hello I am looking to take a message that is coming from a radiology service, depict whether there were abnormal findings. Then create a message that can be sent to a printer and mailed for patient follow up. Has anyone done anything with printing a created message from Ensemble before? I have created dynamic emails, but never printed anything.
Thanks!
Joe
Dear Community,
We're pleased to invite you to "ConferencIA", a conference about data and AI, which will take place on February 20 in Madrid, Spain!
At the event, both InterSystems experts and external thought leaders will share success stories and real projects, where AI is already a reality.
Hi,
I created a BS with a SQL Inbound Adapter.
Query = "SELECT rowid, fname ,lname,datesent
FROM labs
WHERE datesent IS NOT NULL"
DeleteQuery = " update labs set datesent = Getdate() where rowid = ?"
KeyFieldName = "rowid"
i am getting the following errors.
"NOT assuming network disconnect error based on: Gateway failed: DropStatement."
"Skipping previously errored row '235'"
"Assuming network disconnect error based on: SQLState: (HY000) NativeError: [0] Message: [Microsoft][SQL Server Native Client 11.0]Connection is busy with results for another command"
Why
Do you have any clue how to create a list of messages in studio ?
Example :
I can define one message that is called DoctorInfoMsg such as
set DoctorInfoMsg= ##class(PKGNotification.InDoctorInfo).%New()
Where PKGNotification.InDoctorInfo is composed of
Property UserName As %String;
Property ListOfPatients As list Of %String;
How to define a list of PKGNotification.InDoctorInfo messages ?
How to get UserName of the first message?
This error is sometimes seen while viewing a listing in InterSystems IRIS Business Intelligence:
ERROR #5540: SQLCODE: -99 Message: User <USERNAME> is not privileged for the operation (4)
As the error suggests, this is due to a permission error. To figure out which permissions are missing/needed, we can take a look at the SQL query that is generated. We will use a query from SAMPLES as an example.
SELECT TOP 1000 %ID, DateOfSale, Outlet->City, %EXTERNAL(Channel) AS Channel, Product->Name AS Product, UnitsSold, AmountOfSale AS Revenue, (Discount * 100) || '%' AS Discount, Comment FROM HoleFoods.
Hi Community,
Here is a digest of the Developer Community videos on InterSystems Developers YouTube Channel in February 2020:
| New Videos | |||
| № | Video | Views | Watch Time (hours) |
| 1 | 72 | 0,7 | |
| 2 | 72 | 0,6 | |
| 3 | 64 | 3,3 | |
| 4 | 59 | 0,6 | |
| 5 | 43 | 4,3 | |
| 6 | 40 | 3,4 | |
| 7 | 40 | 0,4 | |
| 8 | 39 | 5,2 | |
Hi,
I have a production with a BS calling a BP calling another BP and so on and finally a BO. All calls are made using SendRequestSync.
The initial request is passed by value. The response is passed by ref and I allocate memory for it in the BO, hoping that it will go back to the initial caller in the BS, but it does not.
It looks like the following:
// In BS, do not allocate response, call BP1
Set tSC = SendRequestSync(request, .response)
// In BP1, call BP2. Now I don't know if .response is a reference to a reference
Set tSC = SendRequestSync(request, .response)
// In BP2, call BP3.
Dear Community,
We're pleased to invite you to the InterSystems Benelux Symposium 2020, which will take place from February 11th to 12th in Antwerp, Belgium!
At the Symposium, both InterSystems experts and external thought leaders will discuss what it takes to make your IT innovation work. You're more than welcome to join us in the Radisson Blu Astrid Hotel in Antwerp.
Fastest Path to Possible - With Digital Innovation
Hello,
we are trying to figure out if there's a way to create a SOAP Envelope by using SOAP classes.
Right now we use a string to define the envelope element.
The string looks like :
Ladies and gentlemen, good news for our town.
It finally happened - M was put in the cell.
And feels great there. Maybe it not a prison but an Excel cell.
Being there, he leads the whole M-gang. As well as conditional formatting in EXCEL.
Close integration of excel with the database provides a new convenient design tool.
Interactive reports, input forms, diagrams are generated only by m-commands in cells, without classical programming.
More detailed on https://github.com/mx-alex/MX
We will monitor the development of the situation and answer your questions.
best wishes
Alex
There is a special Query for reporting, it takes one cell of Excel. Example :
?$$omQuery 113^oPeat | Country Country:Province Date Product:Date Date:Product:-zr | tn EURO | zrzr| | if Date'<%XD81,Date'>%XD82 | set zrzr=zr,EURO=summa
The omQuery sets the structure and content of the required documents as well as filters and data processing procedures.
In one request, up to 9 reports are created, with subtotals by group. (5 here , 3 with:subtotals )
All issued documents retain the interactivity property - any manipulations with cells are displayed in excel and in virtual m-excel
How to enable remote access on ensemble, i want to access management portal on another machine
trying import ClassDefinition File via <IRISClient.Ado.IRIS> result with error:
InterSystems.Data.IRISClient.IRISException (0x80004005): Exception thrown on server (code = 1242) : <REMOTE EXECUTE INVALID WRITE>Load+19^%apiOBJ
running: IRIS for Windows (x86-64) 2020.1 (Build 197U) Thu Jan 23 2020 09:56:09 EST
am i missing something?
public void LoadClass()
{
// import/ update <Installer.Package> to %SYS NameSpace
using (var c = new IRISConnection("SERVER=127.0.0.1;PORT=51773;NAMESPACE=%SYS;USER ID=_system;PASSWORD=SYS;"))
{
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.
If you have used or still use the C Callout Gateway with Cache, then you will know that in order for Cache to be made aware of any functions provided in a custom C library to be used with $ZF("function-name"),
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
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' ".
The reason this happens is
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.
To evaluate the data that occurs once within the routing rule, can use