Hi Community!
New video is already on InterSystems Developers YouTube Channel:
Hi -
I was wondering how if the "old FHIR gateway" works with the latest release of HealthShare Information Exchange. Since there is an impact on the amount of storage needed to use the "FHIR Gateway 2 which uses the Operation Data Store (ODS)", my question is how (if at all) can FHIR access to Information Exchange work without ODS?
Thanks
I am trying to base64 encode a string with non standard characters encoded in utf-8 also tried windows 1252 and I am getting error like so
ERROR <Ens>ErrException: <ILLEGAL VALUE>zEncodeStream+18^ -- logged as '-' number - @' set encString = $TRANSLATE($SYSTEM.Encryption.Base64Encode(streamString),$C(10,13))' any help appreciated if anyone has faced this before
I have a lot of string properties, which need custom but similar Getters and Setters.
Currently I'm generating Getter and Setter in class generation code but that expands class definition.
Is there a way to specify custom datatype which would generate custom getters and setters?
The 2019.1 version of HealthShare Health Connect is now Generally Available!
Kits and container images are available via the WRC download site
The build number for these releases is 2019.1.0.510.0.18883
Health Connect 2019.1 includes many new features and capabilities, most notably:
- FHIR STU3 Support
- Java Business Hosts
- Managed File Transfer (MFT)
- Containerized and cloud deployment
- New interoperability capabilities that speed configuration and troubleshooting of productions
These are detailed in the documentation and release notes for Health Connect
Upgrades - Health Connect 2019.1 is
Hi,
I want to create a messages statistics group by month and year using deepsee. To do that I'm creating a DeepSee data model based on Ens.MessageHeader.
I added both SourceConfigName and TargetConfigName as dimensions and now I'm trying to add TimeCreated but I get these messages
ERROR #5001: Level in time dimension must have a timeFunction: TimeCreated.H1.TimeCreated
> ERROR #5490: Error running generator for method '%GetModel:User.Mensajes'
ERROR: %DeepSee.CubeDefinition.cls(%GetModel) of generated code compiling subclass 'User.Mensajes'
> ERROR #5030: An error occurred whileI trying to get ACK back from the destination to the sending system.
I configured the Business Services to Ack Mode Application but sending system is getting Ensemble generated ACK [7] not destination ACK [9].
This is Ensemble 2018.1.1.312.0.

