#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 Randy Pallotta · Jun 7, 2016 1m read

Hello,

We are sometimes asked for examples of how to do 3rd party SQL database selects/updates/inserts/stored procedures from an Ensemble SQL Business Operation.

In the attached file there are 4 sample Ensemble Operations that demonstrate four different types of transactions with an external SQL DB:

1:  The "CheckExists" shows how to use an Operation to do a select statement to see if a given patient MRN exists in a DB
2:  The ExecSP Operation shows how to execute a stored procedure from a BO
3:  the Update Operation does an Update
4:  the Insert Operation does an Insert

Given the samples, one can

3
0 1895
Question Nancy Martínez · Jun 6, 2016

Hello,

Why I don't see the full content of a XML file inside a Ens.StreamContainer Message?

When  I look into the content I only see:

<?xml version="1.0" ?><!-- type: Ens.StreamContainer  id: 5 -->
<StreamContainer><OriginalFilename>C:\Temp\In\aa.xml</OriginalFilename><Stream></Stream><Type>FC</Type></StreamContainer>

How I can see all the content? There is any setting to modify this behavior?

I am using a EnsLib.File.PassthroughService,

Regards

1
0 1203
Article Steve Brunner · May 19, 2016 1m read

I am pleased to announce the field test of Caché and Ensemble 2016.3 -  with many new improvements.

The product team at InterSystems looks forward to your participation in the field test and feedback over the coming months.

Some of the more signification changes in 2016.3 are new RESTful APIs for iKnow and broader APIs for programmatic control of multiple servers (enterprise manager).  As always, there are a host of scalability and performance improvements, including improvements to the core database and SQL.  And hundreds of smaller improvements and corrections.

8
0 1075
Question Laura Cavanaugh · May 31, 2016

Hi all - I'm running a Zen page that inherits from %Zen.Component.page, and I'd like to step through code and debug it.  Is this possible, and how?

I've tried to attach to a process that I think is mine (it has my internal IP address) but is using "Unknown User".  Any ideas on where to start debugging the page  -- this page calls lots of other pages.  I'd thought I'd start at the home page.  

Perhaps I need to navigate to my page that I want to debug, and attach at that point.

Any info on the debugger in this atypical use is appreciated.

Thank  you,

Laura

10
0 1086
Question Paul Reesman · May 18, 2016

I am just trying to make a quick hand off HTTP production.I have the class built and compiled onto the server and the production is running as a service.When the production is called (by an inbound job) I can see that the HTTP.InboundAdapter is being used successfully and the stack continues all the up to ProcessInput where OnProcessInput is called in Ens.BusinessService.

15
0 1567
Article Bill McCormick · May 27, 2016 1m read

Steve Glassman is on vacation today so in his place I wanted to announce the availability of a new kit for the 2016.3 Field Test. The kit details are: 2016.3.0.628.0

Most of the changes are related to DeepSee, DocDB data models and dynamic objects. You can find a complete listing here:

https://wrc.intersystems.com/wrc/WRC.StreamServer.cls?FILE=/wrc/FieldTe…

Bill McCormick

Director of Product Management

0
0 385
Article David Loveluck · May 27, 2016 1m read

Java Business Services and Operations

In Ensemble 2016.3 ‘Java Business Hosts’ provides the means to create new Business Services and Business Operations using Java without need for any ObjectScript coding. There are two major reasons to use this capability:

  •  Add new protocols to Ensemble using available Java libraries.
  •  Allows Java developers to create custom business services and operations without needing to learn Caché ObjectScript..

At Global Summit there were two sessions and an experience lab covering Java Business Hosts that got a lot of attention and a very positive reaction.

Maxim

0
0 550
Question Laura Cavanaugh · May 5, 2016

Hello, I'm new to Ensemble, and my first task is to become familiar with the Production and create a basic outline of it for the users to view (which servers, where are the input files, where are the output files, how many records...).  What are the Production tables?  I'd like to start there.

Thanks,

Laura

