Hi all — we're excited to release the first three episodes of the all-new Data Points podcast! The video below contains a short highlight from each episode, but head over to https://datapoints.intersystems.com to check out all three and subscribe on your favorite podcast app! In the coming days, we will share individual posts for each episode, to allow for further discussion. Feel free to let us know your thoughts, comments, questions, and suggestions for future topics!
*** Update 2/11/20 2:15pm ***
*** 2017.2.1 version is NOT affected ***
InterSystems has corrected a defect that can cause the CSP Gateway to forward a response to the wrong web client. This defect is not present in the Web Gateway.
The CSP Gateway is distributed as a component of a full instance installation and also as a standalone installer. Both distributions are affected by the defect. The CSP Gateway installed with the private Apache web server for the Management Portal is also vulnerable. The affected versions of the CSP Gateway are associated with Caché or Ensemble:
- 2016.1.
InterSystems has corrected a defect that can result in skipping a transaction rollback. This can only occur after activation or addition of a mirrored database on a primary mirror member.
This problem exists for:
- Caché and Ensemble 2018.1.3
- InterSystems IRIS data platform 2019.1.1, 2019.3, and 2019.4
- InterSystems IRIS for Health 2019.1.1, 2019.3, and 2019.4
- HealthShare Health Connect 2019.1.1
The conditions necessary for this defect to be triggered are quite specific. All of the following must apply:
- A database has been newly activated or added to a mirror on a primary mirror member.
How can I get the current date and time in the destination file when I'm using Stream.CopyFrom because Stream.CopyFrom preserves the date and time of the source file.
will InterSystems fix the Transaction-Handling for the .Net Connection Provider?
Nor the Property IsTransactionAcvtive nor TransactionLevel is set on the Connection when using BeginTransaction.
Latest PreView will give me problem as InterSystems removed removed the TStart() Option to create the Transaction that way which gave back a TransactionObject whith working versions...
Hello,
For many routines we write, we utilize a global we name ^HITLIST($JOB,"routineName") as temporary storage as needed. For various reasons this gets junked up and we are at a point where we need to do some routine garbage collection.
The idea is to write a utility that looks at all the ^HITLIST($JOB) nodes, check if the job is currently running and if it isn't then we can issues the KILL command on ^HITLIST($JOB).
We looked at the methods in %SYSTEM.Process and couldn't find a method that clear told us that a job was running or not. The most promising seemed to be %SYSTEM.Process.
I am looking to run some analysis on existing software to quickly identify global variable references. Ideally you would feed in a "starting routine" and after going through all referenced routines you would end up with a finite set of global variables. So the primary purpose is to take say 10,000 lines of code and map out the referenced global structures without relying on a programmers eye. I found the post on Object Script equivalent to Studio "Find in Files" interesting but the downside is that output is too verbose and would require parsing to extract the global structures. How would you override writing to the terminal so that you could parse the data?
Hi guys,
I thought I test the InterSystems IRIS for Health 2020.1, the Docker image. but for some reason, the container only lives for about 10 seconds and I can see from the message.log file that as soon as IRIS starts it then performs shutdown thus ending also container. Anyone else seen this?
here is the message.log part
*** Recovery started at Fri Feb 7 14:37:02 2020
Current default directory: /durable/iris-config/mgr
Log file directory: /durable/iris-config/mgr/
WIJ file spec: /durable/iris-config/mgr/IRIS.WIJ
Recovering local (/durable/iris-config/mgr/IRIS.
I'm looking into finding ways to fetch data from cache efficiently and work with it with python - specially pandas.
i tried the following but i'm wondering if this is the most efficient way?
to run the stored procedure as %ResultSet inside cache in a classmethod and serialize the data to JSON
and then call that class method from python
Class User.RegObj Extends %RegisteredObject { ClassMethod runAlpha() As %Library.DynamicAbstractObject { set QHi=##class(%DynamicAbstractObject).%FromJSON("{}") set rs=##class(%ResultSet).%New("User.Person:alpha") set pr=rs.Execute("","") set idx=0 while rs.
Hi-
I have a SQL Query using %iFind.Highlight which returns text highlighting certain words and phrases. %iFind.Highlight seems to remove cr/lf from the returned text.
Here's my query
ClassMethod Search(pSessionId As %String, pSearchString As %String) As %String
{
set tTags="<span style='background-color:yellow;'>"
&sql(
SELECT %iFind.Highlight(Text , :pSearchString , , :tTags) into :results
FROM SSA_OCR.
Hi Community,
The new video is available on InterSystems Developers YouTube Channel:
⏯ Collecting Healthcare Data with Alexa
We have multiple databases running on a single server. I have duplicate interfaces on each database.
If we're doing testing in copy #1, the interfaces should be running in that copy. I want to block analysts who try to start the interfaces in copy #2.
So, I'm looking for something that would check the port and tell me the status: already in use or free.
My challenge is that this system needs to stay ISO/ANSI compliant.... so I can't use any of the newer tricks.
Is there any plain-old Cache' I could use for this task?
Thanks!
Hi Community,
Please welcome the new video on InterSystems Developers YouTube, recorded by @Stefan Wittmann:
⏯ Supporting All Tools for Development in InterSystems IRIS

AnalyzeThis is a tool for getting a personalized preview of your own data inside of InterSystems BI. This allows you to get first hand experience with InterSystems BI and understand the power and value it can bring to your organization. In addition to getting a personalized preview of InterSystems BI through an import of a CSV file with your data, Classes and SQL Queries are now supported as Data Sources in v1.1.0!
Hello,
We would like to submit a JSON using Ensemble. Here we have the JSON structure:
{
"app_id": "e47322de-64c8-43c5-a1b7-42aa6409eb48",
"headings": {"en":"Cita Atencion Primaria","es":"Cita Atencion Primaria"},
"subtitle": {"en":"C.P. ISORA","es":"C.P. ISORA"},
"contents": {"en": "Next appointment", "es": "Siguiente cita"},
"data":{
"centro": "C.P.
I have two files that I ultimately need to combine. The first file contains data from a PO. The second file contains tracking information. What I thought about doing was create a BS that grabs the first file, loads it into a record map and transfers it to a BPL. Then, the BPL would open the second file where I would write code to load the file into a second record map and then insert the tracking information to the correct places in the first file based on PO line items.
First, is this the best approach? Second, how do I open the second file in the BPL?
I am developing a viewer for Crystal Reports using the Crystal Reports for Visual Studio (CR13SP26). I have also installed the latest ODBC Drivers for Cache, but when I connect some reports to the Cache database using a connection string, I get an error that I failed to retrieve data from the database, and it reports the Database Vendor Code 30. Has anyone used Crystal Reports connecting via a connection string and received this error? If so, how did you correct it?
Thank you,
Brian Cromwell
Hello,
I am wondering the best way to disable a user account using this class in Cache (Security.Users).
https://cedocs.intersystems.com/latest/csp/documatic/%25CSP.Documatic.c…
Example User Account = jhipp
Currently is Enabled
I know that we can use the auto-generated EnabledGetStored method, for example:
%SYS> w ##class(Security.Users).EnabledGetStored("jhipp")
1
There is not an auto-generated method to set this property, right?
I can modify this property with the Modify function, but I have to build a temp array with one value etc.
Throughout my years working within HealthShare\Ensemble, I have been able to mimic the Data Lookup page trimming it down to give our Ancillary areas access to modify their own data Lookup tables.
I am currently working on building a CSP application to allow certain users to update MS SQL tables by going through HealthShare. I thought all I had to was create the CSP pages and grant access. I am able to access it off my desktop, but when I have a user try to access the application, they get the sign in but then it doesn't do anything. So I think I might be missing something.
Hello Community,
Thank you all for your continued feedback and support of our ad hoc reporting platform, VDM. There's been some questions around setting up a non-ODBC connection for InterSystems platforms. We published a new YouTube video showing the steps necessary to connect to InterSystems Caché and InterSystems IRIS with BridgeWorks VDM.
Hi
I've been working with SQL using an iFind index to search text. Using the %iFind.Highlight function in my SELECT statement I can get text back that highlights the found words using <b> and </b>
I am aware that using ##class(%iFind.Utils).Highlight, I can pass a parameter to override the <b> tag and use instead a <span> tag with style to change the background color of the found words.
Is there a way to override the <b> tag from a SQL statement?
Thanks
How do you cancel a query that is executing in the Management Portal > System > SQL?
Does closing the browser cancel the query or does it continue to run in the background?
Is there any added benefit to using the Shell over the Portal? Perhaps there is a way to cancel/stop a query here?
$SYSTEM.SQL.Shell()
Thanks
When do implicit assumptions in code and arithmetic operators pose a real danger, and how can this danger be overcome?

Constantinople in the 5th century AD
(It was possible for people to build grandiose buildings and vehicles without the use of computers and robots 1,600 years ago.)
If you assign dimensionless numbers to physical parameters in your code, you risk misunderstandings and errors when calculating and converting between units of measurement.
Hello,
I would like to change signature's algorithm to be sha1.
I share the current code:
(BINARY SECURITY TOKEN and USERNAME TOKEN CODE omitted)
set signSha1=##class(%XML.Security.Signature).%New()
do signSha1.SetSignatureMethod($$$SOAPWSrsasha1)
//..SetSignatureMethod($$$SOAPWSrsasha1)
//$method(signSha1,"SetSignatureMethod",$$$SOAPWSrsasha1)
//signSha1.SetSignatureMethod($$$SOAPWSrsasha1)
set sig=signSha1.CreateX509(cert)
I have tried to use SetSignatureMethod, however in the Message Viewer we see:

As you see I have tried every other way I could
Hi
I've got a new piece of work to do which the goal is to send an email out if files start queuing up in a specific folder.
Is there any way of achieving this?
Any help would be appreciated.
Kind Regards,
Joao Palma
Hello,
I have created my first table in Ensemble:

And I have added a row using the Production:

We would like to query it, and we would expect to get a row wih all the previous' image data.
I have tried, inside a code block in a Bussiness Process:
set statement=##class(%SQL.Statement).%New()
set status = statement.%PrepareClassQuery("TablasBBDD.NotificacionesPUSH.RelacionAplicacionNotificacion","seleccionarTodo")
set result = statement.%Execute()
do result.%Display()
$$$LOGINFO("filas result: "_result.%ROWCOUNT)
$$$LOGINFO("result: "_result)
//$$$LOGINFO("clave: "_result.
Hi Developers!
This is the digest of new solutions and applications submitted to InterSystems OpenExchange in January 2020!
New applications in January 2020
OUReports by Irina Yaroshevskaya
Online reporting tool for InterSystems IRIS. Online User Reports - automatically analyzes data - generates automated reports - provides interface for ad hoc reports - conducts statistical research. Learn more on OUReports.com
Samples-Aviation by InterSystems
Provides sample data for use in exploring InterSystems IRIS Text Analytics capabilities.
objectscript-package-example by Evgeny Shvarov
ObjectScript Package example with a simplified folder structure to edit/compile/collaborate with InterSystems IRIS, Docker and Github.
Reducing Readmission Risks with Realtime ML by Amir Samary
Patient Readmissions are said to be the Hello World of Machine Learning in Healthcare. We use this problem to show how IRIS can be used to safely build and operationalize ML models for real time predictions and how this can be integrated into a random application.
REST Business Activity Monitoring by Stephen Pisani
Send IRIS Business Metrics to a REST Endpoint, or host a REST API to retrieve Business Metric values
eXTreme for IRIS / Caché Example by Iryna Mykhailova
A console .NET application which shows how to access, create and store globals from a .NET application using eXTreme.
zpm-dockerhub by Evgeny Shvarov
repository for publishing zpm enabled images for InterSystems IRIS via Github Actions
Hello.
I'm trying to export a XML stream containing some files that are supposed to have been written using UTF-8, but I'm facing some broken encoding issues.
You can see below that I'm indeed viewing a UTF-8 encoded and which is inside the CSP folder and encoded correctly (although displaying it on Studio would not display it correctly as the file is not using BOM and that's intentional).
We need to export such files to XML along with many others and for that we'are using the method ExportToStream from the class %SYSTEM.OBJ.
Hi Community,
New video, recorded by @Raj Singh, is available on InterSystems Developers YouTube:
⏯ What Keeps Developers Up at Nigh


