In this article, I will show how you can easily containerize .Net/Java Gateways.

For our example, we will develop an Integration with Apache Kafka.

And to interoperate with Java/.Net code we will use PEX .

Architecture

Our solution will run completely in docker and look like this:

7 7
1 1.3K

I have a requirement to update the Ensemble Host Settings Programmatically. Mainly the "AlertOnError,QueueCountAlert,QueueWaitAlert,InactivityTimeout" settings.

I used Ens_Config.Item (persistent) class to get the settings (list object) and then update it. But for some of the Business Host's, I dont see the above settings in the table, but present in Settings of that particular Host in Ensemble Management Portal. So my logic is not working.

1 11
0 614

Hello,

I created a custom business operation to copy PDF files in Intersystems Healthshare. To copy the files I used:

$ZF(-100, "", "cp", "-f", tSource, tTarget)

tSource contains the source file e.g. "/opt/var/data/dir/1821008687135422926_5849146876.pdf".

tTargetSource contains the target file "/opt/targetdir/Müller_Jörg_1821008687.pdf".

Copying files without german Umlaute works fine (e.g Smith_Robert_1821081542.pdf), but when the string contains special characters like "ä", "ö", "ü" or even "ß" copying is not successful.

0 3
0 385

Hi all,

I have a very weird error when I'm calling to a SOAP Webservice as client.

I've create all objects to invoke to this SOAP using the add-in "Assistant SOAP" in Eclipse, it has created all objects (Response, Request, Business operation WS class, etc...).

When I call to this service it retuns the following error message:

ERROR #6243: HTTP request to SOAP WebService returned unexpected CONTENT-TYPE response: text/html.

2 4
0 4.5K

So now that I have figured out how to send a Page via HTTP.OutboundAdapter, I have another question. I want to use a Function that all I have to do is pass two variables and it is sent to the HTTP.OutboundAdapter I created to send the Page.

So.. If I have a class file that Extends Ens.Rule.FunctionSet, how do I force it to send a Request to my HTTP Business Operation, without having to go through a DTL, or Business Process?

Thanks

Scott

0 3
0 668

I am trying to figure out how to send a Page via a HTTP.OutboundAdapter to a URL from Ensemble.

We have a URL that I am able to pass PNo=xxxx%PMsg=xxxx as parameters to send the page to a pager.

http://xxxxx.xxxxx.xxx/Employee/Tools/Paging/SendPage.aspx?PNo=1817&PMsg...

When I send the above URL through a REST client I receive a Response of "SENT".

But when I try to send it through the HTTP.OutboundAdpater I do not get a response.

0 3
0 262

We are getting more and more request wondering if we could send/receive data via HTTPS to the outside world from within our Hospital Network. As you can imagine our Ensemble/Cache productions are not exposed to the DMZ or has access outside of the network. We only communicate with external vendors through a VPN, so communicating not using a VPN is rather new to us.

Currently there is a project to get rid of using Proxy, and instead of through a Load Balancer that can use rules to filter out traffic, which adds another layer of complexity.

1 3
0 251
Question
· Jan 13, 2021
Handling Errors

I have a case where our EMR is sending data, but not all the values needed for the Ancillary are valued properly and causes that message to error/halt processing on the Ancillary system, not ideal but its what they do. I would expect them to still process the message except that 1 field, but they don't.

I want to add validation to make sure certain fields are valued correctly for the Vendor.

So I add some statements to take those items that don't pass this validation out to a batch file with headers.

0 9
0 899

We are trying to convert some of our SQL Service Integration Service jobs from Visual Studio to Ensemble. If we execute a Stored Procedure within SQL Server Management Studio it is returning approx 12,000 rows. However when Ensemble executes the same Stored Procedure it is only returning 250 rows.

Is there a limitation to EnsLib.SQL.Snapshot?

This is how we are calling the Stored procedure

0 4
0 892

We use ExecureProcedure() to execute a stored procedure which returns a result set. But we see lot of "Invalid cursor state" errors when the result set is empty. The connection to SQL server database is made through ODBC.

ERROR #6022: Gateway failed: Fetch. + ERROR <Ens>ErrGeneral: SQLState: (24000) NativeError: [0] Message: [Microsoft][ODBC Driver 11 for SQL Server]Invalid cursor state

Here is the code snippet from the business operation class which uses EnsLib.SQL.OutboundAdapter

0 2
0 9.5K

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 839

Hi i have rules and i want to log them to analyse what rules executed , I want to add in the log Msg Controller Id, MRN, Value coming in the message, and my customize text telling whats wrong with this field... i have like 50 rules and at the end i can check the log table and found like 20 entries so it means 20 data issues are there for a given message control id. any advice how to to do it

0 3
0 268

Hi:

I have an sql outbound adapter. Sometimes we have trouble connecting to the database.

The timeout in develpment is set to 15 seconds in live it is 150 seconds as it is an always connected Buisness operation.

I thought adding E=S or/and X=S would suspend the message. Why does it not?

Is the only way around then adding something to the buisness operation itself/ creating a customised SQL buisness operation rather than EnsLib.SQL.OutboundAdapter?

Thanks

Mark

0 5
0 458
Discussion
· Jul 29, 2020
IRIS vs Other integration engines

Hello All,

I have been using IRIS / Ensemble for over a decade and appreciate lot of it's functionalities and features, however besides having a UI of 80's era (which doesn't bother me), what I believe where IRIS is lacking is lack of out of the box connectors (services/operations).

If we look at IRIS's competitors for eg Mulesoft, Talend, Boomi they all have hundreds of pre-built connectors for major applications like Salesforce, SAP etc and cloud services like Azure, AWS etc to store and retrieve information and data.

0 2
0 498

Hello,

We would need to know the Ens.Response SourceConfigName to identify which Operation has raised an exception.

We have tried:

$$$LOGINFO("..%Process.%PrimaryResponseHeader.SourceConfigName..: "_..%Process.%PrimaryResponseHeader.SourceConfigName) //It outputs an empty string
 
$$$LOGINFO("response.SourceConfigName: "_response.SourceConfigName) //It generates an exception

We would need to get from an Ens.Response which body is null, its SourceConfigName:

0 2
0 363
Article
· Jun 18, 2020 1m read
Debugging Business Operations

Often we need to debug a Business Operation. Tracing and logging work but sometimes you want to work with a BO as with your local terminal session.

Here's how you can do that on any operating system.

Windows has a great tool for debugging Business Operations - Foreground mode. In that mode Windows launches a local terminal with operation job.

2 0
2 515