Ultimately I would like a NACK back when I have a Business Rule that blocks a messages from sending to Business Operations but currently [5] is an ACK |AA
|
.
The titular question was quite relevant and often discussed some thirty years ago. The thought went: “Sure, there are industries where computers are the norm, but in my industry we got just fine so far, the benefits are questionable, problems innumerable and unsolved. Can we continue as before or should we embrace this new technology?”
Today, everyone asks the same question but about Machine Learning and Artificial Intelligence. The doubts are the same – lack of expertise, lack of known path, perceived irrelevancy to the industry.
Yet, as before, the correct, even the only possible answer is a resounding yes. Read on to find out why.
Hello All,
Our Group currently has the following version of Healthshare, and Ensemble installed:
Cache for UNIX (Red Hat Enterprise Linux for x86-64) 2015.2.1 (Build 705U) Mon Aug 31 2015 16:53:38 EDT [HealthShare Modules:Core:14.01.7913 + Linkage Engine:14.0.7913 + Patient Index:14.0.7913 + Clinical Viewer:14.0.7913 + Active Analytics:14.01.7913]
We are planning on upgrading all of our instances from 2015.2.1 to the latest version (currently 2018) starting in May.
These instances are responsible for receiving data (i.e., Dicoms, CDAs, ADTs, and a custom JSON format) from site source
I am trying to get the time difference between two time stamps one is recorded earlier to the one happening current but the problem is sql expect string while I have the other stored in a variable and if I do the following I get errors any help please
&sql(SELECT {fn TIMESTAMPDIFF(SQL_TSI_HOUR,$ZDT($H,3,1,3),tx)})
please note that tx is a variable holding the time formatted the same way as the one being compared to
Hi Community!
This is the update on what are the new applications submitted on OpenExchange in March 2019
New Applications
isc-tar published by @Dmitry Maslennikov
Compact files as TAR or Extract files from TAR files
Light weight EXCEL download v.1.0 published by @Robert Cemper
This is the working example of a light weight export to EXCEL based on data in SAMPLES namespace. Good old CSP is well equipped to produce HTML tables accepted from EXCEL as input. With modern Browsers you don't even need and tags. So the required code around your SQL result set is really slim. And you are free to add any formatting you need either by HTML or in SQL.
PythonGateway v.0.7 published by @Eduard Lebedyuk
Python Gateway for InterSystems Data Platforms.
Adopted Bitmaps v.1.0 published by @Robert Cemper
This is a running example of the Bitmap Adoption
WebSockets Tutorial v.1.0 published by @Lily Taub
A short tutorial on WebSockets in InterSystems IRIS 2018.1+ and Caché 2016.2+
Sync Data with DSTIME v.1.0.0 published by @Robert Cemper
Other Sync-Tools just work from Caché/IRIS to Caché/IRIS. Synchronizing your data to some external DB you requires some other solution. DSTIME can do it.
HL7 and SMS Interoperability Demo v.1.3 published by @Amir Samary
This demo shows how easy it is to integrate an Electronic Medical Record system that is sending HL7 messages with AWS.
Hey everyone,
I stumbled across a comment in this post that mentioned that the %SYS.GlobalQuery is a potentially faster alternative to %GSIZE. I tested it out and while I like the %SYS.GlobalQuery I noticed that it has some size discrepancies against a %GSIZE with details. Can anyone tell me which is more accurate for estimating the size of globals?
Here is an example of one of the differences I saw. From this it looks like the size is estimated to about 70gb from %GSIZE and about 67gb from %SYS.GlobalQuery.
%GSIZE Output:
Ens.MessageBodyD
8830691 70,452,447,461 98 %
Hello everyone!
I need to have a ResultSet of type % SQL.Statement show its contents when it is trafficked in a message property by Business Process.
I tried to use the % XML.DataSet type that inherits properties of type % XML.Adaptor, but did not work.
Is there any other way to traffic as an object, other than within a Stream?
Note: I can not traffic Streams and I will not be able to use Correlate in this case.
On one of our servers, when I am in Mgmt Portal and click the link for Configure / CSP Gateway Management, I get this url:
but the page displays a 0, and nothing else. Literally, just a 0. This link works on our other servers, with the same URL. Any idea why?
Thanks,
Laura
You may have missed it, but it's here.