10
0 610
Question Scott Roth · May 26, 2016

Has anyone tried to extract a Microsoft SQL Image Column into a JPG file using Ensemble? We currently have a Microsoft SQL Integration Services job that exports a SQL Image column into a JPG and then resizes it. I would like to get this job off of Microsoft so the rest of our team can support it and wondered if we could do it in Cache Object Script using Ensemble.

Thanks

Scott Roth

The Ohio State University Wexner Medical Center

1
0 388
Question Sergio Fernandes · May 16, 2016

Hi, 
My name is Sergio Fernandes and I'm from Brazil.
I would like to know how can i use MVBasic at Cache Terminal or .csp.
My original problem is to converter Integer Numbers to Roman Numbers and consulting cache documentation I found "Conversion Codes" at http://localhost:57772/csp/docbook/DocBook.UI.Page.cls?KEY=GVRF_basicfe…
My version is Intersystems Ensemble 2013.1.6.950.0
Thanks a lot,

Sérgio Fernandes

3
0 481
Question Ricardo Paiva · May 6, 2016

I am using java gateway imported/proxy classes and JG business service. I need to load a dll at run time.

I use System.loadLibrary/System.load when in java. I’ve tried $ZF(-3,” C:\Windows\System32\pteidlibj.dll”) and $ZF(-4,1,"C:\Windows\System32\pteidlibj.dll") but I’m getting <DYNAMIC LIBRARY LOAD> error.

How can I load a dll at run time using COS?

5
0 1381
Question Jeff Semmens · May 5, 2016

I have a scenario where I am calling a business operation which populates  and returns an EnsLib.SQL.Snapshot via dynamic SQL to a Business Process. I then want to iterate over this snapshot and call a RecordMap Operation to write those records to a delimited file.

Is this the correct way to do something like this? If so, does anyone have a sample which illustrates its correct usage?

When the snapshot is returned I save it into a context variable with:

set context.Snapshot=callresponse where the pOutput variable of the operation is set to EnsLib.SQL.Snapshot.

Would I then use a While block where

1
0 745
Article Paul Gomez · Apr 20, 2016 1m read

We are in the process of putting a new UI on the existing product documentation, including a mobile-optimized view. We also plan on releasing additional "solution based" documentation that is targeted at common usage scenarios or important configuration tasks.

We are interested in your feedback on our current product documentation - what you like and dislike and especially what changes you would expect to see to make it as useful as possible.

15
0 980
Question David Reche · May 4, 2016

Hello,

I am trying to router a custom message using the content of one of its property, but this property is a List. ¿How I can do it?

The rule could be something like this

<rule name="">
  <constraint name="msgClass" value="Test.TestMessage"></constraint>
    <when condition="Document.myList.GetAt(1).property1=&quot;AA&quot;">
      <send transform="" target="DummyOperation"></send>
      <return></return>
    </when>
</rule>

But this rule doesn't compile.

TestClass is a simple Request Class like this:

Class Test.TestMessage Extends Ens.Request
{
Property myList As %ListOfObjects;
}

¿Any

6
0 682
Question Michael Hall · Apr 28, 2016

I have a need to query and retrieve DICOM images using the 'pull' method of C-FIND and C-GET.  I have seen examples in Ensdemo where Ensemble is a target of pushed messages.  Has anyone used Ensemble this way?  If so,  can you share and example?

1
0 1239
Question Jenna Makin · Apr 26, 2016

What would be the preferred method to create an HL7 message from an input that is not HL7?

Would it be better to take the non-HL7 input and construct an HL7 message in the business service that then gets passed off to a routing process, or would it be best to just pass the non HL7 message to a routing process that called a data transformation to create the HL7 message?

My thought is the later, due to the fact that updates to the creation of the HL7 message are done using the graphical DTL editor rather than editing COS in the service.

1
1 841
Question Clayton Lewis · Apr 26, 2016


