Ensemble

Syndicate content 72 

 

I am able to get a service class property  DISPLAYLIST into the SETTINGS PARAMETER using the below example from the documention but I am not able to get an adapter property in the same manner. Is there a way to obtain the DISPLAYLIST values from an adapter property into the SETTINGS Parameter?

for reference I am extending the adapter: EnsLib.HL7.Adapter.TCPInboundAdapter

Example from documentation:

selector?context={Ens.ContextSearch/getDisplayList?host=@currHostId&prop=Framing}

 

00
1 2 94
Article
Robert Cemper · Apr 26, 2020 5m read
Materialized Views

A VIEW in SQL is basically a prepared SQL statement.
It has to be executed and assembled like any other SQL query.
MATERIALIZED VIEW means that the content is collected before hands and can be retrieved rather fast.
I saw the concept first with my favorite competitor named O* and they made a lot of noise about it.

  { favorite: because I could win every benchmark against them devil }

110
1 1 234
Question
David Foard · Feb 23, 2019
FileSpec wildcard question

For the FIleSpec on a file service can you use a multiple wildcard values like *CLINICALENCOUNTER*.xml?

It seems like you are restricted to a single wildcard value.

00
0 8 272

Hi

   My HIS System is a Microservice architecture base dubbo.  To call remote service must through dubbo rpc. 

But , I canot direct call his's dubbo service because ensemble cannot support dubbo protocol.

So I want to add support to ensemble.

where Can I start?

Does ensemble has low level interface like dll or linux so,  I can add dubbo support to the ensemble just by implementing these interfaces.

I known java Gateway maybe ok, but I want to direct not throught middle layer to do this.

00
0 1 38
Article
Anssi Kauppi · Jun 30, 2020 3m read
Replicating Audit Log Near Real Time
Many organisations implement centralised log management systems to separate and centralise the log data in order to e.g. automate threat detection (and response) and to comply with regulatory requirements. The primary systems of interest are the various user facing applications, but increasingly also other kinds of systems including integration platforms.
10
1 1 108

Dynamic PoolSize (DPS) Experiment

 

Purpose:

Enhance Ensemble or IRIS production so it can dynamically allocate pool size for adapter-based components based on their utilization.

Sometimes, an unexpected traffic volume occurs, and default pool size allocated to production components may become a bottleneck. To avoid such situations, I created a demonstrator project some 2 years ago to see, whether it would be possible and feasible to modify production, so it allowed for dynamically modifying its components per their load.

20
0 3 72

Does anyone know if I can create an API integration, from Ensemble to Salesforce? What I would like to do is trigger a Salesforce case to be opened when for example a Queue reaches a predefined threshold or an interface connection goes from green to non-green.

00
0 1 96
Question
Daniel Lee · Aug 20, 2020
Class changes not executing

We are using Ensemble and I added some debug logging that writes to a global and recompiled the class in Studio. However, when we send messages, the global is not populated. I have recompiled, removing the checkmark to keep the generated code so that there is only one .INT file and I verified that the code is present in the .INT file. 

My question is, do we need to stop and restart the Ensemble production in order for these changes to take effect? Do I need to stop and restart the business operation that calls this piece of code? Is there something else I may have missed?

00
0 6 90

Hi Everyone,

I'm currently implementing an interface solution to send through data to community pharmacies here in the UK from our hospital PAS system. As part of this project i have created a BPL which calls a SQL operation to infiltrate our Data warehouse and add to the message - this is all done and working as i expect.

00
0 3 94

We have multiple interfaces to Epic.  We currently have the IP address set to epicsup.  We now want to update all of the interfaces with this IP addresses to epictst.  Is there a method to do this?

00
0 6 86

Hi All,

i have a issue in getting the complete file path when using the FTP Adapter in service.
EnsLib.FTP.PassthroughService / EnsLib.FTP.InboundAdapter

I need to know the folder name (including sub folder) where the new file is found by the service when looking up for new files. 
The normal file class is working good as expected

More details below,

In the below two examples you can notice folder name is fetched by normal File adapter, but in FTP only the file name is available.

00
0 1 117

I have a service named FTP_In that is of class EnsLib.HL7.Service.FTPService.   It picks up files from multiple subfolders and sends them to an EnsLib.HL7.MsgRouter.RoutingEngine.   What I want to do is somehow capture the subfolder as a variable for use in the routing rules.  Is this possible?

Let's say I have the following files and directory structure on my FTP Server

00
0 6 361
Question
Ewan Whyte · Aug 3, 2020
INSERT OR UPDATE SQL

Hi, I want to INSERT a customerID and customerName to a table if the customerID does not exist. Or UPDATE if they've changed their name.
I've reviewed the documentation (https://docs.intersystems.com/irislatest/csp/docbook/Doc.View.cls?KEY=RS...) and have confused myself with the INSERT OR UPDATE statement. Rather than using two individual statements , is there a way to get it in one?

What I have at the moment doesn't do anything. In fact it errors.

00
0 3 131

Hi, I'm still very much new at Ensemble DTL.  I am trying to set up an algorithm that requires loading fields from an OBX into an Array.  I don't think that I know how to iterate through the OBXs.  I know that there is a "for loop", that I will try to play with, but in the mean time, could someone tell me what is wrong with the following?

For example the code below works when I hard code the number 1 in OBXgrp(1)

 

00
0 9 99

An error occured when HS.IHE.XDSb.Registry.Operations on the BUS sends query request to the registry. The error is 

Error 6242: HTTP request to SOAP webservice returned unexpected status: 403.

Any thoughts as to why? The settings on the components haven't changed. The process worked a few days ago. 

00
0 2 135

Hi,

I've added a REST service which worked fine on our test system but failed on the production environment because UnknownUser does not have %All set and I really don't want it set on production (in fact I've also switched it off on test).

Is there a way to allow a single REST service to have unauthorised access?

I was thinking adding a resource/role to UnknownUser specifically for that service but I've never touched on Users/Roles/Resources so I'm struggling to work out what needs adding where.

Thanks

00
0 2 82
Article
Robert Cemper · Aug 3, 2020 3m read
Global Scanning & Slicing
This is a coding example working on IRIS 2020.1 and on Caché 2018.1.3 
It will not be kept in sync with new versions      
It is also NOT serviced by InterSystems Support !   

In most cases, a global used by default storage has just 1 subscript level that represents the IDKEY.
For an index-globals we may see 2 or more subscript levels.
Arrays, or parent-child relationships or persistent classes extending a base data class
are examples where we see more levels. Though all these globals are quite uniform.

40
1 0 132
Article
Robert Cemper · Jul 29, 2020 5m read
SQL for ^ERROR Global
This is a coding example working on Caché 2018.1.3 and IRIS 2020.2 
It will not be kept in sync with new versions 
It is also NOT serviced by InterSystems Support !

Standard error logs in IRIS / Caché / Ensemble are written global ^ERRORS.
As this piece dates back some decades back to previous millennium its structure
is far from the typical SQL storage structures.

80
1 15 245

My custom Business Operation typically creates a Ens.StringResponse with StringValue which is sent back to my custom Business Service.  Is there a way I can use the assign, or some way, in Rule Editor in a Business Process (EnsLib.MsgRouter.RoutingEngine) so that it can send back a Ens.StringResponse with a StringValue to the Business Service when not routing the message to any operation?

00
0 1 104