We need to communicate with a vendor through web services in a way that those web services pull the queued messages from Ensemble instead of Ensemble pushing messages to a web service.

Is this possible? if yes, will we loose the messages sessions, status, and tracking information?

Your help is much appreciated.


0 4
0 167

​​​​​​We have Full time or Part Time Cache\ENSEMBLE\IRIS programmer positions available with our UK and US/North American teams.

For details on what we do and our products please see our web site

Interested persons should email reply to

0 0
0 477
Leon Duveen · Aug 20, 2019
Adding a header line to a file

I have set up a process to produce a daily file to be submitted to another system and this is working (using EnsLib.RecordMap.Operation.FileOperation). However, the file needs to have a header line added each time it is created so it can be processed by the down stream system. Looking though EnsLib.RecordMap.Operation.FileOperation and EnsLib.File.OutboundAdapter, I can't see where I can do this easily. Any suggestions?


0 3
0 286

Currently we are using Health Share 2015.2.2, and looking to upgrade to the latest version in the next month.

From what I understand we have to upgrade to 2017 or 2018 prior to going to 2019.1 since 2019.1 is on the IRIS platform.

In trying to outline my steps in the upgrade process I came up with a question.

  • Can a Full System Backup from 2015.2.2 be restored into 2019.1?
  • Do I have to restore the 2015.2.2 back up into 2017 or 2018, then do the 2019.1 conversion?

Has anyone had experience with this? or should I open a ticket with WRC?

0 5
0 391

InterSystems has corrected a defect that could lead to invalid backups on Windows platforms. The defect causes upgrades to disable the EnableVSSBackup setting. By default, EnableVSSBackup is enabled (value set to 1) and the upgrade sets its value to 0. Windows VSS backups taken with this setting disabled may contain invalid CACHE.DAT files.

This problem is limited to Windows platforms on the following versions:

  • Caché and Ensemble 2018.1.0, 2018.1.1, and 2018.1.2
  • HealthShare Health Connect (HSAP) 15.032 on Core versions 2018.1.0, 2018.1.1, and 2018.1.2
  • HealthShare 2019.1 (Unified Care Record, Patient Index, Health Insight, Personal Community, and Provider Directory) on Core version 2018.1.2
  • HealthShare 2018.1 (Information Exchange, Patient Index, Health Insight, and Personal Community) on Core versions 2018.1.1 or 2018.1.0

The defect only occurs if you are upgrading to a version listed above. Once you have upgraded to an affected version, you must manually enable the setting; otherwise, it will be disabled on future upgrades, even when upgrading to versions containing the correction.

For customers using Windows VSS backups, InterSystems recommends enabling this setting on any 2018.1 instances of Caché or Ensemble. Once you have enabled the setting, future upgrades (including to affected versions) will preserve its value.

0 0
0 163
Cedric Daniels · Nov 13, 2019
Keep Alive Packet

does Health Connect have an out of box setting to send some type of "Keep Alive" packet? This is for a TCP connection. I have a vendor that will disconnect from the engine if there is a 2 hour idle time. would like to send something across every hour (if its idle) to prevent the disconnection. I'm assuming this may be something custom that needs to be created, but thought I asked the community first.

0 1
0 335

Cache / Ensemble version 2016.2.2.853.0

I have a need to restrict ODBC access to certain users to prevent unwanted access to our cache database.

We have a limited number of legacy applications that use ODBC to connect to read data and are currently not in a position to have these amended any time soon so in the interim, I am hoping someone will be able to provide me with some assistance.

Any suggestions on where to start?

0 1
0 331

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.

0 8
1 403

Hi all.

A long time ago I enabled Activity Monitoring to be able to save myself headaches in the future when looking at the performance of various message routes through our productions. It's served it's purpose of answering questions on how many messages we process a week etc but I had not had the chance to really dig down into the stats for specific message types or destinations to pin point issues.

0 3
0 199
Ewan Whyte · Jun 22, 2020
Amending timestamp

Hi, I have a timestamp of 201906192359 with a HL7 and I need to add a minute to it to get 201906200000. Is there an easy way within Healthshare to do this?

It seems easy enough within SQL but I cannot get the SQL to work within Healthshare, this is what I have for SQL which does the job in SQL Server.

SELECT REPLACE(REPLACE(REPLACE(CONVERT(CHAR(16),DATEADD(mi,1,STUFF(STUFF(@test,11,0,':'),9,0,' ')),120),'-',''),' ',''),':','');

0 3
0 175

Hello everyone smiley

We are facing what seems to be a network problem while transferring HL7 messages from Ensemble/Healthshare to a distant target through TCP/IP.

Here is the version of the system in any case it could be useful: Cache for Windows (x86-64) 2017.2.1 (Build 801U) Wed Dec 6 2017 09:07:51 EST [HealthShare Modules:Core:14.02.2415 + Linkage Engine:15.03.9901]

0 7
0 477


We have several rules in router to validate HL7 messages, each rule check a particular field in HL7 message and send back response. We want to run all rules and combine the rules responses into some variable/object and at the end if variable/object is empty it means message is valid, else send the value from this variable/object. This way one message we dont run it again and again, and we can send one message and response will give us combine results from all rules.

For example,

Rule 1 - Check MSH.12 field, Send response "MSH.12 value not valid", and RETURN

0 3
0 223

Hi Developers!

Want to raise security discussion today!

Let's discuss how InterSystems security for applications works. In general, the concept is clear: we have Resources (what to protect), Roles which combine a set of privileges and accesses to Resources and Users which can have this or that Role.

But there is also a concept of Application which also could have a Role.

So you either provide a Role for a User or for an Application.

What do you use in production? What is your strategy and why? Pros, cons?

0 4
0 179

I am trying to connect to an external SFTP. They have our public key and I have the private key which is password protected. I have the credentials set to the sftp username and the password to the private key.

If I set the private key only, I get a username/password error connecting. If I set both the public and private key files, I get the error below:

ERROR #7510: SSH Error '-19': SSH Error [80101013]: Callback returned error [80101013] at Session.cpp:418,0

0 4
0 1,358
Scott Roth · Jan 14, 2021
SQL Inbound Adapter settings

In the Inbound SQL Adapter settings, is it possible to specify more than 1 field as the Key Field Name?

Because of the way the Query is being index in Ensemble by the Key Field Name, sometimes transactions get missed and I would like to see if we can add an additional key to the mix to ensure all the transactions are picked up. In this case the InterfaceTrigger is an ID that is auto generated by the table, and I would like to use that as well to ensure we don't miss transactions, and it does not throw any warning messages when it executes the Delete Query.

0 1
0 175
Ravi Akkiraju · Mar 14, 2021
Byte[] property type

One of the REST APIs we need to call takes one of request parameter as a byte array. I am trying to create a message class and couldnt figure out which is equivalent type that corresponds to Byte[]. I need to read from a jpg file and then convert it to byte[] before i invoke this webservice. Appreciate if anyone can point me in the right direction. I can use %Stream.FileBinary class to store the jpg file after loading from a file. trying to figure out how to convert that to byte[].

0 4
0 328

Hi all,

I'm looking for a user-friendly way to make a method library available in DTL, and by user-friendly I mean via '..MyMethod()' or '$$$MyMacro()' rather than '##class(MyPackage.MyClassName).MyMethod()'.

Does anybody know of a way to add a second superclass or a set of macros to a DTL ... or some other trick?



0 2
0 126