Now popups from SMP when you're restarting the instance or just lost connection can be suppressed.
All you need to do is set this global:
set ^%SYS("Portal","DisableConnectivityPopup") = 1
Available for 2018.1.2 and later. Documentation.
Thank you, @Alexander Koblov for the find!
Hello everyone,
i am in process of changing our authentication method, so we can integrate our AD authentication in our programs. At the moment i am using they %SYS.LDAP object, and trying to use the .Bind() method with the user information to authenticate. This seems to work without issues, but here the problems start.
When i flag a user 'Change password on next logon' in our Active Directory, the Bind fails with a status error: "Invalid Credentials".To make sure the user who logged in is in fact the user to change the password.
I use Documatic a lot to generate class documentation from comments embedded in the code. Is there a good way to create documentation for SQL views as well? Ideally I want to document each column in the view with HTML markup similar to how I document each method of a class with Documatic.
We recently registered unavailability of the Web service in some moments.The application goes offline.
Analyzing the IIS logs and logs in "C:\Windows\System32\LogFiles\HTTPERR" I found nothing relevant.
Analyzing the CSP Gateway logs I noticed the following behavior when unavailability occurs:
>>> Time: Tue Mar 19 09:35:12 2019; RT Build: 1701.1606aa (win64/iis); Log-Level: 0; Gateway-PID: 3536; Gateway-TID: 6020
Initialization
The CSP Gateway module 'C:\Inetpub\CSPGateway\CSPms.dll' is loaded (IPv6 Enabled; MAX_CONNECTIONS=1024; MAX_SERVERS=10; MAX_APPLICATIONS=10;Hi Everyone!
New session recording from Global Summit 2018 is available on InterSystems Developers YouTube Channel:
High Availability and Disaster Recovery
Dear Colleagues and Friends,
is there any indication that the .NET object representation of Cache objects (i.e. InterSystems.Data.CacheClient.dll) complies with .NET Standard? I'm planning to extend our existing .NET client/server solution with a mobile option by Xamarin Forms and can't find any significant hints in the internet.
I'm just fooling around a bit and made some expreiments with a REST API and a generic object-to-JSON tier:
ClassMethod ObjectFromObject(o As %RegisteredObject, class As %String = "", package As %String = "") As %DynamicObject
{
i class = "" s class = o.%ClassName()
i pack
Hello all!
My company has been switching from $zf(-1) to $zf(-100) like many companies have been. I have been doing fine with 1 argument windows commands such as:
set errorfile = "D:\folder\error.txt"
set outputfile = "D:\folder\output.txt"
set options(1) = ""
set options(2) = "D:\ThomasTools\"
w $zf(-100,"/SHELL /STDERR="_errorfile_" /STDOUT="_outputfile, "dir", .options)
same as w $zf(-1,"dir D:\ThomasTools\ >> D:\folder\output.txt")
I get a valid response and everything works correctly. I am having troubles with commands that would take multiple arguments however.
valid reponse with w $zf(-1,

The InterSystems DBMS has a built-in technology for working with non-structured data called iKnow and a full-text search technology called iFind. We decided to take a dive into both and make something useful. As the result, we have DocSearch — a web application for searching in InterSystems documentation using iKnow and iFind.
Hi Everyone!
It's time again for new badges on InterSystems Global Masters Advocacy Hub! 
Please welcome:
- InterSystems Open Exchange Developer Badge
- Bronze Open Exchange Developer Badge
- Silver Open Exchange Developer Badge
- Gold Open Exchange Developer Badge
How can GM Advocates get these badges? See the details below.
Hi all,
In order to prioritize functional requirements for evolving our SQL developer experience, we have prepared a short survey to better understand how you’re currently using and, in an ideal world, would like most to interact with our SQL platform.
https://www.surveymonkey.com/r/DSY6YT2
Don’t hesitate to forward this survey informally to your peers you know are accessing our SQL engine on a regular basis. There’s a disclaimer at the top that indicates we are highly interested in feedback to drive our roadmap, but obviously cannot commit to implementing all of it.
The survey is anonymous, but
Good afternoon - I am in the process of writing a AngularJS front-end for some CoS functions that my integration team uses for auditing, analyzing and various other purposes. I have re-tooled the functions to return JSON results that AngularJS can then interpret and display. Many kudos to the AngularJS series on this site for giving me a jump start.
One of these functions uses %SQL.Statement to prepare a class query on %Dictionary.CompiledClassQuery, Summary.This works perfectly if I give the web app making the call %All privileges but obviously I don't want to do that.
Hi! We have received a request to create a new rule on CachéQuality to identify when a developer uses double quotes (" ") within any SQL statement.
We have been asked many times about SQL validation rules, and we would like to open a debate to allow everyone discuss what would you like to be checked on a SQL statement.
Current examples are for basic situations:
- Using SQL.Statement class:
Set stmt = ##CLASS(%SQL.Statement).%New()
Set query = "Select Val1, Val2 FROM Table WHERE Val1=""SomeCondition"""
- Using embedded SQL
&SQL(SELECT Val1, Val2
INTO :val1, :val2
FROM
Hi Community!
Here is a digest of the Developer Community postings in March 2019.
Most viewed
CachéQuality for VSCode now available 364
Studio debugger since 2018.1.1 149
Job Opportunity - Relocate from Europe to UK 137
InterSystems IRIS version 2019.1 released 127
Tar compress tool in ObjectScript 125
Embedded SQL vs ObjectScript SQL. What do you prefer and why? 121
A Deep Learning Demo Kit with Python3 Binding to HealthShare (Part I) 118
Side Effects of Quit and Return Commands with $Increment, or "I.E.Repin. Unexpected..." 117
String to date 116
Behind the scene of isc-tar project 100
Using Docker with your InterSystems IRIS development repository 99
Global Data converted to CSV file 87
CSP: Dynamically Generated Table 79
Behind the scene of isc-tar project and story about Continuous Integration using Github Actions 66
Run A Deep Learning Demo with Python3 Binding to HealthShare (Part II) 62
Most voted
InterSystems Partnertag Österreich 2019 7
Adopted Bitmaps example now on Open Exchange 7
ObjectScript error handling snippets 7
Tar compress tool in ObjectScript 6
InterSystems DACH Symposium 2019 6
Synchronize Data with DSTIME 6
CachéQuality for VSCode now available 3
A Deep Learning Demo Kit with Python3 Binding to HealthShare (Part I) 3
InterSystems IRIS version 2019.1 released 3
Most commented
CachéQuality for VSCode now available 36
HL7 message import to sql server 16
Studio debugger since 2018.1.1 12
Rule to validate SQL syntaxis 12
No 'Access-Control-Allow-Origin' header issue with Cors 11
Creating multiple Record Map Records from a single HL7 message 8
Quick way to check if an SSL/TLS configuration name is valid? 7
Sending Messages on the Top of Queue 7
Ensemble to Spring Boot Java app using RabbitMQ 6
Top 10 Authors to Follow by Views
Dmitry Maslennikov, Posts, 291
Alexey Maslov, Posts, 117
Evgeny Shvarov, Posts, 99
Ponnumani Gurusamy, Posts, 87
Robert Cemper, Posts, 85
Gevorg Arutunyan, Posts, 79
Pravin Barton, Posts, 61
Stuart Byrne, Posts, 40
Top 10 Experts to Follow
Eduard Lebedyuk, Answers, +8
Aviel Klausner, Answers, +7
Alexander Koblov, Answers, +4
Kyle Baxter, Answers, +4
Vitaliy Serdtsev, Answers, +4
Jeffrey Drumm, Answers, +4
David Van De Griek, Answers, +3
Stephen Canzano, Answers, +3
Dmitry Maslennikov, Answers, +2
Robert Cemper, Answers, +2
How Tax Service, OpenStreetMap, and InterSystems IRIS
could help developers get clean addresses
Pieter Brueghel the Younger, Paying the Tax (The Tax Collector), 1640
In my previous article, we just skimmed the surface of objects. Let's continue our reconnaissance. Today's topic is a tough one. It's not quite BIG DATA, but it's still the data not easy to work with: we're talking about fairly large amounts of data. It won't all fit into RAM at once, and some of it won't even fit on the drive (not due to lack of space, but because there's a lot of junk). The name of our subject is FIAS DB: the Federal Information Address System database - the databases of addresses in Russia. The archive is 5.5 GB. And it's a compressed XML file. After extraction, it will be a full 53 GB (set aside 110 GB for extraction). And when you start to parse and convert it, that 110 GB won't be enough. There won't be enough RAM either.
Hello,
Last weekend we've updated our Caché version to
| Versie: | Cache for Windows (x86-64) 2018.1.1 (Build 312U) |
I'm using Studio to develop. I've been using the built-in debugger and it has been working nicely. But now, since the upgrade, I'm getting this error when trying to debug any routine or class method:
Executing ##class(Blue.App.Handler.Adsolut).TestConnection()
<COMMAND>zDebugStub+30^%Debugger.System.1
This is the code for the classmethod I got the error on;
Class Blue.App.Handler.Adsolut Extends %RegisteredObject
{
ClassMethod TestConnection()
{
w "ok"
q
}
}
This is my Studio version
