#Ensemble

23 Followers · 2.4K Posts

InterSystems Ensemble is a complete and easy-to-use integration platform that enables users to connect people, processes, and applications in record

time.

Learn more

Documentation

Article Sanjib Pandey · Dec 24, 2024 3m read

Hello everyone,

I want to share my experience configuring an IIS server to enable secure HTTPs access to HealthShare/HealthConnect.

After installing the “WebServerGateway” and completing the initial setup, I encountered a few issues. Specifically, when trying to log into HealthConnect using HTTPS, the logo didn’t appear, and clicking any buttons didn’t trigger any response. See screenshot below:

Below is a step-by-step guide to resolve the current issue, as well as another issue I encountered with accessing the Rule Editor.

0
3 350
Discussion David Robson · Dec 24, 2024

Hi everyone,

I'm looking for a tool that can be used as a base to create an interface that allows a non-technical user to easily forward messages. 

The idea is that the user can find an already sent HL7 message and forward it by modifying specific fields of the message without needing any technical knowledge.

An example would be something similar to the Ensemble search engine, but with a less technical and much more intuitive approach and that only allows changing 1 or 2 fields. 

Is there a solution in the community or something that I can adapt for this purpose?

0
0 218
Article Mark OReilly · Dec 13, 2024 5m read

As part of the Open Exchange competition Salford Royal (Dean White and Mark O'Reilly) developed a REST API for sharepoint as a template that works but can also be a starting point to your own Rest Applications 

Prerequisites

This is using the v1 REST sharepoint API you need a tennant id, client id, client secret and tennant name 

Setup 

Configure an OAuth server

 

The code in the middle is the tennant ID 

Create a client config name as whatever you want 

Set up the oauth client replacing your server ip with the ip of the server you are on (not the VIP address- if not part of a VIP localhost may work) 

Add in client credentials 

change over the settings on SharepointRESTConnector like HTTPSERVER,SHAREPOINT-SITENAME- SHAREPOINT FILEPATH- SSL (blank up to 1.

2
0 385
Question Ali Chaib · Dec 19, 2024

Every time I try to update an SQL table using odbc connection, I'm getting: ERROR <Ens>ErrException: <MAX $ZF STRING>zPrepareW+1^%Library.SQLGatewayConnection.1

Set sqlStatement = "UPDATE dbo.Table1 SET OriginalMessageText="_OriginalMessageText_"WHERE Id='"_Id_"'"
$$$TRACE("SQL Statement: "_sqlStatement)

I know that the problem is with the length of the ORU HL7 message  (that contains OBX base64 PDF file ) I'm trying to update in the table, but is there a way to fix this? other than truncating the message ?

I also tried this statement but it didn't work as well


Set sql = "UPDATE dbo.

0
0 140
Job Vanshika Tiwari · Dec 18, 2024

Please note- the resource should have expertise working in CCDA/FHIR implementation along with IRIS development experience.

IRIS for Health CCDA/FHIR IRIS developer 

  1. Hard Core IRIS for Health Engineers who have experience working on IRIS for Health 
  2.  CCD/FHIR and conversion services using SDA and DTL model (at least one production implementation of Conversion services to FHIR)
  3. Have Good knowledge of GCP and GKE’s (IKO’s deployed on GKE environment or any K8 cluster)
  4. Fine tune and debug IRIS Productions, assist L2 ops team when required
  5. CICD/GIT knowledge
0
0 187
Article Oliver Wilms · Dec 18, 2024 4m read

Implements Idea DPI-I-456

Idea

What The Sample Does

This sample was cloned from iris-interoperability-template. I have reconfigured the interoperability Production with an Inbound HTTP Adapter which is used by a HTTP Business Service. The configuration details for the business service are specified in System Default Settings. I configured Call Interval setting to call HTTPServer once every hour. You can change both the URL and frequency in the service's settings. Screenshot

Originally the HTTP Service had two targets.

0
0 277
Question Colin Brough · Dec 10, 2024

We are building a data transformation from HL7 to custom XML. We've got an XML schema, and are using virtual documents (EnsLib.EDI.XML.Document).

We can:

  • build our transform as a single transform
  • build our transform using subtransforms where the source data for the subtransform is all in a single HL7 segment and all the output data goes into a single (complex) element of the XML, so the input type on the subtransform is the segment from the HL7 schema and the output type on the subtransform is the relevant element picked out of the XML schema:
  • but we can't (so far!
2
0 157
Question Lee Butcher · Nov 28, 2024

I'm trying to project a series of objects and nested objects to XML, and I'm having difficulties getting the XML representation exactly the way I need it to be. Here's what I'm working with, nothing complicated:

Class XMLTest Extends (%RegisteredObject, %XML.Adaptor)
{
    Property Id As Id;
}

Class Id Extends (%RegisteredObject, %XML.
5
1 253
Question Nimisha Joseph · Dec 2, 2024

Hi everyone,

I’m using EnsLib.SQL.OutboundAdapter in my InterSystems Ensemble operation to execute an insert statement in Sql Server Management Studio 20. While inline queries (e.g., constructing the query string with _ concatenation) work fine, I'm facing issues when trying to use parameterized queries.

Serialized JSON: {"CHI":"2894","Forename":"Janis"}

Include Ensemble

Class TNHS.Operation.RDS.PatientOperation Extends Ens.BusinessOperation{

Parameter ADAPTER = "EnsLib.SQL.OutboundAdapter";
Property Adapter As EnsLib.SQL.OutboundAdapter;
Method OnMessage(pRequest As TNHS.Data.RDS.
10
0 254
Question Lee Butcher · Dec 4, 2024

I'm attempting to import all the FHIR XSD files provided by http://hl7.org/fhir but get the immediate and unhelpful error message:

I've tried different versions of EOLs to no avail. Any idea what this error could mean?

Here's the XSD I'm trying to import:

<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2011+, HL7, Inc
 All rights reserved.

0
0 109
Article Megumi Kakechi · Nov 7, 2024 1m read

InterSystems FAQ rubric

It can be obtained with a List query of the %SYS.Namespace class.

1. Create a routine like this:

getnsp
   set statement=##class(%SQL.Statement).%New()
   set status=statement.%PrepareClassQuery("%SYS.Namespace","List")
   set resultset=statement.%Execute()
   while resultset.%Next() {
       write resultset.%Get("Nsp"),!
   }
   quit

2. Run it in your terminal

USER>do ^getnsp
%SYS
DOCBOOK
SAMPLES
USER

The method of executing class queries introduced in this article can be applied in a variety of cases.

You can see various class queries in the class reference

4
1 597
Question Nezla · Jun 19, 2023

Hi Guys,

I have images in my zen report, eg. 

<table orient="row" width="100%">
<item value="Images:" style="font-weight:bold;font-size:0.9em"/>
<img src=" ./images/wo/Bearing.jpg" id="WOImage" align="right" height="20px" width="250px"/>
</table>

and if I run the report to the screen the report with its images comes up fine

but I need to generate and save the report as pdf to a specific path, so I used the below code and it generates the pdf report but the no images, so how can get my report with images?

FYI, I do have those images in a file location and also streamed in a database.

2
0 264
Question Smythe Smythee · Nov 15, 2024

Hi Team,

I am converting xml message into HL7 message but the input XML message contains pdf which is converting into base 64 and getting mapped to OBX:5.5 in HL7 message and sending it to downstream 

In Downstream service i am using normal HL7 TCP class EnsLib.HL7.Service.TCPService but the message looks like below i am not sure why stream is taking as another segment in HL7 message,

Any thoughts on this?

Thanks,

Smythee

15
0 357
Article Megumi Kakechi · Nov 14, 2024 1m read

InterSystems FAQ rubric

By default, the order of columns in a table is determined automatically by the system. To change the order, explicitly set the order for each property using the property keyword SqlColumnNumber when defining the class.

Example:

Property Name As %String [SqlColumnNumber = 2];

Please see the documentation below.

SqlColumnNumber

If you want to change the SQL table name, specify SqlTableName. If you want to change the column name (field name), specify SqlFieldName.

Both apply only to persistent classes.

0
0 229
Question Lee Butcher · Nov 11, 2024

I have a business process that adds data to a global variable on receipt of an HL7 message, and a scheduled task that executes a class method defined within the same business process that removes data from the same global variable. With this in mind it makes sense to consider concurrency and therefore make use of the LOCK command.

My first question is whether this is actually necessary?

1
0 173
Question Yone Moreno · Nov 4, 2024

Hello,
Please, we would need your help 🙂:

In a development environment, we have added quite a few presentation contexts to the DICOM configurations (the associations). We would need to find a way to export them from this environment to make it easier for us to import them in PRO (and avoid doing it by hand one by one).

We know that there is this method, the ImportAssociation(), that given a file, and the names of the local AET and the remote AET, creates it automatically:
    https://docs.intersystems.com/irisforhealthlatest/csp/docbook/DocBook.U…?

2
0 172
Question john.smith4237 · Oct 29, 2024

Hi Guys,

I'm calling the expandAll() method to expand the whole tree structure but for some reason its only expanding the root folders but not all elements under those folders ?

var tree zenPage.getComponentById( "MyTree");
tree.expandAll(true);
 

Thanks

3
0 164
Question Colin Brough · Oct 28, 2024

An interface running on Ensemble generates PDFs by building a command line and invoking c:\InterSystems\Ensemble\fop\fop.bat

One day last week the PDF generation stopped working. The output from the .bat script says:

The Server has not restarted, and the Java version has not been updated. Ensemble has not restarted. And Java is still accessible outside of Ensemble from the command line. So how come Ensemble has "lost" java? Any clues as to what might have gone on?

2
0 180
Question prashanth ponugoti · Oct 23, 2024

Hello Experts ,

Could you help to search message details based on MRN in intersytems iris. 

We have created 100+ interfaces and currenly in live (interystems cloud) . Now I try to search message details based on MRN using below query. it is working fine in DEV. but in prod it is taking ages.

SELECT Header.SessionId, Header.SourceConfigName ,Body.RawContent
FROM Ens.MessageHeader AS Header 
JOIN EnsLib_HL7.Message AS Body ON Header.MessageBodyId = Body.ID     
 where  Body.TimeCreated BETWEEN '2023-03-15 13:10:22.993' AND '2023-03-15 13:10:25.993'
 AND Body.

2
0 188
Question john.smith4237 · Oct 25, 2024

Hi guys,

Strange that Horizontal in my below code is "Z" but the i(Horizontal=='Z') is actually not recognizing it and does execute the rest of the code !? 

(Horizontal,Vertical)=""
Set Horizontal= ..GetSensorInfo($P(Temp))
&js< var Horizontal='#(Horizontal)#';
   alert(Sensor+"="+Horizontal)
  if (Horizontal=='Z')
  {
    alert(Sensor+"=2"+Horizontal)          

 document.getElementById('Z'+i).value='H'
  }

Thanks

1
0 126
Question john.smith4237 · Oct 22, 2024

Hi Guys,

Given that Analyst property is defined as class object I'm getting the Analyst ID in the below dataBinding, but I'm looking to display the Analyst name, I tried  using dataBinding="Analyst->Name" but no luck, I got the same issue when binding to  dataCombo or comboBox ?     

<text dataBinding="Analyst" id="AnalystName" label="Analyst Name:" size="36" />
 

Thanks

2
0 295
Question Yone Moreno · Oct 18, 2024

Hello,

First of all: thanks for your help, and thank you for your time.

Thanks for your time.

We have the following situation:

We are in a BPL, and we have defined 4 <call> asynchronous as follows:

First one name: "Enviar a Proceso NEGRIN"

The second one, named as: "Enviar a Proceso HUNSC"

The third one, titled: "Enviar a Proceso CHUIMI 02"

And the fourth and last one names as: "Enviar a Proceso Fuertev"

Inmediately after the 4 calls, we have a <sync> instruction which should wait for all of them to finish.

9
0 251
Question Chris Lambert · Oct 17, 2024

Hello,

I'm trying to carry a custom error from one business process to another.

BPL:LookupClass fails it's lookup and a custom error of "Lookup XYZ" is generated.

The class quits with that error, but upon quitting, the custom error gets wrapped in an Ensemble System error: 

ERROR <Ens>ErrBPTerminated: Terminating BP LookupClass # due to error: Lookup XYZ

This means, when I use the %LastError property to get the error message, it's not got the value I want to use. In this case, "Lookup XYZ".

0
0 160