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 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
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.5^&^&|1||AL|AL||ASCII
MSA|AA||AA
QAK||OK
QPD|Q22^^Find Candidates||anonymized
PID|1|anonymized^1^^^^^^^^|35018^^^anonymized^PI^^^^^~anonymized^1^^TISR^HC^^^^^~292213^2^^12^JHN^^^^^~6339140^^^MPI^CIP^^^^^~""^^^MI^PPN^^^^^~""^^^MI^NNESP^^^^^|292213^^^^^^^^^|ApellidoUno35018^Nombre35018^^^^^^^&^&^^&^&|ApellidoDos35018^^^^^^^^&^&^^&^&|19541111000000|M|||""&AVDA EL PUENTE
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?
Edit 1: As Joel mentioned, the array is subscripted and has an arbitrary structure like:
a(1)="a" a(3,4)="b" a(3,6)="c" a(5,6,7)="d"
which needs to be converted to
{"1":"a", "3":{"4":"b","6":"c"}, "5":{"6":{"7":"d"}}}I had considered using a combination of $Query (to traverse the array) and $Order (to retrieve property names) but was wondering if a
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.org/wss/2004/01/oasis-200401-wss-wssecurity-util…"
//BINARY SECURITY TOKEN
set x509alias = "certP
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.tst') ERROR #7500: SSH Put Error '-2146430933': SSH Error [8010102B]: channel read
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 be?
As the end result I would like to include the component's AlertGroups property's value