I'm trying to find a good way to control the Filename for X12 Acknowledgement files, but there doesn't seem to be a way to do that without custom coding.  Here's what I figured out so far:

EnsLib.EDI.X12.Service.FileService allows you to set a Reply Target Config, which would likely be an X12 File Operation.  The Service doesn’t have any settings related to the name of the Acknowledgement file though.  That’s determined entirely by the Operation.

The Operation allows the outbound filename to be derived from the X12 Document’s Source property, by including %f in the File Name spec.

1
0 768
Question Evgeny Shvarov · Apr 5, 2016

Hi! 

There is a question for Ensemble on Stackoverflow:

I have the below dtl. In the foreach loop, I am just copying the same code in another part under anif condition. How can I avoid this redundancy? Can I reuse using sub transformation?

Here is the dtl class file :https://docs.google.com/document/d/1snJXElyw13hAfb8Lmg5IaySc7md_DE8J40FB79hBaXU/edit?usp=sharing

Original question.

2
0 619
Question Peter Kopp · Apr 21, 2016

Good afternoon, I have image files stored on disk. I would like to display those images in an <image> control as the end user clicks on rows in a tablepane. I already do this with image data stored in a cache database:

s imageComp = %page.%GetComponentById("ImgTab"_tLdCnt)
s imageComp.disabled=0
s tId=rsId.Get("ID")
s tPageObj=##class(My.PageObj).%OpenId(tId)
s oid=tPageObj.ImageBLOB.%Oid()
s encryptedOid=..Encrypt(oid)
s imageComp.src="%25CSP.StreamServer.cls?STREAMOID="_encryptedOid

In this project, I can displayed the image if I set the scrDisabled, scrMissing or src attributes to the full path

2
0 800
Question Richard Housham · Apr 22, 2016

Hi this is my first post, so a little about my background. I've been programming in PHP/JavaScript for about 10 years.  
I've got quite a bit of knowledge surrounding object orientated programming and know the basics.

Last year I looked into the Mirth integration engine and did some work around that.

I've now moved jobs and I'm doing some work (surprise, surprise) with Ensemble.

I've done the tutorial and understand the basics of the web 'frontend' and what an integration engine can do.

1
0 743
Question Jeff Semmens · Apr 20, 2016

It looks like the normal usage of calling an Ensemble based Web Service via Ensemble is to create an Ensemble Business service that inherits from EnsLib.SOAP.Service which is then used to call a business operation which inherits from EnsLib.SOAP.Operation and the SOAP Outbound Adapter which can be generated via the SOAP wizard.

But, what if you don't want the extra step of calling the web service class via the operation?Has anyone actually constructed the Business Service to directly invoke the web service class?

1
0 676
Question Steve Pisani · Apr 20, 2016

The following situation always catches out new Ensemble users, and is likely to continue doing this until it is addressed..

A business operation, service or other host that is configured with a dedicated # of actors, (ie, not using the actor pool) runs with the version of compiled code that existed when the host was started.  This code is loaded in memory. 

Whilst they are running and developers edit and compile lines of code for a business operation, they expect immediate effect, but this does not occur for the aforementioned items, and the only clue that given is an Information event log

1
0 603
Question Raghu Kodumuri · Apr 19, 2016

Hello,

In my project, I am calling a store proc on third party database. I am using SQL Gateway and ODBC. Everything is working fine until the store proc changed.  In store proc they have changed the return alias name for a column. In Ensemble Snapshot I am not seeing the modified alias name until I restarted the whole Healthshare instance.

Here is my question, is there any other way? We do not want  to take the instance down if it happens after we go live.

Thanks

Raghu

1
0 636
Question Steve Shaw · Apr 14, 2016

Hi,

IHAC who is trying to connect Ensemble to Quadramed for HL7 messaging, however, it seems that in order to do this, the following is required:

"we open a passive connection to Quadramed and then listen for a connection request from Quadramed, once this is established we then send messages"

Has anyone done this before?  Is this possible with the standard HL7 components?

Thanks,

Steve.

1
0 451